Date: Wed, 13 Sep 2023 08:08:40 -0500
From: "Drew Gallatin" <gallatin@fastmail.com>
To: "Simon J. Gerraty" <sjg@FreeBSD.org>, src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject: Re: git: 89f361f742ae - main - kern.post.mk allow NEWVERS_{ENV,ARGS}
Message-ID: <7bb4a991-060d-415e-a188-192781c1f3c0@app.fastmail.com>
In-Reply-To: <202307171904.36HJ4L1l013461@gitrepo.freebsd.org>
References: <202307171904.36HJ4L1l013461@gitrepo.freebsd.org>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] Simon. This changes the version strings of kernels built via the buildkernel target and adds a lot of redundancy. Eg: VERSTR changes from: "FreeBSD 14.0-ALPHA1 #0 main-n264839-91d0876a20ce-dirty: Wed Sep 13 08:17:25 EDT 2023\n gallatin@beast:/usr/src/sys/amd64/compile/GENERIC" To: "FreeBSD 14.0-ALPHA1 amd64 1400094 #0 main-n264839-91d0876a20ce-dirty: Wed Sep 13 08:21:13 EDT 2023\n gallatin@beast:/usr/obj/usr/src/amd64.amd64/sys/GENERIC" Note the extra "amd64 1400094" This screws up some of our (Netflix) tooling, as its reflected via uname -a It appears that when using the buildkernel target, VERSION is picked up from Makefile.inc1's VERSION, which I think is intended for CTFMERGE. Was this intention? Thanks, Drew On Mon, Jul 17, 2023, at 2:04 PM, Simon J. Gerraty wrote: > The branch main has been updated by sjg: > > URL: https://cgit.FreeBSD.org/src/commit/?id=89f361f742aeae11c8b2e28eae3d015882b6c0ee <https://cgit.freebsd.org/src/commit/?id=89f361f742aeae11c8b2e28eae3d015882b6c0ee> > > commit 89f361f742aeae11c8b2e28eae3d015882b6c0ee > Author: Simon J. Gerraty <sjg@FreeBSD.org> > AuthorDate: 2023-07-17 19:03:35 +0000 > Commit: Simon J. Gerraty <sjg@FreeBSD.org> > CommitDate: 2023-07-17 19:03:35 +0000 > > kern.post.mk allow NEWVERS_{ENV,ARGS} > > Allow makefiles better control of newvers.sh env and args. > Also allow variable overrides on command line. > > Reviewed by: imp, stevek > Sponsored by: Juniper Networks, Inc. > Differential Revision: https://reviews.freebsd.org/D41012 > --- > sys/conf/kern.post.mk | 5 +++-- > sys/conf/newvers.sh | 16 +++++++++++++--- > 2 files changed, 16 insertions(+), 5 deletions(-) > > diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk > index c368d5f40df8..45df83e2d16b 100644 > --- a/sys/conf/kern.post.mk > +++ b/sys/conf/kern.post.mk > @@ -444,11 +444,12 @@ config.o env.o hints.o vers.o vnode_if.o: > ${NORMAL_C} > ${NORMAL_CTFCONVERT} > > +NEWVERS_ENV+= MAKE="${MAKE}" > .if ${MK_REPRODUCIBLE_BUILD} != "no" > -REPRO_FLAG="-R" > +NEWVERS_ARGS+= -R > .endif > vers.c: .NOMETA_CMP $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP:Nvers.*} > - MAKE="${MAKE}" sh $S/conf/newvers.sh ${REPRO_FLAG} ${KERN_IDENT} > + ${NEWVERS_ENV} sh $S/conf/newvers.sh ${NEWVERS_ARGS} ${KERN_IDENT} > > vnode_if.c: $S/tools/vnode_if.awk $S/kern/vnode_if.src > ${AWK} -f $S/tools/vnode_if.awk $S/kern/vnode_if.src -c > diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh > index 85346b1cdc29..e21b3f5ce2e2 100644 > --- a/sys/conf/newvers.sh > +++ b/sys/conf/newvers.sh > @@ -58,13 +58,23 @@ BRANCH="CURRENT" > if [ -n "${BRANCH_OVERRIDE}" ]; then > BRANCH=${BRANCH_OVERRIDE} > fi > -RELEASE="${REVISION}-${BRANCH}" > -VERSION="${TYPE} ${RELEASE}" > > if [ -z "${SYSDIR}" ]; then > - SYSDIR=$(dirname $0)/.. > + SYSDIR=$(dirname $0)/.. > fi > > +# allow random overrides > +while : > +do > + case "$1" in > + *=*) eval "$1"; shift;; > + *) break;; > + esac > +done > + > +RELEASE="${RELEASE:-${REVISION}-${BRANCH}}" > +VERSION="${VERSION:-${TYPE} ${RELEASE}}" > + > RELDATE=$(awk '/^#define[[:space:]]*__FreeBSD_version/ {print $3}' ${PARAMFILE:-${SYSDIR}/sys/param.h}) > > if [ -r "${SYSDIR}/../COPYRIGHT" ]; then > [-- Attachment #2 --] <!DOCTYPE html><html><head><title></title><style type="text/css">p.MsoNormal,p.MsoNoSpacing{margin:0}</style></head><body><div>Simon.<br></div><div><br></div><div>This changes the version strings of kernels built via the buildkernel target and adds a lot of redundancy. Eg:<br></div><div><br></div><pre class="c-mrkdwn__pre">VERSTR changes from: <br></pre><pre class="c-mrkdwn__pre">"FreeBSD 14.0-ALPHA1 #0 main-n264839-91d0876a20ce-dirty: Wed Sep 13 08:17:25 EDT 2023\n gallatin@beast:/usr/src/sys/amd64/compile/GENERIC"<br></pre><div><br></div><div>To:<br></div><div><br></div><pre class="c-mrkdwn__pre">"FreeBSD 14.0-ALPHA1 amd64 1400094 #0 main-n264839-91d0876a20ce-dirty: Wed Sep 13 08:21:13 EDT 2023\n gallatin@beast:/usr/obj/usr/src/amd64.amd64/sys/GENERIC"<br></pre><div><br></div><div>Note the extra "amd64 1400094" This screws up some of our (Netflix) tooling, as its reflected via uname -a<br></div><div><br></div><div>It appears that when using the buildkernel target, VERSION is picked up from Makefile.inc1's VERSION, which I think is intended for CTFMERGE. Was this intention?<br></div><div><br></div><div>Thanks,<br></div><div>Drew<br></div><div><br></div><div><br></div><div><br></div><div>On Mon, Jul 17, 2023, at 2:04 PM, Simon J. Gerraty wrote:<br></div><blockquote type="cite" id="qt" style=""><div>The branch main has been updated by sjg:<br></div><div><br></div><div>URL: <a href="https://cgit.FreeBSD.org/src/commit/?id=89f361f742aeae11c8b2e28eae3d015882b6c0ee">https://cgit.FreeBSD.org/src/commit/?id=89f361f742aeae11c8b2e28eae3d015882b6c0ee</a><br></div><div><br></div><div>commit 89f361f742aeae11c8b2e28eae3d015882b6c0ee<br></div><div>Author: Simon J. Gerraty <<a href="mailto:sjg@FreeBSD.org">sjg@FreeBSD.org</a>><br></div><div>AuthorDate: 2023-07-17 19:03:35 +0000<br></div><div>Commit: Simon J. Gerraty <<a href="mailto:sjg@FreeBSD.org">sjg@FreeBSD.org</a>><br></div><div>CommitDate: 2023-07-17 19:03:35 +0000<br></div><div><br></div><div> kern.post.mk allow NEWVERS_{ENV,ARGS}<br></div><div> <br></div><div> Allow makefiles better control of newvers.sh env and args.<br></div><div> Also allow variable overrides on command line.<br></div><div> <br></div><div> Reviewed by: imp, stevek<br></div><div> Sponsored by: Juniper Networks, Inc.<br></div><div> Differential Revision: <a href="https://reviews.freebsd.org/D41012">https://reviews.freebsd.org/D41012</a><br></div><div>---<br></div><div>sys/conf/kern.post.mk | 5 +++--<br></div><div>sys/conf/newvers.sh | 16 +++++++++++++---<br></div><div>2 files changed, 16 insertions(+), 5 deletions(-)<br></div><div><br></div><div>diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk<br></div><div>index c368d5f40df8..45df83e2d16b 100644<br></div><div>--- a/sys/conf/kern.post.mk<br></div><div>+++ b/sys/conf/kern.post.mk<br></div><div>@@ -444,11 +444,12 @@ config.o env.o hints.o vers.o vnode_if.o:<br></div><div>${NORMAL_C}<br></div><div>${NORMAL_CTFCONVERT}<br></div><div> <br></div><div>+NEWVERS_ENV+= MAKE="${MAKE}"<br></div><div>.if ${MK_REPRODUCIBLE_BUILD} != "no"<br></div><div>-REPRO_FLAG="-R"<br></div><div>+NEWVERS_ARGS+= -R<br></div><div>.endif<br></div><div>vers.c: .NOMETA_CMP $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP:Nvers.*}<br></div><div>- MAKE="${MAKE}" sh $S/conf/newvers.sh ${REPRO_FLAG} ${KERN_IDENT}<br></div><div>+ ${NEWVERS_ENV} sh $S/conf/newvers.sh ${NEWVERS_ARGS} ${KERN_IDENT}<br></div><div> <br></div><div>vnode_if.c: $S/tools/vnode_if.awk $S/kern/vnode_if.src<br></div><div>${AWK} -f $S/tools/vnode_if.awk $S/kern/vnode_if.src -c<br></div><div>diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh<br></div><div>index 85346b1cdc29..e21b3f5ce2e2 100644<br></div><div>--- a/sys/conf/newvers.sh<br></div><div>+++ b/sys/conf/newvers.sh<br></div><div>@@ -58,13 +58,23 @@ BRANCH="CURRENT"<br></div><div>if [ -n "${BRANCH_OVERRIDE}" ]; then<br></div><div>BRANCH=${BRANCH_OVERRIDE}<br></div><div>fi<br></div><div>-RELEASE="${REVISION}-${BRANCH}"<br></div><div>-VERSION="${TYPE} ${RELEASE}"<br></div><div> <br></div><div>if [ -z "${SYSDIR}" ]; then<br></div><div>- SYSDIR=$(dirname $0)/..<br></div><div>+ SYSDIR=$(dirname $0)/..<br></div><div>fi<br></div><div> <br></div><div>+# allow random overrides<br></div><div>+while :<br></div><div>+do<br></div><div>+ case "$1" in<br></div><div>+ *=*) eval "$1"; shift;;<br></div><div>+ *) break;;<br></div><div>+ esac<br></div><div>+done<br></div><div>+<br></div><div>+RELEASE="${RELEASE:-${REVISION}-${BRANCH}}"<br></div><div>+VERSION="${VERSION:-${TYPE} ${RELEASE}}"<br></div><div>+<br></div><div>RELDATE=$(awk '/^#define[[:space:]]*__FreeBSD_version/ {print $3}' ${PARAMFILE:-${SYSDIR}/sys/param.h})<br></div><div> <br></div><div>if [ -r "${SYSDIR}/../COPYRIGHT" ]; then<br></div><div><br></div></blockquote><div><br></div></body></html>help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7bb4a991-060d-415e-a188-192781c1f3c0>
