MegaGlest/mk/linux/make-binary-archive.sh

80 lines
2.2 KiB
Bash
Raw Normal View History

2012-09-26 02:52:52 +02:00
#!/bin/bash
# Use this script to build MegaGlest Binary Archive for a Version Release
# ----------------------------------------------------------------------------
# Written by Mark Vejvoda <mark_vejvoda@hotmail.com>
# Copyright (c) 2011 Mark Vejvoda under GNU GPL v3.0+
# set this to non 0 to skip building the binary
skipbinarybuild=0
# Consider setting this for small packages if there's plenty of RAM and CPU available:
#export XZ_OPT="$XZ_OPT -9e"
2012-09-26 02:52:52 +02:00
VERSION=`./mg-version.sh --version`
2012-09-27 01:57:38 +02:00
kernel=`uname -s | tr '[A-Z]' '[a-z]'`
architecture=`uname -m | tr '[A-Z]' '[a-z]'`
2012-09-26 02:52:52 +02:00
RELEASENAME=megaglest-binary-$kernel-$architecture
PACKAGE="$RELEASENAME-$VERSION.tar.xz"
CURRENTDIR="$(dirname $(readlink -f $0))"
2014-01-24 18:50:17 +01:00
RELEASEDIR_ROOT="$CURRENTDIR/../../../release/"
RELEASEDIR="${RELEASEDIR_ROOT}/${RELEASENAME-$VERSION}"
PROJDIR="$CURRENTDIR/"
2012-09-26 02:52:52 +02:00
echo "Creating binary package in $RELEASEDIR"
[[ -d "$RELEASEDIR" ]] && rm -rf "$RELEASEDIR"
mkdir -p "$RELEASEDIR"
2012-09-26 02:58:18 +02:00
if [ $skipbinarybuild = 0 ]
2012-09-26 02:52:52 +02:00
then
# build the binaries
echo "building binaries ..."
cd $PROJDIR
[[ -d "build" ]] && rm -rf "build"
./build-mg.sh
if [ $? -ne 0 ]; then
echo 'ERROR: "./build-mg.sh" failed.' >&2; exit 1
fi
else
echo "SKIPPING build of binaries ..."
2012-09-26 02:52:52 +02:00
fi
cd $PROJDIR
mkdir -p "$RELEASEDIR/lib"
2014-01-24 18:50:17 +01:00
2012-09-26 02:52:52 +02:00
[[ -d "lib" ]] && rm -rf "lib"
echo "building binary dependencies ..."
./makedeps_folder.sh megaglest
if [ $? -ne 0 ]; then
echo 'ERROR: "./makedeps_folder.sh megaglest" failed.' >&2; exit 2
fi
2012-09-26 02:52:52 +02:00
# copy binary info
cd $PROJDIR
echo "copying binaries ..."
cp -r lib/* "$RELEASEDIR/lib"
2014-09-25 02:09:16 +02:00
cp {../shared/,}*.ico "$RELEASEDIR/"
2014-09-25 02:22:57 +02:00
cp *.bmp "$RELEASEDIR/"
cp *.png "$RELEASEDIR/"
cp *.xpm "$RELEASEDIR/"
2014-09-25 02:09:16 +02:00
cp {../shared/,}*.ini "$RELEASEDIR/"
2015-01-25 12:57:12 +01:00
if [ -e "$RELEASEDIR/glest-dev.ini" ]; then rm "$RELEASEDIR/glest-dev.ini"; fi
cp megaglest "$RELEASEDIR/"
cp megaglest_editor "$RELEASEDIR/"
cp megaglest_g3dviewer "$RELEASEDIR/"
cp start_megaglest "$RELEASEDIR/"
cp start_megaglest_mapeditor "$RELEASEDIR/"
cp start_megaglest_g3dviewer "$RELEASEDIR/"
cp start_megaglest_gameserver "$RELEASEDIR/"
2012-09-26 02:52:52 +02:00
echo "creating $PACKAGE"
cd $CURRENTDIR
2014-01-24 18:50:17 +01:00
[[ -f "${RELEASEDIR_ROOT}/$PACKAGE" ]] && rm "${RELEASEDIR_ROOT}/$PACKAGE"
2014-01-25 03:32:42 +01:00
cd $RELEASEDIR
tar -cf - * | xz > ../$PACKAGE
2012-09-26 02:52:52 +02:00
cd $CURRENTDIR
2014-01-24 18:50:17 +01:00
ls -la ${RELEASEDIR_ROOT}/$PACKAGE