wesnoth/utils/update_unit_tree
2009-03-30 10:53:37 +00:00

64 lines
1.6 KiB
Bash
Executable File

#!/bin/sh
#
# Make a local copy of the HTML unit tree.
# Meant to be run on the wesnoth server site.
if [ $# -ne 1 ]; then
echo "Syntax: $0 <wesnoth version>"
exit 1
fi
VERSION=$1
SITE=$HOME/html/units
SOURCE=$HOME/source
if ! [ -d $SOURCE ]; then
echo "'$SOURCE' not found."
exit 1
fi
BRANCH=Development
case $VERSION in
1.2 ) cd $SOURCE/1.2 || exit 1
BRANCH=Stable
;;
1.3.* ) cd $SOURCE/trunk || exit 1
;;
1.4 ) cd $SOURCE/1.4 || exit 1
BRANCH=Stable
;;
trunk ) cd $SOURCE/trunk || exit 1
;;
* ) echo "Unknown version."
exit 1
;;
esac
if [ -d $SITE/$VERSION ] && [ "$BRANCH" != "Stable" ] && [ "$VERSION" != "trunk" ]; then
echo "'$SITE/$VERSION' already exists."
exit 1
fi
#echo 'svn update...'
#svn update
#svn status
if [ "$VERSION" = "trunk"]; then
data/tools/wmlunits -d data/ -o $SITE/temp || exit 1
rm -rf $SITE/$VERSION
# move the generated files to their proper place
mv $SITE/temp $SITE/$VERSION
else
cd data/tools/unit_tree/ || exit 1
# make sure we update with the right version
sed -i -e "s/\(my \$version = '\).*\(';\)/\1$VERSION\2/" units.pl
./units.pl || exit 1
rm -rf $SITE/$VERSION
# move the generated files to their proper place
mv files $SITE/$VERSION
cp -p templates/units.css $SITE/$VERSION
# revert to prevent future conflicts if $version changed
svn revert units.pl
fi
if [ "$VERSION" != "trunk" ] && ! [ $(grep "<p><a href=\"$VERSION/index.html\">$VERSION ($BRANCH)</a></p>" $SITE/index.html) ]; then
# insert a link for the new version
sed -i -e "s,\(<p><a href=\"trunk/index.html\">Trunk</a></p>\),\1\n<p><a href=\"$VERSION/index.html\">$VERSION ($BRANCH)</a></p>," $SITE/index.html
fi