xash3d-fwgs/scripts/build_mingw_engine.sh
2019-03-21 17:47:16 +03:00

23 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
. scripts/lib.sh
# Build engine
cd $TRAVIS_BUILD_DIR
export CC="ccache i686-w64-mingw32-gcc"
export CXX="ccache i686-w64-mingw32-g++"
export CFLAGS="-static-libgcc -no-pthread -msse2" # add sse2 to workaround mingw multiple definition of MemoryBarrier bug
export CXXFLAGS="-static-libgcc -static-libstdc++ -no-pthread -msse2"
export LDFLAGS="-static-libgcc -static-libstdc++ -no-pthread"
export LINKFLAGS="-static-libgcc -static-libstdc++ -no-pthread"
export WINRC="i686-w64-mingw32-windres"
rm -rf build # clean build directory
./waf configure --sdl2=$TRAVIS_BUILD_DIR/SDL2_mingw/i686-w64-mingw32/ --disable-vgui --build-type=debug --verbose || die # can't compile VGUI support on MinGW, due to differnet C++ ABI
./waf build -j2 --verbose || die
cp $TRAVIS_BUILD_DIR/SDL2_mingw/i686-w64-mingw32//bin/SDL2.dll . # Install SDL2
cp vgui_support_bin/vgui_support.dll .
cp build/engine/xash.dll .
cp build/mainui/menu.dll .
cp build/game_launch/xash3d.exe .
7z a -t7z $TRAVIS_BUILD_DIR/xash3d-mingw.7z -m0=lzma2 -mx=9 -mfb=64 -md=32m -ms=on *.dll *.exe