1
0
Bifurcation 0
Ce dépôt a été archivé le 2020-03-15. Vous pouvez voir ses fichiers ou le cloner, mais pas ouvrir de ticket ou de demandes d'ajout, ni soumettre de changements.
questhelperredux/Development/QHBuild.sh
2013-01-03 00:29:46 +00:00

141 lignes
3 Kio
Bash
Fichier exécutable

#!/bin/bash
release=a
version=0
issue=0
branch=trunk
if [ $# -eq 0 ]
then
echo >&2 \
"usage: $0 [-release a|b|r] [-version some_repository_version] [-issue an_issue_number] [-branch trunk|some_branch]"
exit 1
fi
while [ $# -gt 0 ]
do
case "$1" in
-release) release="$2"; shift;;
-version) version="$2"; shift;;
-issue) issue="$2"; shift;;
-branch) branch="$2"; shift;;
-*) echo >&2 \
"usage: $0 [-release a|b|r] [-version some_repository_version] [-issue an_issue_number] [-branch trunk|some_branch]"
exit 1;;
*) break;; # terminate while loop
esac
shift
done
if [ $release != "a" -a $release != "b" -a $release != "r" ]
then
echo >&2 \
"Release must be 'a', 'b' or 'r'."
echo >&2 \
"usage: $0 [-release a|b|r] [-version some_repository_version] [-issue an_issue_number] [-branch trunk|some_branch]"
exit 1
fi
if [ $version -ne $version 2> /dev/null ]
then
echo >&2 \
"Version must be a number."
echo >&2 \
"usage: $0 [-release a|b|r] [-version some_repository_version] [-issue an_issue_number] [-branch trunk|some_branch]"
exit 1
fi
if [ $issue -ne $issue 2> /dev/null ]
then
echo >&2 \
"Issue must be a number."
echo >&2 \
"usage: $0 [-release a|b|r] [-version some_repository_version] [-issue an_issue_number] [-branch trunk|some_branch]"
exit 1
fi
if [ $branch != "trunk" ]
then
branch=branches/$branch
svn ls https://questhelperredux.googlecode.com/svn/$branch >/dev/null 2>&1
if [ $? -ne 0 ]
then
echo >&2 \
"Branch exists."
echo >&2 \
"usage: $0 [-release a|b|r] [-version some_repository_version] [-issue an_issue_number] [-branch trunk|some_branch]"
exit 1
fi
fi
command=
if [ $version -gt 0 ]
then
command="export -r $version https://questhelperredux.googlecode.com/svn/$branch build"
else
command="export https://questhelperredux.googlecode.com/svn/$branch build"
cd trunk
let version=`svnversion`
cd ..
fi
echo Exporting files.
svn $command
if [ $? -ne 0 ]
then
echo Build fails. Cleaning up.
cd ..
rm -rvf build
echo "Build failed. Repository export failed."
return 1
fi
cd build
release_string=${version}${release}
echo Replacing version tag and creating package.
if [ $issue -gt 0 ]
then
release_string = "${release_string}-i${issue}"
fi
sub="s/\\\$svnversion\\\$/${release_string}/g"
sub2='s/4\.0\.1/5\.1\.0a/'
for toc in `find . -iname "*.toc"`
do
echo Replacing version tag in ${toc}.
cp $toc $toc.bak
sed -e $sub $toc.bak > $toc
rm $toc.bak
cp $toc $toc.bak
sed -e $sub2 $toc.bak > $toc
rm $toc.bak
done
for lua in `find . -iname "*.lua"`
do
echo Replacing version tag in ${lua}.
cp $lua $lua.bak
sed -e $sub $lua.bak > $lua
rm $lua.bak
cp $lua $lua.bak
sed -e $sub2 $lua.bak > $lua
rm $lua.bak
done
echo ${release_string}
zip -qdgds 1m -r QuestHelper-5.1.0a.${release_string}.zip QuestHelper/ QHData-*
echo Moving the package up one directory level.
mv -v *.zip ..
cd ..
echo Cleaning up.
rm -rvf build
echo Completed exporting and packaging revision $version