]> git.xonotic.org Git - xonotic/xonotic.git/blobdiff - misc/tools/all/xonotic.subr
Fixed build of Debian-based systems by not using precompiled binaries.
[xonotic/xonotic.git] / misc / tools / all / xonotic.subr
index 3aa15837fcee39af4d5baeff43e78d056d7a249a..08c570c35ad6961d0ebc4578112370063cae6a8a 100644 (file)
@@ -119,6 +119,10 @@ case "$cmd" in
                        fi
                fi
 
+               if [ -z "$MAKE" ]; then
+                       MAKE=make
+               fi
+
                if [ -z "$MAKEFLAGS" ]; then
                        ncpus=`getconf _NPROCESSORS_ONLN 2>/dev/null || getconf NPROCESSORS_ONLN 2>/dev/null || echo 1`
                        if [ $ncpus -gt 1 ]; then
@@ -193,23 +197,17 @@ case "$cmd" in
                                                case `uname -m` in
                                                        x86_64)
                                                                # No cp commands, we want to use static linking instead.
-                                                               export CC="$CC -I../../../../misc/builddeps/linux64/d0_blind_id/include"
-                                                               export CC="$CC -L../../../../misc/builddeps/linux64/d0_blind_id/lib"
-                                                               export CC="$CC -Wl,-rpath,../../../../misc/builddeps/linux64/d0_blind_id/lib"
-                                                               export CC="$CC -I../../../../misc/builddeps/linux64/gmp/include"
-                                                               export CC="$CC -L../../../../misc/builddeps/linux64/gmp/lib"
-                                                               export CC="$CC -Wl,-rpath,../../../../misc/builddeps/linux64/gmp/lib"
-                                                               MAKEFLAGS="$MAKEFLAGS DP_LINK_CRYPTO=shared DP_LINK_CRYPTO_RIJNDAEL=shared LIB_CRYPTO=../../../../misc/builddeps/linux64/d0_blind_id/lib/libd0_blind_id.a LIB_CRYPTO+=../../../../misc/builddeps/linux64/gmp/lib/libgmp.a LIB_CRYPTO_RIJNDAEL=../../../../misc/builddeps/linux64/d0_blind_id/lib/libd0_rijndael.a"
+                                                               MAKEFLAGS="$MAKEFLAGS DP_LINK_CRYPTO=shared DP_LINK_CRYPTO_RIJNDAEL=shared"
+                                                               export CC="$CC -I../../../../"
+                                                               export CC="$CC -L../../../../d0_blind_id/.libs"
+                                                               export CC="$CC -Wl,-rpath,./d0_blind_id/.libs"
                                                                ;;
                                                        *86)
                                                                # No cp commands, we want to use static linking instead.
-                                                               export CC="$CC -I../../../../misc/builddeps/linux32/d0_blind_id/include"
-                                                               export CC="$CC -L../../../../misc/builddeps/linux32/d0_blind_id/lib"
-                                                               export CC="$CC -Wl,-rpath,../../../../misc/builddeps/linux32/d0_blind_id/lib"
-                                                               export CC="$CC -I../../../../misc/builddeps/linux32/gmp/include"
-                                                               export CC="$CC -L../../../../misc/builddeps/linux32/gmp/lib"
-                                                               export CC="$CC -Wl,-rpath,../../../../misc/builddeps/linux32/gmp/lib"
-                                                               MAKEFLAGS="$MAKEFLAGS DP_LINK_CRYPTO=shared DP_LINK_CRYPTO_RIJNDAEL=shared LIB_CRYPTO=../../../../misc/builddeps/linux32/d0_blind_id/lib/libd0_blind_id.a LIB_CRYPTO+=../../../../misc/builddeps/linux32/gmp/lib/libgmp.a LIB_CRYPTO_RIJNDAEL=../../../../misc/builddeps/linux32/d0_blind_id/lib/libd0_rijndael.a"
+                                                               export CC="$CC -I../../../../"
+                                                               export CC="$CC -L../../../../d0_blind_id/.libs"
+                                                               export CC="$CC -Wl,-rpath,./d0_blind_id/.libs"
+                                                               MAKEFLAGS="$MAKEFLAGS DP_LINK_CRYPTO=shared DP_LINK_CRYPTO_RIJNDAEL=shared"
                                                                ;;
                                                        *)
                                                                compiled0=true
