mirror of
https://gitee.com/clygintang/Dockfile-Coreseek.git
synced 2025-07-21 00:00:15 +08:00
47 lines
1.4 KiB
Bash
Executable File
47 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
## As standalone run from this directory as "./svnxrev.sh .."
|
|
if [ -d $1/.svn ] ; then
|
|
svn info --xml $1 | perl $1/src/svnxrev.pl $1/src/sphinxversion.h
|
|
elif [ -d $1/.hg ] ; then
|
|
ddr=`pwd`
|
|
cd $1
|
|
target="src/sphinxversion.h"
|
|
startrev=`hg id -n | sed 's/\\+//'`
|
|
rev="$startrev"
|
|
svnrev=`hg log -r$rev --template "{desc}" | grep ^\\\\[svn | sed 's/\\[svn r//; s/\\].*//'`
|
|
# while [ "z" = "z$svnrev" ] ; do
|
|
# revplus=`hg log -r$rev --template "{rev}"`
|
|
# rev=`expr $revplus - 1`
|
|
# svnrev=`hg log -r$rev --template "{desc}" | grep ^\\\\[svn | sed 's/\\[svn r//; s/\\].*//'`
|
|
# done
|
|
rsvnrev="r$svnrev"
|
|
node=`hg log -r$startrev --template "{node}"`
|
|
branch=`hg log -r$startrev --template "{branches}"`
|
|
[ "z$branch" = "ztrunk" ] && branch=""
|
|
[ ! "z$startrev" = "z$rev" ] && rsvnrev=r"$svnrev/$node"
|
|
|
|
printf "#define SPH_SVN_TAG \"%s\"\n" $branch > $target.tmp
|
|
printf "#define SPH_SVN_REV %s\n" $svnrev >> $target.tmp
|
|
printf "#define SPH_SVN_REVSTR \"%s\"\n" $svnrev >> $target.tmp
|
|
printf "#define SPH_SVN_TAGREV \"%s\"\n" $rsvnrev >> $target.tmp
|
|
|
|
# dont touch it ALL the time
|
|
if [ -f $target ]; then
|
|
old=`cat $target`
|
|
new=`cat $target.tmp`
|
|
if [ "z$old" != "z$new" ] ; then
|
|
mv -f $target.tmp $target
|
|
else
|
|
rm -f $target.tmp
|
|
fi
|
|
else
|
|
mv -f $target.tmp $target
|
|
fi
|
|
cd "$ddr"
|
|
exit 0
|
|
fi
|
|
|
|
if [ ! -f ./sphinxversion.h ] ; then
|
|
cat *.cpp *.h | perl srcxrev.pl > sphinxversion.h
|
|
fi
|