]> git.lizzy.rs Git - irrlicht.git/blob - scripts/ci-build-mingw.sh
Add back LightManager
[irrlicht.git] / scripts / ci-build-mingw.sh
1 #!/bin/bash -e
2
3 [[ -z "$CC" || -z "$CXX" ]] && exit 255
4
5 variant=win32
6 [[ "$(basename "$CXX")" == "x86_64-"* ]] && variant=win64
7
8 libjpeg_version=2.1.5.1
9 libpng_version=1.6.39
10 zlib_version=1.2.13
11
12 mkdir -p libs
13 pushd libs
14 libs=$PWD
15 [ -e libjpeg.zip ] || \
16         wget "http://minetest.kitsunemimi.pw/libjpeg-$libjpeg_version-$variant.zip" -O libjpeg.zip
17 [ -e libpng.zip ] || \
18         wget "http://minetest.kitsunemimi.pw/libpng-$libpng_version-$variant.zip" -O libpng.zip
19 [ -e zlib.zip ] || \
20         wget "http://minetest.kitsunemimi.pw/zlib-$zlib_version-$variant.zip" -O zlib.zip
21 [ -d libjpeg ] || unzip -o libjpeg.zip -d libjpeg
22 [ -d libpng ] || unzip -o libpng.zip -d libpng
23 [ -d zlib ] || unzip -o zlib.zip -d zlib
24 popd
25
26 tmp=(
27         -DCMAKE_SYSTEM_NAME=Windows \
28         -DPNG_LIBRARY=$libs/libpng/lib/libpng.dll.a \
29         -DPNG_PNG_INCLUDE_DIR=$libs/libpng/include \
30         -DJPEG_LIBRARY=$libs/libjpeg/lib/libjpeg.dll.a \
31         -DJPEG_INCLUDE_DIR=$libs/libjpeg/include \
32         -DZLIB_LIBRARY=$libs/zlib/lib/libz.dll.a \
33         -DZLIB_INCLUDE_DIR=$libs/zlib/include
34 )
35
36 cmake . "${tmp[@]}"
37 make -j$(nproc)
38
39 if [ "$1" = "package" ]; then
40         make DESTDIR=$PWD/_install install
41         # strip library
42         "${CXX%-*}-strip" --strip-unneeded _install/usr/local/lib/*.dll
43         # bundle the DLLs that are specific to Irrlicht (kind of a hack)
44         cp -p $libs/*/bin/lib{jpeg,png}*.dll _install/usr/local/lib/
45         # create a ZIP
46         (cd _install/usr/local; zip -9r "$OLDPWD"/irrlicht-$variant.zip -- *)
47 fi
48 exit 0