@@ -229,31 +227,36 @@ case "$cmd" in
                if $compiled0; then
                        if $cleand0; then
                                if [ -f Makefile ]; then
-                                       verbose make $MAKEFLAGS distclean
+                                       verbose $MAKE $MAKEFLAGS distclean
                                fi
                        fi
                        if ! [ -f Makefile ]; then
                                verbose sh autogen.sh
                                verbose ./configure
                        fi
-                       verbose make $MAKEFLAGS
+                       verbose $MAKE $MAKEFLAGS
                fi
 
                verbose cd "$d0/gmqcc"
                if $cleanqcc; then
-                       verbose make $MAKEFLAGS clean
+                       verbose $MAKE $MAKEFLAGS clean
                fi
                if [ -n "$WE_HATE_OUR_USERS" ]; then
-                       verbose make $MAKEFLAGS gmqcc.exe
+                       verbose $MAKE $MAKEFLAGS gmqcc.exe
                else
-                       verbose make $MAKEFLAGS gmqcc
+                       verbose $MAKE $MAKEFLAGS gmqcc
                fi
 
+               if [ -n "$MSYSTEM" ]; then
+                       DATAMAKE=mingw32-make
+               else
+                       DATAMAKE=$MAKE
+               fi
                verbose cd "$d0/data/xonotic-data.pk3dir"
                if $cleanqc; then
-                       verbose make QCC="../../../../gmqcc/gmqcc" "$@" $MAKEFLAGS clean
+                       verbose ${DATAMAKE} QCC="../../../../gmqcc/gmqcc" "$@" $MAKEFLAGS clean
                fi
-               verbose make QCC="../../../../gmqcc/gmqcc" "$@" $MAKEFLAGS
+               verbose ${DATAMAKE} QCC="../../../../gmqcc/gmqcc" "$@" $MAKEFLAGS
                # 4 levels up: data, xonotic-data, qcsrc, server
 
                verbose cd "$d0/darkplaces"
@@ -261,10 +264,10 @@ case "$cmd" in
                        $ECHO "Warning: invalid empty client, default clients will be used."
                fi
                if $cleandp; then
-                       verbose make $MAKEFLAGS clean
+                       verbose $MAKE $MAKEFLAGS clean
                fi
                for T in $TARGETS; do
-                       verbose make $MAKEFLAGS STRIP=: "$@" "$T"
+                       verbose $MAKE $MAKEFLAGS STRIP=: "$@" "$T"
                done
                for T in $BAD_TARGETS; do
                        $ECHO "Warning: discarded invalid client $T."
@@ -281,7 +284,7 @@ case "$cmd" in
                        export DYLD_FRAMEWORK_PATH="$d0/misc/buildfiles/osx/Xonotic.app/Contents/Frameworks"
                        client=-sdl
                else
-                       export LD_LIBRARY_PATH="$d0/d0_blind_id/.libs"
+                       export LD_LIBRARY_PATH="$d0/d0_blind_id/.libs${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
                        client=-sdl
                fi
                case "$1" in
@@ -356,6 +359,15 @@ case "$cmd" in
                $ECHO "  $SELF compile-map mapname1 mapname2... (e.g. \"./all compile-map dance drain fuse\")"
                handled=false
                ;;
+       serverbench)
+               # TODO(rpolzer): Why does :anticheat: output differ? Total game time differs? Why?
+               verbose "$SELF" run "$@" -noconfig -nohome +exec serverbench.cfg |\
+                       tee /dev/stderr |\
+                       grep '^:' |\
+                       grep -v '^:gamestart:' |\
+                       grep -v '^:anticheat:' |\
+                       md5sum
+               ;;
        *)
                handled=false
                ;;