The svnversion string is only relevant when newvers.sh is called

during the kernel build process, the other places that call the script
do not make use of that information. So restrict execution of the
svnversion-related code to the kernel build context.
This commit is contained in:
Doug Barton 2009-08-23 05:45:38 +00:00
parent c61ff19489
commit d05203a19f
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=196435

View File

@ -87,29 +87,25 @@ touch version
v=`cat version` u=${USER:-root} d=`pwd` h=${HOSTNAME:-`hostname`} t=`date`
i=`${MAKE:-make} -V KERN_IDENT`
for dir in /bin /usr/bin /usr/local/bin; do
if [ -x "${dir}/svnversion" ]; then
svnversion=${dir}/svnversion
SRCDIR=${d##*obj}
if [ -n "$MACHINE" ]; then
SRCDIR=${SRCDIR##/$MACHINE}
case "$d" in
*/sys/*)
for dir in /bin /usr/bin /usr/local/bin; do
if [ -x "${dir}/svnversion" ]; then
svnversion=${dir}/svnversion
SRCDIR=${d##*obj}
if [ -n "$MACHINE" ]; then
SRCDIR=${SRCDIR##/$MACHINE}
fi
SRCDIR=${SRCDIR%%/sys/*}
break
fi
SRCDIR=${SRCDIR%%/sys/*}
break
fi
done
done
if [ -n "$svnversion" -a -d "${SRCDIR}/.svn" ] ; then
# If we are called from the kernel build, limit
# the scope of svnversion to sys/ .
if [ -e "${SRCDIR}/sys/conf/newvers.sh" ] ; then
svn=" r`cd $SRCDIR/sys && $svnversion`"
else
svn=" r`cd $SRCDIR && $svnversion`"
if [ -n "$svnversion" -a -d "${SRCDIR}/sys/.svn" ] ; then
svn=" r`cd ${SRCDIR}/sys && $svnversion`"
fi
else
svn=""
fi
;;
esac
cat << EOF > vers.c
$COPYRIGHT