summaryrefslogtreecommitdiffstats
path: root/sys/conf/newvers.sh
diff options
context:
space:
mode:
authorrpaulo <rpaulo@FreeBSD.org>2013-10-15 05:50:02 +0000
committerrpaulo <rpaulo@FreeBSD.org>2013-10-15 05:50:02 +0000
commita4847ec804bac43e47f75eb56bd987ea4acee230 (patch)
treedda670e7782645ebf7c07d5b68557db156cbab62 /sys/conf/newvers.sh
parent05b8d18a50655c728470817dd704c0185f5b1fba (diff)
downloadFreeBSD-src-a4847ec804bac43e47f75eb56bd987ea4acee230.zip
FreeBSD-src-a4847ec804bac43e47f75eb56bd987ea4acee230.tar.gz
Add support for Mercurial repositories.
Diffstat (limited to 'sys/conf/newvers.sh')
-rw-r--r--sys/conf/newvers.sh26
1 files changed, 23 insertions, 3 deletions
diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh
index c03aea9..e4efc0a 100644
--- a/sys/conf/newvers.sh
+++ b/sys/conf/newvers.sh
@@ -130,6 +130,15 @@ if [ -d "${SYSDIR}/../.git" ] ; then
done
fi
+if [ -d "${SYSDIR}/../.hg" ] ; then
+ for dir in /usr/bin /usr/local/bin; do
+ if [ -x "${dir}/hg" ] ; then
+ hg_cmd="${dir}/hg -R ${SYSDIR}/../.hg"
+ break
+ fi
+ done
+fi
+
if [ -n "$svnversion" ] ; then
svn=`cd ${SYSDIR} && $svnversion 2>/dev/null`
case "$svn" in
@@ -184,12 +193,23 @@ if [ -n "$p4_cmd" ] ; then
*) unset p4version ;;
esac
fi
-
+
+if [ -n "$hg_cmd" ] ; then
+ hg=`$hg_cmd id 2>/dev/null`
+ svn=`$hg_cmd svn info 2>/dev/null | \
+ awk -F': ' '/Revision/ { print $2 }'`
+ if [ -n "$svn" ] ; then
+ svn=" r${svn}"
+ fi
+ if [ -n "$hg" ] ; then
+ hg=" ${hg}"
+ fi
+fi
cat << EOF > vers.c
$COPYRIGHT
-#define SCCSSTR "@(#)${VERSION} #${v}${svn}${git}${p4version}: ${t}"
-#define VERSTR "${VERSION} #${v}${svn}${git}${p4version}: ${t}\\n ${u}@${h}:${d}\\n"
+#define SCCSSTR "@(#)${VERSION} #${v}${svn}${git}${hg}${p4version}: ${t}"
+#define VERSTR "${VERSION} #${v}${svn}${git}${hg}${p4version}: ${t}\\n ${u}@${h}:${d}\\n"
#define RELSTR "${RELEASE}"
char sccs[sizeof(SCCSSTR) > 128 ? sizeof(SCCSSTR) : 128] = SCCSSTR;
OpenPOWER on IntegriCloud