# @(#)newvers.sh 8.1 (Berkeley) 4/20/94
# $FreeBSD$
+# Command line options:
+#
+# -r Reproducible build. Do not embed directory names, user
+# names, time stamps or other dynamic information into
+# the outuput file. This is intended to allow two builds
+# done at different times and even by different people on
+# different hosts to produce identical output.
+
TYPE="FreeBSD"
REVISION="12.0"
BRANCH="CURRENT"
fi
fi
+include_metadata=true
+while getopts r opt; do
+ case "$opt" in
+ r)
+ include_metadata=
+ ;;
+ esac
+done
+shift $((OPTIND - 1))
+
+if [ -z "${include_metadata}" ]; then
+ VERINFO="${VERSION} ${svn}${git}${hg}${p4version}"
+ VERSTR="${VERINFO}\\n"
+else
+ VERINFO="${VERSION} #${v}${svn}${git}${hg}${p4version}: ${t}"
+ VERSTR="${VERINFO}\\n ${u}@${h}:${d}\\n"
+fi
+
cat << EOF > vers.c
$COPYRIGHT
-#define SCCSSTR "@(#)${VERSION} #${v}${svn}${git}${hg}${p4version}: ${t}"
-#define VERSTR "${VERSION} #${v}${svn}${git}${hg}${p4version}: ${t}\\n ${u}@${h}:${d}\\n"
+#define SCCSSTR "@(#)${VERINFO}"
+#define VERSTR "${VERSTR}"
#define RELSTR "${RELEASE}"
char sccs[sizeof(SCCSSTR) > 128 ? sizeof(SCCSSTR) : 128] = SCCSSTR;