Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F156731267
D44374.id135861.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
14 KB
Referenced Files
None
Subscribers
None
D44374.id135861.diff
View Options
diff --git a/Makefile.inc1 b/Makefile.inc1
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -2101,22 +2101,28 @@
( echo "@override_prefix /usr/src" ; \
${GIT_CMD} ls-files --recurse-submodules "sys/" ) \
> ${SSTAGEDIR}/src-sys.plist
- sed -e "s/%VERSION%/${PKG_VERSION}/" \
- -e "s/%DESC%/FreeBSD sources/" \
- -e "s/ %VCS_REVISION%/${VCS_REVISION}/" \
- -e "s/%PKG_NAME_PREFIX%/${PKG_NAME_PREFIX}/" \
- -e "s/%PKG_MAINTAINER%/${PKG_MAINTAINER}/" \
- -e "s|%PKG_WWW%|${PKG_WWW}|" \
- ${SRCDIR}/release/packages/src.ucl \
- > ${SSTAGEDIR}/src.ucl
- sed -e "s/%VERSION%/${PKG_VERSION}/" \
- -e "s/%DESC%/FreeBSD Kernel sources/" \
- -e "s/ %VCS_REVISION%/${VCS_REVISION}/" \
- -e "s/%PKG_NAME_PREFIX%/${PKG_NAME_PREFIX}/" \
- -e "s/%PKG_MAINTAINER%/${PKG_MAINTAINER}/" \
- -e "s|%PKG_WWW%|${PKG_WWW}|" \
- ${SRCDIR}/release/packages/src-sys.ucl \
- > ${SSTAGEDIR}/src-sys.ucl
+ ${SRCDIR}/release/packages/generate-ucl.lua \
+ PKGNAME "src" \
+ PKGGENNAME "src" \
+ VERSION "${PKG_VERSION}" \
+ DESC "FreeBSD Kernel Sources" \
+ COMMENT "FreeBSD Userland Sources" \
+ PKG_NAME_PREFIX "${PKG_NAME_PREFIX}" \
+ PKG_MAINTAINER "${PKG_MAINTAINER}" \
+ PKG_WWW "${PKG_WWW}" \
+ ${SRCDIR}/release/packages/template.ucl \
+ ${SSTAGEDIR}/src.ucl
+ ${SRCDIR}/release/packages/generate-ucl.lua \
+ PKGNAME "src-sys" \
+ PKGGENNAME "src" \
+ VERSION "${PKG_VERSION}" \
+ DESC "FreeBSD Kernel Sources" \
+ COMMENT "FreeBSD Kernel Sources" \
+ PKG_NAME_PREFIX "${PKG_NAME_PREFIX}" \
+ PKG_MAINTAINER "${PKG_MAINTAINER}" \
+ PKG_WWW "${PKG_WWW}" \
+ ${SRCDIR}/release/packages/template.ucl \
+ ${SSTAGEDIR}/src-sys.ucl
${PKG_CMD} -o ABI=${PKG_ABI} \
-o OSVERSION="${SRCRELDATE}" \
create -f ${PKG_FORMAT} \
@@ -2212,17 +2218,17 @@
${METALOG_SORT_CMD} ${KSTAGEDIR}/kernel.meta | \
awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk \
-v kernel=yes -v _kernconf=${INSTALLKERNEL} ; \
- sed -e "s/%VERSION%/${PKG_VERSION}/" \
- -e "s/%PKGNAME%/kernel-${INSTALLKERNEL:tl}${flavor}/" \
- -e "s/%KERNELDIR%/kernel/" \
- -e "s/%COMMENT%/FreeBSD ${INSTALLKERNEL} kernel ${flavor}/" \
- -e "s/%DESC%/FreeBSD ${INSTALLKERNEL} kernel ${flavor}/" \
- -e "s/ %VCS_REVISION%/${VCS_REVISION}/" \
- -e "s/%PKG_NAME_PREFIX%/${PKG_NAME_PREFIX}/" \
- -e "s/%PKG_MAINTAINER%/${PKG_MAINTAINER}/" \
- -e "s|%PKG_WWW%|${PKG_WWW}|" \
- ${SRCDIR}/release/packages/kernel.ucl \
- > ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl ; \
+ ${SRCDIR}/release/packages/generate-ucl.lua \
+ PKGNAME "kernel-${INSTALLKERNEL:tl}${flavor}" \
+ VERSION "${PKG_VERSION}" \
+ KERNELDIR "kernel" \
+ COMMENT "FreeBSD ${INSTALLKERNEL} kernel ${flavor}" \
+ DESC "FreeBSD ${INSTALLKERNEL} kernel ${flavor}" \
+ PKG_NAME_PREFIX "${PKG_NAME_PREFIX}" \
+ PKG_MAINTAINER "${PKG_MAINTAINER}" \
+ PKG_WWW "${PKG_WWW}" \
+ ${SRCDIR}/release/packages/template.ucl \
+ ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl ; \
awk -F\" ' \
/name/ { printf("===> Creating %s-", $$2); next } \
/version/ {print $$2; next } ' \
diff --git a/release/packages/binutils.ucl b/release/packages/binutils.ucl
deleted file mode 100644
--- a/release/packages/binutils.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ GPLv2 ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/certctl.ucl b/release/packages/certctl.ucl
--- a/release/packages/certctl.ucl
+++ b/release/packages/certctl.ucl
@@ -1,19 +1,3 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = %PKG_MAINTAINER%
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
scripts: {
# XXX If pkg picks up a mechanism to detect in the post-install script
# files being added or removed, we should use it instead to gate the
diff --git a/release/packages/clang-all.ucl b/release/packages/clang-all.ucl
new file mode 100644
--- /dev/null
+++ b/release/packages/clang-all.ucl
@@ -0,0 +1 @@
+licenses = [ NCSA ]
diff --git a/release/packages/clang.ucl b/release/packages/clang.ucl
deleted file mode 100644
--- a/release/packages/clang.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ NCSA ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/clibs.ucl b/release/packages/clibs.ucl
new file mode 100644
--- /dev/null
+++ b/release/packages/clibs.ucl
@@ -0,0 +1 @@
+vital: true
diff --git a/release/packages/dtb.ucl b/release/packages/dtb.ucl
deleted file mode 100644
--- a/release/packages/dtb.ucl
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
diff --git a/release/packages/generate-ucl.lua b/release/packages/generate-ucl.lua
new file mode 100755
--- /dev/null
+++ b/release/packages/generate-ucl.lua
@@ -0,0 +1,35 @@
+#!/usr/libexec/flua
+
+--[[ usage:
+generare-ucl.lua [<variablename> <variablevalue>]... <sourceucl> <destucl>
+
+In the <destucl> files the variable <variablename> (in the form ${variablename}
+in the <sourceucl>) will be expanded to <variablevalue>.
+
+The undefined variables will reamin unmofifier "${variablename}"
+]]--
+
+local ucl = require("ucl")
+
+if #arg < 2 or #arg % 2 ~= 0 then
+ io.stderr:write(arg[0] .. ": expected an even number of arguments, got " .. #arg)
+ os.exit(1)
+end
+
+local parser = ucl.parser()
+for i = 2, #arg - 2, 2 do
+ parser:register_variable(arg[i - 1], arg[i])
+end
+local res,err = parser:parse_file(arg[#arg - 1])
+if not res then
+ io.stderr:write(arg[0] .. ": fail to parse("..arg[#arg - 1].."): "..err)
+ os.exit(1)
+end
+local f,err = io.open(arg[#arg], "w")
+if not f then
+ io.stderr:write(arg[0] .. ": fail to open("..arg[#arg].."): ".. err)
+ os.exit(1)
+end
+local obj = parser:get_object()
+f:write(ucl.to_format(obj, 'ucl'))
+f:close()
diff --git a/release/packages/generate-ucl.sh b/release/packages/generate-ucl.sh
--- a/release/packages/generate-ucl.sh
+++ b/release/packages/generate-ucl.sh
@@ -30,17 +30,10 @@
shift $(( ${OPTIND} - 1 ))
- vital="false"
-
case "${outname}" in
bootloader)
pkgdeps=""
;;
- clibs)
- vital="true"
- # clibs should not have any dependencies or anything
- # else imposed on it.
- ;;
certctl)
pkgdeps="caroot openssl"
;;
@@ -68,7 +61,6 @@
runtime)
outname="runtime"
_descr="$(make -C ${srctree}/release/packages -f Makefile.package -V ${outname}_DESCR)"
- vital="true"
;;
*-lib32_dev)
outname="${outname%%-lib32_dev}"
@@ -111,10 +103,7 @@
desc="$(make -C ${srctree}/release/packages -f Makefile.package -V ${outname}_DESC)"
comment="$(make -C ${srctree}/release/packages -f Makefile.package -V ${outname}_COMMENT)"
- uclsource="${srctree}/release/packages/${outname}.ucl"
- if [ ! -e "${uclsource}" ]; then
- uclsource="${srctree}/release/packages/template.ucl"
- fi
+ uclsource="${srctree}/release/packages/template.ucl"
if [ ! -z "${debug}" ]; then
echo ""
@@ -153,16 +142,21 @@
echo '}' >> ${uclfile}
fi
cap_arg="$( make -f ${srctree}/share/mk/bsd.endian.mk -VCAP_MKDB_ENDIAN )"
- sed -i '' -e "s/%VERSION%/${PKG_VERSION}/" \
- -e "s/%PKGNAME%/${origname}/" \
- -e "s/%COMMENT%/${comment}/" \
- -e "s/%DESC%/${desc}/" \
- -e "s/%VITAL%/${vital}/" \
- -e "s/%CAP_MKDB_ENDIAN%/${cap_arg}/g" \
- -e "s/%PKG_NAME_PREFIX%/${PKG_NAME_PREFIX}/" \
- -e "s|%PKG_WWW%|${PKG_WWW}|" \
- -e "s/%PKG_MAINTAINER%/${PKG_MAINTAINER}/" \
- ${uclfile}
+ set -x
+ ${srctree}/release/packages/generate-ucl.lua \
+ VERSION "${PKG_VERSION}" \
+ PKGNAME "${origname}" \
+ PKGGENNAME "${outname}" \
+ PKG_NAME_PREFIX "${PKG_NAME_PREFIX}" \
+ COMMENT "${comment}" \
+ DESC "${desc}" \
+ CAP_MKDB_ENDIAN "${cap_arg}" \
+ PKG_WWW "${PKG_WWW}" \
+ PKG_MAINTAINER "${PKG_MAINTAINER}" \
+ SRCTREE "${srctree}" \
+ ${uclsource} ${uclfile}
+ set +x
+
return 0
}
diff --git a/release/packages/jail.ucl b/release/packages/jail.ucl
deleted file mode 100644
--- a/release/packages/jail.ucl
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-vital = %VITAL%
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/kernel.ucl b/release/packages/kernel.ucl
--- a/release/packages/kernel.ucl
+++ b/release/packages/kernel.ucl
@@ -1,21 +1,5 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
scripts: {
post-install = <<EOD
- /usr/sbin/kldxref ${PKG_ROOTDIR}/boot/%KERNELDIR%
+ /usr/sbin/kldxref ${PKG_ROOTDIR}/boot/${KERNELDIR}
EOD
}
diff --git a/release/packages/lld-all.ucl b/release/packages/lld-all.ucl
new file mode 100644
--- /dev/null
+++ b/release/packages/lld-all.ucl
@@ -0,0 +1 @@
+licenses = [ NCSA ]
diff --git a/release/packages/lld.ucl b/release/packages/lld.ucl
deleted file mode 100644
--- a/release/packages/lld.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ NCSA ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/lldb-all.ucl b/release/packages/lldb-all.ucl
new file mode 100644
--- /dev/null
+++ b/release/packages/lldb-all.ucl
@@ -0,0 +1 @@
+licenses = [ NCSA ]
diff --git a/release/packages/lldb.ucl b/release/packages/lldb.ucl
deleted file mode 100644
--- a/release/packages/lldb.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ NCSA ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/runtime.ucl b/release/packages/runtime.ucl
--- a/release/packages/runtime.ucl
+++ b/release/packages/runtime.ucl
@@ -1,25 +1,9 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-vital = %VITAL%
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
+vital: true
scripts: {
- post-install = <<EOD
- pwd_mkdb -i -p -d ${PKG_ROOTDIR}/etc ${PKG_ROOTDIR}/etc/master.passwd
- services_mkdb %CAP_MKDB_ENDIAN% -q -o ${PKG_ROOTDIR}/var/db/services.db ${PKG_ROOTDIR}/etc/services
- chmod 1777 ${PKG_ROOTDIR}/tmp
+ post-install = <<EOD
+ pwd_mkdb -i -p -d ${PKG_ROOTDIR}/etc ${PKG_ROOTDIR}/etc/master.passwd
+ services_mkdb ${CAP_MKDB_ENDIAN} -q -o ${PKG_ROOTDIR}/var/db/services.db ${PKG_ROOTDIR}/
+ chmod 1777 ${PKG_ROOTDIR}/tmp
EOD
}
directories: {
diff --git a/release/packages/src-sys.ucl b/release/packages/src-sys.ucl
deleted file mode 100644
--- a/release/packages/src-sys.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-src-sys"
-origin = "base"
-version = "%VERSION%"
-comment = "FreeBSD Kernel Sources"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/src.ucl b/release/packages/src.ucl
deleted file mode 100644
--- a/release/packages/src.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-src"
-origin = "base"
-version = "%VERSION%"
-comment = "FreeBSD userland sources"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/ssh-all.ucl b/release/packages/ssh-all.ucl
new file mode 100644
--- /dev/null
+++ b/release/packages/ssh-all.ucl
@@ -0,0 +1 @@
+licenses = [ ISCL ]
diff --git a/release/packages/ssh.ucl b/release/packages/ssh.ucl
deleted file mode 100644
--- a/release/packages/ssh.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ ISCL ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/template.ucl b/release/packages/template.ucl
--- a/release/packages/template.ucl
+++ b/release/packages/template.ucl
@@ -1,17 +1,18 @@
#
#
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
+name = "${PKG_NAME_PREFIX}-${PKGNAME}"
origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
+version = "${VERSION}"
+comment = "${COMMENT}"
categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
+maintainer = "${PKG_MAINTAINER}"
+www = "${PKG_WWW}"
prefix = "/"
-vital = %VITAL%
licenselogic = "single"
licenses = [ BSD2CLAUSE ]
desc = <<EOD
-%DESC%
+${DESC}
EOD
+.include(try=true,duplicate=rewrite) "${SRCTREE}/release/packages/${PKGGENNAME}-all.ucl"
+.include(try=true,duplicate=rewrite) "${SRCTREE}/release/packages/${PKGNAME}.ucl"
diff --git a/release/packages/unbound-all.ucl b/release/packages/unbound-all.ucl
new file mode 100644
--- /dev/null
+++ b/release/packages/unbound-all.ucl
@@ -0,0 +1 @@
+licenses = [ BSD4CLAUSE ]
diff --git a/release/packages/unbound.ucl b/release/packages/unbound.ucl
deleted file mode 100644
--- a/release/packages/unbound.ucl
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-licenselogic = "single"
-licenses = [ BSD4CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
-
diff --git a/release/packages/utilities.ucl b/release/packages/utilities.ucl
--- a/release/packages/utilities.ucl
+++ b/release/packages/utilities.ucl
@@ -1,22 +1,5 @@
-#
-#
-
-name = "%PKG_NAME_PREFIX%-%PKGNAME%"
-origin = "base"
-version = "%VERSION%"
-comment = "%COMMENT%"
-categories = [ base ]
-maintainer = "%PKG_MAINTAINER%"
-www = "%PKG_WWW%"
-prefix = "/"
-vital = %VITAL%
-licenselogic = "single"
-licenses = [ BSD2CLAUSE ]
-desc = <<EOD
-%DESC%
-EOD
scripts: {
- post-install = <<EOD
- cap_mkdb %CAP_MKDB_ENDIAN% ${PKG_ROOTDIR}/etc/login.conf
+ post-install = <<EOD
+ cap_mkdb ${CAP_MKDB_ENDIAN} ${PKG_ROOTDIR}/etc/login.conf
EOD
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, May 16, 11:40 PM (16 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33159589
Default Alt Text
D44374.id135861.diff (14 KB)
Attached To
Mode
D44374: pkgbase: rework certctl package to only run rehash on the main package
Attached
Detach File
Event Timeline
Log In to Comment