X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=misc%2Ftools%2Fall%2Frelease.subr;h=99ab788449502c910c9f6afc5e93089176261d25;hb=9dd2395d68c2284d47472c57a7eeddf6f59a7d2c;hp=91619fe3bb7a3d5250121732e00081b465cd3358;hpb=9f4a5a6bd28db5698a71d20795cfaaf340e0eec9;p=xonotic%2Fxonotic.git diff --git a/misc/tools/all/release.subr b/misc/tools/all/release.subr index 91619fe3..99ab7884 100644 --- a/misc/tools/all/release.subr +++ b/misc/tools/all/release.subr @@ -2,6 +2,13 @@ release_common() { export LC_ALL=C + if [ -z "$MAKEFLAGS" ]; then + ncpus=`getconf _NPROCESSORS_ONLN 2>/dev/null || getconf NPROCESSORS_ONLN 2>/dev/null || echo 1` + if [ $ncpus -gt 1 ]; then + export MAKEFLAGS=-j$ncpus + fi + fi + release_args="$cmd $*" msg "*** $release_args: start" release_starttime=`date +%s` @@ -173,9 +180,12 @@ case "$cmd" in verbose cd Xonotic verbose mkdir data source source/darkplaces source/gmqcc source/d0_blind_id mapping verbose rm -rf misc/builddeps - verbose mv misc/buildfiles/win32 bin32 || true - verbose mv bin32/SDL.dll . || true - verbose mv misc/buildfiles/win64 bin64 || true + #verbose mv bin32/SDL.dll . || true # Leftover? + + # We're going to be building these later + #verbose mv misc/buildfiles/win32 bin32 || true + #verbose mv misc/buildfiles/win64 bin64 || true + verbose mv misc/buildfiles/osx/* . || true verbose rm -rf misc/buildfiles verbose rm -rf misc/pki @@ -265,6 +275,32 @@ case "$cmd" in ;; esac ;; + release-dlls-compile) + release_common + arch=$1 + buildpath=$2 + targetdir=$3 + mkdir -p "$targetdir" + ( + cd "misc/buildsrc" + verbose ./dlls.sh all "$buildpath" "$arch" + ) + verbose cp -v $buildpath/out/$arch/* "$targetdir" + ;; + release-dlls-win32) + release_common + verbose "$SELF" release-dlls-compile win32 /tmp/dlls Xonotic/bin32 + ;; + release-dlls-win64) + release_common + verbose "$SELF" release-dlls-compile win64 /tmp/dlls Xonotic/bin64 + ;; + release-dlls) + release_common + verbose "$SELF" release-dlls-win32 + verbose "$SELF" release-dlls-win64 + verbose rm -rf /tmp/dlls + ;; release-engine-win32) release_common #good=true @@ -272,8 +308,8 @@ case "$cmd" in #verbose "$SELF" release-getbinary Xonotic/xonotic-x86-dedicated.exe || good=false #$good verbose "$SELF" release-compile win32 \ - 'STRIP=: DP_MAKE_TARGET=mingw UNAME=MINGW32 CC="i686-w64-mingw32-gcc -g1 -Wl,--dynamicbase -Wl,--nxcompat -I../../../.deps/include -L../../../.deps/lib -DUSE_WSPIAPI_H -DSUPPORTIPV6" WINDRES="i686-w64-mingw32-windres" SDL_CONFIG="../../../.deps/bin/sdl2-config" DP_LINK_ZLIB=dlopen DP_LINK_JPEG=dlopen DP_LINK_ODE=dlopen DP_LINK_CRYPTO=dlopen DP_LINK_CRYPTO_RIJNDAEL=dlopen WIN32RELEASE=1 D3D=1' \ - release 'darkplaces.exe:Xonotic/xonotic.exe darkplaces-sdl.exe:Xonotic/xonotic-sdl.exe darkplaces-dedicated.exe:Xonotic/xonotic-dedicated.exe' + 'STRIP=: D3D=1 DP_MAKE_TARGET=mingw WIN32RELEASE=1 CC="i686-w64-mingw32-gcc -static -g1 -mstackrealign -Wl,--dynamicbase -Wl,--nxcompat -I../../../.deps/include -L../../../.deps/lib -DSUPPORTIPV6" WINDRES="i686-w64-mingw32-windres" SDL_CONFIG="../../../.deps/bin/sdl2-config" DP_LINK_CRYPTO=dlopen DP_LINK_CRYPTO_RIJNDAEL=dlopen DP_LINK_JPEG=dlopen DP_LINK_ODE=dlopen DP_LINK_ZLIB=dlopen' \ + release 'darkplaces.exe:Xonotic/xonotic-x86-wgl.exe darkplaces-sdl.exe:Xonotic/xonotic-x86.exe darkplaces-dedicated.exe:Xonotic/xonotic-x86-dedicated.exe' ;; release-engine-win64) release_common @@ -282,8 +318,8 @@ case "$cmd" in #verbose "$SELF" release-getbinary Xonotic/xonotic-dedicated.exe || good=false #$good verbose "$SELF" release-compile win64 \ - 'STRIP=: DP_MAKE_TARGET=mingw UNAME=MINGW32 CC="x86_64-w64-mingw32-gcc -g1 -Wl,--dynamicbase -Wl,--nxcompat -I../../../.deps/include -L../../../.deps/lib -DSUPPORTIPV6" WINDRES="x86_64-w64-mingw32-windres" SDL_CONFIG="../../../.deps/bin/sdl2-config" DP_LINK_ZLIB=dlopen DP_LINK_JPEG=dlopen DP_LINK_ODE=dlopen DP_LINK_CRYPTO=dlopen DP_LINK_CRYPTO_RIJNDAEL=dlopen WIN64RELEASE=1 D3D=1' \ - release 'darkplaces.exe:Xonotic/xonotic-x64.exe darkplaces-sdl.exe:Xonotic/xonotic-x64-sdl.exe darkplaces-dedicated.exe:Xonotic/xonotic-x64-dedicated.exe' + 'STRIP=: D3D=1 DP_MAKE_TARGET=mingw WIN64RELEASE=1 CC="x86_64-w64-mingw32-gcc -static -g1 -Wl,--dynamicbase -Wl,--nxcompat -I../../../.deps/include -L../../../.deps/lib -DSUPPORTIPV6" WINDRES="x86_64-w64-mingw32-windres" SDL_CONFIG="../../../.deps/bin/sdl2-config" DP_LINK_CRYPTO=dlopen DP_LINK_CRYPTO_RIJNDAEL=dlopen DP_LINK_JPEG=dlopen DP_LINK_ODE=dlopen DP_LINK_ZLIB=dlopen' \ + release 'darkplaces.exe:Xonotic/xonotic-wgl.exe darkplaces-sdl.exe:Xonotic/xonotic.exe darkplaces-dedicated.exe:Xonotic/xonotic-dedicated.exe' ;; release-engine-osx) release_common @@ -291,8 +327,9 @@ case "$cmd" in #verbose "$SELF" release-getbinary Xonotic/Xonotic.app/Contents/MacOS/xonotic-osx-sdl-bin || good=false #verbose "$SELF" release-getbinary Xonotic/xonotic-osx-dedicated || good=false #$good + # Note: travis build script also had SDLCONFIG_MACOSX* flags; need to check if they're still needed with osxcross. verbose "$SELF" release-compile osx \ - 'STRIP=: CC="gcc -g1 -arch i386 -arch ppc -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.4 -I../../../.deps/include -L../../../.deps/lib -fno-reorder-blocks -DSUPPORTIPV6" DP_LINK_ZLIB=shared DP_LINK_JPEG=dlopen DP_LINK_ODE=dlopen DP_LINK_CRYPTO=dlopen DP_LINK_CRYPTO_RIJNDAEL=dlopen' \ + 'STRIP=: DP_MAKE_TARGET=macosx CC="$HOME/osxcross/out/bin/o64-clang -g1 -arch x86_64 -mmacosx-version-min=10.6 -Wl,-rpath -Wl,@loader_path/../Frameworks -Wl,-rpath -Wl,@loader_path -I../../../.deps/include -L../../../.deps/lib -DSUPPORTIPV6" SDLCONFIG_MACOSXCFLAGS="-I../../../.deps/SDL2.framework/Headers" SDLCONFIG_MACOSXLIBS="-F../../../.deps -framework SDL2 -framework Cocoa -I../../../.deps/SDL2.framework/Headers" SDLCONFIG_MACOSXSTATICLIBS="-F../../../.deps -framework SDL2 -framework Cocoa -I../../../.deps/SDL2.framework/Headers" DP_LINK_CRYPTO=dlopen DP_LINK_CRYPTO_RIJNDAEL=dlopen DP_LINK_JPEG=dlopen DP_LINK_ODE=dlopen DP_LINK_ZLIB=shared' \ 'sv-release sdl-release' 'darkplaces-sdl:Xonotic/Xonotic.app/Contents/MacOS/xonotic-osx-sdl-bin darkplaces-dedicated:Xonotic/xonotic-osx-dedicated' ;; release-engine-linux64) @@ -303,7 +340,7 @@ case "$cmd" in #verbose "$SELF" release-getbinary Xonotic/xonotic-linux64-dedicated || good=false #$good verbose "$SELF" release-compile linux64 \ - 'STRIP=: CC="gcc -m64 -g1 -I../../../.deps/include -L../../../.deps/lib -DSUPPORTIPV6" LIB_JPEG=../../../.deps/lib/libjpeg.a LIB_CRYPTO="../../../.deps/lib/libd0_blind_id.a ../../../.deps/lib/libgmp.a" DP_LINK_ZLIB=shared DP_LINK_JPEG=dlopen DP_LINK_ODE=dlopen DP_LINK_CRYPTO=shared DP_LINK_CRYPTO_RIJNDAEL=dlopen' \ + 'STRIP=: CC="gcc -m64 -g1 -I../../../.deps/include -L../../../.deps/lib -DSUPPORTIPV6" DP_LINK_CRYPTO=shared LIB_CRYPTO="../../../.deps/lib/libd0_blind_id.a ../../../.deps/lib/libgmp.a" DP_LINK_CRYPTO_RIJNDAEL=shared DP_LINK_JPEG=shared LIB_JPEG=/usr/lib/x86_64-linux-gnu/libjpeg.a DP_LINK_ODE=shared CFLAGS_ODE="-DUSEODE -DLINK_TO_LIBODE -DdDOUBLE" LIB_ODE="../../../.deps/lib/libode.a -lstdc++ -pthread" DP_LINK_ZLIB=shared' \ release 'darkplaces-glx:Xonotic/xonotic-linux64-glx darkplaces-sdl:Xonotic/xonotic-linux64-sdl darkplaces-dedicated:Xonotic/xonotic-linux64-dedicated' ;; release-engine) @@ -313,7 +350,7 @@ case "$cmd" in verbose "$SELF" release-engine-linux64 && good=true verbose "$SELF" release-engine-win32 && good=true verbose "$SELF" release-engine-win64 && good=true - #verbose "$SELF" release-engine-osx && good=true + verbose "$SELF" release-engine-osx && good=true $good ;; release-maps) @@ -323,7 +360,7 @@ case "$cmd" in release-qc) release_common verbose make -C "$d0/gmqcc" gmqcc - verbose env GIT_DIR="$d0/data/xonotic-data.pk3dir/.git" make -C Xonotic/source QCC="$d0/gmqcc/gmqcc" XON_BUILDSYSTEM=1 clean qc + verbose env GIT_DIR="$d0/data/xonotic-data.pk3dir/.git" make -C Xonotic/source QCC="$d0/gmqcc/gmqcc" XON_BUILDSYSTEM=1 QCCFLAGS_WATERMARK='$(shell git describe --tags)' clean qc ;; release-buildpk3-transform-raw) release_common @@ -424,16 +461,18 @@ case "$cmd" in # pre-1.0: compatible with any other pre-1.0 verbose sed " s/^set g_xonoticversion [^ ]* /set g_xonoticversion $versionstr /; - s/^gameversion_min [0-9]*/gameversion_min 0/; s/^gameversion_max [0-9]*/gameversion_max 9999/; " < xonotic-common.cfg > xonotic-common.cfg.new + # Following line was included in sed above, ref https://gitlab.com/xonotic/xonotic-data.pk3dir/-/merge_requests/1034 + # s/^gameversion_min [0-9]*/gameversion_min 0/; else # >= 1.0 verbose sed " s/^set g_xonoticversion [^ ]* /set g_xonoticversion $versionstr /; - s/^gameversion_min [0-9]*/gameversion_min $(( ($gv / 100) * 100 - 100 ))/; s/^gameversion_max [0-9]*/gameversion_max $(( ($gv / 100) * 100 + 199 ))/; " < xonotic-common.cfg > xonotic-common.cfg.new + # Following line was included in sed above, ref https://gitlab.com/xonotic/xonotic-data.pk3dir/-/merge_requests/1034 + # s/^gameversion_min [0-9]*/gameversion_min $(( ($gv / 100) * 100 - 100 ))/; fi mv xonotic-common.cfg.new xonotic-common.cfg case "$RELEASETYPE" in @@ -573,6 +612,7 @@ case "$cmd" in release_common verbose "$SELF" release-prepare verbose "$SELF" release-maps + verbose "$SELF" release-dlls verbose "$SELF" release-engine verbose "$SELF" release-qc verbose "$SELF" release-pack