forked from Mirrorlandia_minetest/irrlicht
49 lines
1.4 KiB
Bash
Executable File
49 lines
1.4 KiB
Bash
Executable File
#!/bin/bash -e
|
|
|
|
[[ -z "$CC" || -z "$CXX" ]] && exit 255
|
|
|
|
variant=win32
|
|
[[ "$(basename "$CXX")" == "x86_64-"* ]] && variant=win64
|
|
|
|
libjpeg_version=2.1.2
|
|
libpng_version=1.6.37
|
|
zlib_version=1.2.11
|
|
|
|
mkdir -p libs
|
|
pushd libs
|
|
libs=$PWD
|
|
tmp=
|
|
[ "$variant" = win32 ] && tmp=dw2/
|
|
[ -e libjpeg.zip ] || \
|
|
wget "http://minetest.kitsunemimi.pw/libjpeg-$libjpeg_version-$variant.zip" -O libjpeg.zip
|
|
[ -e libpng.zip ] || \
|
|
wget "http://minetest.kitsunemimi.pw/${tmp}libpng-$libpng_version-$variant.zip" -O libpng.zip
|
|
[ -e zlib.zip ] || \
|
|
wget "http://minetest.kitsunemimi.pw/${tmp}zlib-$zlib_version-$variant.zip" -O zlib.zip
|
|
[ -d libjpeg ] || unzip -o libjpeg.zip -d libjpeg
|
|
[ -d libpng ] || unzip -o libpng.zip -d libpng
|
|
[ -d zlib ] || unzip -o zlib.zip -d zlib
|
|
popd
|
|
|
|
tmp=(
|
|
-DCMAKE_SYSTEM_NAME=Windows \
|
|
-DPNG_LIBRARY=$libs/libpng/lib/libpng.dll.a \
|
|
-DPNG_PNG_INCLUDE_DIR=$libs/libpng/include \
|
|
-DJPEG_LIBRARY=$libs/libjpeg/lib/libjpeg.dll.a \
|
|
-DJPEG_INCLUDE_DIR=$libs/libjpeg/include \
|
|
-DZLIB_LIBRARY=$libs/zlib/lib/libz.dll.a \
|
|
-DZLIB_INCLUDE_DIR=$libs/zlib/include
|
|
)
|
|
[ "$1" = "package" ] && tmp+=(-DCMAKE_EXE_LINKER_FLAGS="-s")
|
|
|
|
cmake . "${tmp[@]}"
|
|
make -j$(nproc)
|
|
|
|
if [ "$1" = "package" ]; then
|
|
make DESTDIR=$PWD/_install install
|
|
# bundle the DLLs that are specific to Irrlicht (kind of a hack)
|
|
cp -p $libs/*/bin/lib{jpeg,png}*.dll _install/usr/local/lib/
|
|
(cd _install/usr/local; zip -9r "$OLDPWD"/irrlicht-windows.zip -- *)
|
|
fi
|
|
exit 0
|