diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk --- a/sys/conf/kern.post.mk +++ b/sys/conf/kern.post.mk @@ -444,11 +444,12 @@ ${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 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -58,13 +58,23 @@ 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