Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F156731208
D44374.id135792.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
12 KB
Referenced Files
None
Subscribers
None
D44374.id135792.diff
View Options
diff --git a/Makefile.inc1 b/Makefile.inc1
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -2101,22 +2101,24 @@
( 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"
+ VERSION "${PKG_VERSION}" \
+ DESC "FreeBSD 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"
+ VERSION "${PKG_VERSION}" \
+ DESC "FreeBSD 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 +2214,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
--- a/release/packages/binutils.ucl
+++ b/release/packages/binutils.ucl
@@ -1,17 +1 @@
-#
-#
-
-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.ucl b/release/packages/clang.ucl
--- a/release/packages/clang.ucl
+++ b/release/packages/clang.ucl
@@ -1,17 +1 @@
-#
-#
-
-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/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,26 @@
+#!/usr/libexec/flua
+
+local ucl = require("ucl")
+
+if #arg % 2 ~= 0 then
+ io.stderr:write(arg[0] .. ": expect a pair 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,18 @@
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}
+ ${srctree}/release/packages/generate-ucl.lua \
+ VERSION "${PKG_VERSION}" \
+ PKGNAME "${origname}" \
+ 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}
+
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.ucl b/release/packages/lld.ucl
--- a/release/packages/lld.ucl
+++ b/release/packages/lld.ucl
@@ -1,17 +1 @@
-#
-#
-
-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.ucl b/release/packages/lldb.ucl
--- a/release/packages/lldb.ucl
+++ b/release/packages/lldb.ucl
@@ -1,17 +1 @@
-#
-#
-
-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,28 +1,12 @@
-#
-#
-
-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
- 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: {
/dev = "y";
/tmp = "y";
}
+
diff --git a/release/packages/ssh.ucl b/release/packages/ssh.ucl
--- a/release/packages/ssh.ucl
+++ b/release/packages/ssh.ucl
@@ -1,17 +1 @@
-#
-#
-
-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,17 @@
#
#
-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) "${PKGNAME}.ucl"
diff --git a/release/packages/unbound.ucl b/release/packages/unbound.ucl
--- a/release/packages/unbound.ucl
+++ b/release/packages/unbound.ucl
@@ -1,17 +1 @@
-#
-#
-
-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,6 @@
-#
-#
-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:39 PM (14 h, 22 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33107011
Default Alt Text
D44374.id135792.diff (12 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