#!/bin/bash
set -e
+CORE_GIT=https://github.com/EliasFleckenstein03/dragonfireclient
+CORE_BRANCH=master
+CORE_NAME=dragonfireclient
+GAME_GIT=https://git.minetest.land/Wuzzy/MineClone2
+GAME_BRANCH=master
+GAME_NAME=mineclone2
+
dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [ $# -ne 1 ]; then
echo "Usage: $0 <build directory>"
packagedir=$builddir/packages
libdir=$builddir/libs
-toolchain_file=$dir/toolchain_mingw.cmake
+# Test which win32 compiler is present
+which i586-mingw32msvc-windres &>/dev/null && toolchain_file=$dir/toolchain_i586-mingw32msvc.cmake
+which i686-w64-mingw32-windres &>/dev/null && toolchain_file=$dir/toolchain_i646-w64-mingw32.cmake
+
+if [ -z "$toolchain_file" ]; then
+ echo "Unable to determine which mingw32 compiler to use"
+ exit 1
+fi
+echo "Using $toolchain_file"
+
irrlicht_version=1.8.4
ogg_version=1.3.2
vorbis_version=1.3.5
-curl_version=7.54.0
-gettext_version=0.19.8.1
-freetype_version=2.8
-sqlite3_version=3.19.2
+curl_version=7.65.3
+gettext_version=0.20.1
+freetype_version=2.10.1
+sqlite3_version=3.27.2
luajit_version=2.1.0-beta3
-leveldb_version=1.19
+leveldb_version=1.22
zlib_version=1.2.11
mkdir -p $packagedir
# Get minetest
cd $builddir
if [ ! "x$EXISTING_MINETEST_DIR" = "x" ]; then
- ln -s $EXISTING_MINETEST_DIR minetest
+ cd /$EXISTING_MINETEST_DIR # must be absolute path
else
- [ -d minetest ] && (cd minetest && git pull) || (git clone https://github.com/minetest/minetest)
+ [ -d $CORE_NAME ] && (cd $CORE_NAME && git pull) || (git clone -b $CORE_BRANCH $CORE_GIT)
+ cd $CORE_NAME
fi
-cd minetest
git_hash=$(git rev-parse --short HEAD)
# Get minetest_game
-cd games
if [ "x$NO_MINETEST_GAME" = "x" ]; then
- [ -d minetest_game ] && (cd minetest_game && git pull) || (git clone https://github.com/minetest/minetest_game)
+ cd games
+ [ -d $GAME_NAME ] && (cd $GAME_NAME && git pull) || (git clone -b $GAME_BRANCH $GAME_GIT)
+ cd ..
fi
-cd ../..
# Build the thing
-cd minetest
[ -d _build ] && rm -Rf _build/
mkdir _build
cd _build
-DLEVELDB_LIBRARY=$libdir/leveldb/lib/libleveldb.dll.a \
-DLEVELDB_DLL=$libdir/leveldb/bin/libleveldb.dll
-make -j2
+make -j$(nproc)
[ "x$NO_PACKAGE" = "x" ] && make package