|
|
|
@ -2,7 +2,15 @@
@@ -2,7 +2,15 @@
|
|
|
|
|
|
|
|
|
|
. scripts/lib.sh |
|
|
|
|
|
|
|
|
|
if [ ! $ARCH ]; then |
|
|
|
|
if [ "$1" = "dedicated" ]; then |
|
|
|
|
APP=xashds |
|
|
|
|
APPNAME=$APP-linux-$ARCH # since we have no extension, mark executable name that it for linux |
|
|
|
|
else # elif [ "$1" = "full" ]; then |
|
|
|
|
APP=xash3d-fwgs |
|
|
|
|
APPNAME=$APP-$ARCH |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
if [ ! "$ARCH" ]; then |
|
|
|
|
ARCH=i686 |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
@ -10,14 +18,10 @@ fi
@@ -10,14 +18,10 @@ fi
|
|
|
|
|
export CC="ccache gcc" |
|
|
|
|
export CXX="ccache g++" |
|
|
|
|
|
|
|
|
|
# AppImage settings |
|
|
|
|
APP=Xash3DFWGS |
|
|
|
|
APPDIR=$APP-$ARCH.AppDir |
|
|
|
|
APPIMAGE=$APP-$ARCH.AppImage |
|
|
|
|
|
|
|
|
|
build_sdl2() |
|
|
|
|
{ |
|
|
|
|
cd $TRAVIS_BUILD_DIR/SDL2_src |
|
|
|
|
cd "$TRAVIS_BUILD_DIR"/SDL2_src || die |
|
|
|
|
if [ "$ARCH" = "i686" ]; then |
|
|
|
|
export CFLAGS="-msse2 -march=i686 -m32 -ggdb -O2" |
|
|
|
|
export LDFLAGS="-m32" |
|
|
|
@ -29,8 +33,8 @@ build_sdl2()
@@ -29,8 +33,8 @@ build_sdl2()
|
|
|
|
|
--enable-wayland-shared --enable-x11-shared \ |
|
|
|
|
--prefix / || die # get rid of /usr/local stuff |
|
|
|
|
make -j2 || die |
|
|
|
|
mkdir -p $TRAVIS_BUILD_DIR/SDL2_linux |
|
|
|
|
make install DESTDIR=$TRAVIS_BUILD_DIR/SDL2_linux || die |
|
|
|
|
mkdir -p "$TRAVIS_BUILD_DIR"/SDL2_linux |
|
|
|
|
make install DESTDIR="$TRAVIS_BUILD_DIR"/SDL2_linux || die |
|
|
|
|
export CFLAGS="" |
|
|
|
|
export LDFLAGS="" |
|
|
|
|
} |
|
|
|
@ -38,31 +42,42 @@ build_sdl2()
@@ -38,31 +42,42 @@ build_sdl2()
|
|
|
|
|
build_engine() |
|
|
|
|
{ |
|
|
|
|
# Build engine |
|
|
|
|
cd $TRAVIS_BUILD_DIR |
|
|
|
|
cd "$TRAVIS_BUILD_DIR" || die |
|
|
|
|
|
|
|
|
|
WAF_CONFIGURE_FLAGS="--sdl2=$TRAVIS_BUILD_DIR/SDL2_linux -T release --enable-stb --prefix=$APPDIR --win-style-install" |
|
|
|
|
if [ "$ARCH" = "x86_64" ]; then # we need enabling 64-bit target only on Intel-compatible CPUs |
|
|
|
|
WAF_CONFIGURE_FLAGS="$WAF_CONFIGURE_FLAGS -8" |
|
|
|
|
AMD64="-8" |
|
|
|
|
fi |
|
|
|
|
./waf configure $WAF_CONFIGURE_FLAGS || die |
|
|
|
|
|
|
|
|
|
if [ "$APP" = "xashds" ]; then |
|
|
|
|
./waf configure -T release --single-binary -d -W "$AMD64" || die |
|
|
|
|
elif [ "$APP" = "xash3d-fwgs" ]; then |
|
|
|
|
APPDIR=$APPNAME.AppDir |
|
|
|
|
./waf configure --sdl2=SDL2_linux -T release --enable-stb --prefix="$APPDIR" -W "$AMD64" || die |
|
|
|
|
else |
|
|
|
|
die |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
./waf build || die |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
build_appimage() |
|
|
|
|
{ |
|
|
|
|
cd $TRAVIS_BUILD_DIR |
|
|
|
|
APPDIR=$APPNAME.AppDir |
|
|
|
|
APPIMAGE=$APPNAME.AppImage |
|
|
|
|
|
|
|
|
|
cd "$TRAVIS_BUILD_DIR" || die |
|
|
|
|
|
|
|
|
|
./waf install || die |
|
|
|
|
|
|
|
|
|
# Generate extras.pak |
|
|
|
|
python3 scripts/makepak.py xash-extras/ $APPDIR/extras.pak |
|
|
|
|
python3 scripts/makepak.py xash-extras/ "$APPDIR/extras.pak" |
|
|
|
|
|
|
|
|
|
cp SDL2_linux/lib/libSDL2-2.0.so.0 $APPDIR/ |
|
|
|
|
cp SDL2_linux/lib/libSDL2-2.0.so.0 "$APPDIR/" |
|
|
|
|
if [ "$ARCH" = "i686" ]; then |
|
|
|
|
cp vgui-dev/lib/vgui.so $APPDIR/ |
|
|
|
|
cp vgui-dev/lib/vgui.so "$APPDIR/" |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
cat > $APPDIR/AppRun << 'EOF' |
|
|
|
|
cat > "$APPDIR"/AppRun << 'EOF' |
|
|
|
|
#!/bin/sh |
|
|
|
|
|
|
|
|
|
if [ "$XASH3D_BASEDIR" = "" ]; then |
|
|
|
@ -77,14 +92,14 @@ ${DEBUGGER} "${APPDIR}"/xash3d "$@"
@@ -77,14 +92,14 @@ ${DEBUGGER} "${APPDIR}"/xash3d "$@"
|
|
|
|
|
exit $? |
|
|
|
|
EOF |
|
|
|
|
|
|
|
|
|
chmod +x $APPDIR/xash3d $APPDIR/AppRun # Engine launcher & engine launcher script |
|
|
|
|
chmod +x "$APPDIR"/xash3d "$APPDIR"/AppRun # Engine launcher & engine launcher script |
|
|
|
|
|
|
|
|
|
echo "Contents of AppImage: " |
|
|
|
|
ls -R $APPDIR |
|
|
|
|
ls -R "$APPDIR" |
|
|
|
|
|
|
|
|
|
wget "https://raw.githubusercontent.com/FWGS/fwgs-artwork/master/xash3d/icon_512.png" -O $APPDIR/$APP.png |
|
|
|
|
wget "https://raw.githubusercontent.com/FWGS/fwgs-artwork/master/xash3d/icon_512.png" -O "$APPDIR/$APP.png" |
|
|
|
|
|
|
|
|
|
cat > $APPDIR/$APP.desktop <<EOF |
|
|
|
|
cat > "$APPDIR/$APP.desktop" <<EOF |
|
|
|
|
[Desktop Entry] |
|
|
|
|
Name=$APP |
|
|
|
|
Icon=$APP |
|
|
|
@ -94,10 +109,18 @@ Categories=Game;
@@ -94,10 +109,18 @@ Categories=Game;
|
|
|
|
|
EOF |
|
|
|
|
|
|
|
|
|
wget "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-$ARCH.AppImage" |
|
|
|
|
chmod +x appimagetool-$ARCH.AppImage |
|
|
|
|
./appimagetool-$ARCH.AppImage $APPDIR $APPIMAGE |
|
|
|
|
chmod +x "appimagetool-$ARCH.AppImage" |
|
|
|
|
./appimagetool-$ARCH.AppImage "$APPDIR" "$APPIMAGE" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
build_sdl2 |
|
|
|
|
rm -rf build # clean-up build directory |
|
|
|
|
|
|
|
|
|
if [ $APP != "xashds" ]; then |
|
|
|
|
build_sdl2 |
|
|
|
|
fi |
|
|
|
|
build_engine |
|
|
|
|
build_appimage |
|
|
|
|
if [ $APP != "xashds" ]; then |
|
|
|
|
build_appimage |
|
|
|
|
else |
|
|
|
|
mv build/engine/xash $APPNAME |
|
|
|
|
fi |
|
|
|
|