]> git.xonotic.org Git - xonotic/xonotic.git/blobdiff - all
add same SDL prefix hack
[xonotic/xonotic.git] / all
diff --git a/all b/all
index 5064b3e7e5171472e404d39d21756ab4dcd03c31..f3b13637f6bf500124a2913b3889024f1da7ab6e 100755 (executable)
--- a/all
+++ b/all
@@ -272,6 +272,22 @@ fix_git_config()
        fi
 }
 
+mkzip()
+{
+       archive=$1
+       shift
+       ziplist=`mktemp`
+       find "$@" -xtype f \( -executable -or -type l \) -print > "$ziplist"
+       7za a -tzip -mx=9 -x@"$ziplist" "$archive" "$@" || true
+       zip         -9y   -@<"$ziplist" "$archive"      || true
+       rm -f "$ziplist"
+}
+
+mkzip0()
+{
+       zip -0y "$@"
+}
+
 case "$cmd" in
        fix_upstream_rebase)
                for d in $repos; do
@@ -978,10 +994,11 @@ case "$cmd" in
                srcdir=$5
                depsdir=$6
                targetfiles=$7
+               set -x
                if [ -n "$targetfiles" ]; then
                        case " $HOSTS_THAT_ARE_DISABLED " in
                                *\ $host\ *)
-                                       return 0
+                                       exit
                                        ;;
                        esac
                        case " $HOSTS_THAT_ARE_MYSELF " in
@@ -997,7 +1014,7 @@ case "$cmd" in
                                *)
                                        verbose rsync --delete -zLvaSHP "$srcdir"/ "$host:$buildpath/"
                                        verbose rsync --delete -zLvaSHP "$depsdir"/ "$host:$buildpath.deps/"
-                                       verbose ssh "$host" "ln -snf $buildpath.deps $buildpath/.deps && cd $buildpath && make clean $maketargets $makeflags"
+                                       verbose ssh "$host" "ln -snf $buildpath.deps $buildpath/.deps && cd $buildpath && nice -`nice` make clean $maketargets $makeflags"
                                        for f in $targetfiles; do
                                                verbose rsync -zvaSHP "$host:$buildpath/${f%:*}" "${f##*:}" || true
                                        done
@@ -1046,8 +1063,7 @@ case "$cmd" in
                verbose "$SELF" release-compile win64 \
                        'STRIP=: DP_MAKE_TARGET=mingw CC="amd64-mingw32msvc-gcc -g -Wl,--dynamicbase -Wl,--nxcompat -I.deps/include -L.deps/lib" WINDRES="amd64-mingw32msvc-windres" SDL_CONFIG=".deps/bin/sdl-config" LIB_JPEG= CFLAGS_LIBJPEG= WIN64RELEASE=1 D3D=0' \
                        win 'fteqcc.exe:Xonotic/fteqcc/fteqcc-x64.exe' \
-                       'sv-release cl-release' 'darkplaces.exe:Xonotic/xonotic-x64.exe darkplaces-dedicated.exe:Xonotic/xonotic-dedicated-x64.exe'
-                       # release 'darkplaces.exe:Xonotic/xonotic-x64.exe darkplaces-sdl.exe:Xonotic/xonotic-sdl-x64.exe darkplaces-dedicated.exe:Xonotic/xonotic-dedicated-x64.exe'
+                       release 'darkplaces.exe:Xonotic/xonotic-x64.exe darkplaces-sdl.exe:Xonotic/xonotic-sdl-x64.exe darkplaces-dedicated.exe:Xonotic/xonotic-dedicated-x64.exe'
                ;;
        release-engine-osx-sv-sdl)
                # gcc on OSX is buggy, needs -fno-reorder-blocks for a release build to succeed
@@ -1210,7 +1226,7 @@ case "$cmd" in
                fi
                verbose export git_src_repo="$d0/$src" # skip hash-object
                verbose "$SELF" release-buildpk3-transform-$transform "Xonotic/temp"
-               verbose zip -9yr "../../$dst" .
+               verbose mkzip "../../$dst" *
                verbose cd ../..
                verbose rm -rf Xonotic/temp
                ;;
@@ -1252,14 +1268,17 @@ case "$cmd" in
                ;;
        release-zip)
                stamp=`cat Xonotic/stamp.txt`
-               verbose zip -9yr Xonotic-$stamp-engine.zip \
+               # exe and dll files do not need +x, so this makes them eligible for 7zip compression too
+               chmod a-x Xonotic/*.exe Xonotic/*.dll || true
+               # need to use infozip for these (+x bits)
+               verbose mkzip Xonotic-$stamp-engine.zip \
                        Xonotic/*.dll \
                        Xonotic/bin64/*.dll \
                        Xonotic/*.app \
                        Xonotic/xonotic-* \
                        Xonotic/xonotic.exe
                verbose cp Xonotic-$stamp-engine.zip Xonotic-$stamp-common.zip
-               verbose zip -9yr Xonotic-$stamp-common.zip \
+               verbose mkzip Xonotic-$stamp-common.zip \
                        Xonotic/source/*/ \
                        Xonotic/Docs \
                        Xonotic/misc \
@@ -1267,23 +1286,23 @@ case "$cmd" in
                        Xonotic/server \
                        Xonotic/data/font-nimbussansl-$stamp.pk3
                verbose cp Xonotic-$stamp-common.zip Xonotic-$stamp.zip
-               verbose zip -0yr Xonotic-$stamp.zip \
+               verbose mkzip0 Xonotic-$stamp.zip \
                        Xonotic/data/xonotic-$stamp-data.pk3 \
                        Xonotic/data/xonotic-$stamp-maps.pk3 \
                        Xonotic/data/xonotic-$stamp-music.pk3 \
                        Xonotic/data/xonotic-$stamp-nexcompat.pk3
                verbose cp Xonotic-$stamp-common.zip Xonotic-$stamp-low.zip
-               verbose zip -0yr Xonotic-$stamp-low.zip \
+               verbose mkzip0 Xonotic-$stamp-low.zip \
                        Xonotic/data/xonotic-$stamp-data-low.pk3 \
                        Xonotic/data/xonotic-$stamp-maps-low.pk3 \
                        Xonotic/data/xonotic-$stamp-music-low.pk3
                verbose cp Xonotic-$stamp-common.zip Xonotic-$stamp-lowdds.zip
-               verbose zip -0yr Xonotic-$stamp-lowdds.zip \
+               verbose mkzip0 Xonotic-$stamp-lowdds.zip \
                        Xonotic/data/xonotic-$stamp-data-lowdds.pk3 \
                        Xonotic/data/xonotic-$stamp-maps-lowdds.pk3 \
                        Xonotic/data/xonotic-$stamp-music-low.pk3
                verbose mv Xonotic-$stamp-common.zip Xonotic-$stamp-high.zip
-               verbose zip -0yr Xonotic-$stamp-high.zip \
+               verbose mkzip0 Xonotic-$stamp-high.zip \
                        Xonotic/data/xonotic-$stamp-data-raw.pk3 \
                        Xonotic/data/xonotic-$stamp-maps-raw.pk3 \
                        Xonotic/data/xonotic-$stamp-music.pk3 \