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
srcdir=$5
depsdir=$6
targetfiles=$7
+ set -x
if [ -n "$targetfiles" ]; then
+ case " $HOSTS_THAT_ARE_DISABLED " in
+ *\ $host\ *)
+ exit
+ ;;
+ esac
case " $HOSTS_THAT_ARE_MYSELF " in
*\ $host\ *)
verbose rsync --delete -zLvaSHP "$srcdir"/ "$buildpath/"
*)
verbose rsync --delete -zLvaSHP "$srcdir"/ "$host:$buildpath/"
verbose rsync --delete -zLvaSHP "$depsdir"/ "$host:$buildpath.deps/"
- verbose ssh "$host" ". ~/.profile && 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
release-engine-win32)
# TODO change to g++ and D3D=1 when D3D gets added
verbose "$SELF" release-compile win32 \
- 'STRIP=: DP_MAKE_TARGET=mingw CC="i586-mingw32msvc-gcc -g -Wl,--dynamicbase -Wl,--nxcompat -I.deps/include -L.deps/lib" WINDRES="i586-mingw32msvc-windres" SDL_CONFIG="$HOME/dp.win32/bin/sdl-config" LIB_JPEG= CFLAGS_LIBJPEG= WIN32RELEASE=1 D3D=0' \
+ 'STRIP=: DP_MAKE_TARGET=mingw CC="i586-mingw32msvc-gcc -g -Wl,--dynamicbase -Wl,--nxcompat -I.deps/include -L.deps/lib" WINDRES="i586-mingw32msvc-windres" SDL_CONFIG=".deps/bin/sdl-config" LIB_JPEG= CFLAGS_LIBJPEG= WIN32RELEASE=1 D3D=0' \
win 'fteqcc.exe:Xonotic/fteqcc/fteqcc.exe' \
release 'darkplaces.exe:Xonotic/xonotic.exe darkplaces-sdl.exe:Xonotic/xonotic-sdl.exe darkplaces-dedicated.exe:Xonotic/xonotic-dedicated.exe'
;;
;;
release-engine-linux32)
verbose "$SELF" release-compile linux32 \
- 'STRIP=: CC="gcc -m32 -g -Wl,--hash-style=sysv -I.deps/include -L.deps/lib" DP_MODPLUG_STATIC_LIBDIR=.deps/lib LIB_JPEG=.deps/lib/libjpeg.a DP_CRYPTO_STATIC_LIBDIR=.deps/lib' \
+ 'STRIP=: CC="gcc -m32 -g -I.deps/include -L.deps/lib" DP_MODPLUG_STATIC_LIBDIR=.deps/lib LIB_JPEG=.deps/lib/libjpeg.a DP_CRYPTO_STATIC_LIBDIR=.deps/lib' \
all 'fteqcc.bin:Xonotic/fteqcc/fteqcc.linux32' \
release 'darkplaces-glx:Xonotic/xonotic-linux32-glx darkplaces-sdl:Xonotic/xonotic-linux32-sdl darkplaces-dedicated:Xonotic/xonotic-linux32-dedicated'
;;
release-engine-linux64)
verbose "$SELF" release-compile linux64 \
- 'STRIP=: CC="gcc -m64 -g -Wl,--hash-style=sysv -I.deps/include -L.deps/lib" DP_MODPLUG_STATIC_LIBDIR=.deps/lib LIB_JPEG=.deps/lib/libjpeg.a DP_CRYPTO_STATIC_LIBDIR=.deps/lib' \
+ 'STRIP=: CC="gcc -m64 -g -I.deps/include -L.deps/lib" DP_MODPLUG_STATIC_LIBDIR=.deps/lib LIB_JPEG=.deps/lib/libjpeg.a DP_CRYPTO_STATIC_LIBDIR=.deps/lib' \
all 'fteqcc.bin:Xonotic/fteqcc/fteqcc.linux64' \
release 'darkplaces-glx:Xonotic/xonotic-linux64-glx darkplaces-sdl:Xonotic/xonotic-linux64-sdl darkplaces-dedicated:Xonotic/xonotic-linux64-dedicated'
;;
major=$(($gv / 10000))
minor=$(($gv / 100 - $major * 100))
patch=$(($gv - $major * 10000 - $minor * 100))
+ versionstr="$major.$minor.$patch"
+ case "$RELEASETYPE" in
+ beta)
+ versionstr="$versionstr""beta"
+ ;;
+ esac
verbose sed -i "
- s/^set g_xonoticversion [^ ]* /set g_xonoticversion $major.$minor.$patch /;
+ 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 ))/;
" defaultXonotic.cfg
+ (
+ verbose cd gfx/menu/luminos
+ verbose cp "$d0"/mediasource/gfx/menu/luminos_versionbuilder/background_l2.svg .
+ verbose "$d0"/mediasource/gfx/menu/luminos_versionbuilder/versionbuilder "$versionstr"
+ verbose rm background_l2.svg
+ )
fi
if [ x"$src" = x"data/xonotic-maps.pk3dir" ]; then
for X in ../../data/*-????????????????????????????????????????-????????????????????????????????????????.pk3; do
if [ -f "$X" ]; then
verbose unzip "$X"
+ verbose rm -f maps/*.log maps/*.irc maps/*.lin
fi
done
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
;;
;;
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
+ # let's pass crypto import laws of some nasty countries
+ crypto_libs=`find Xonotic -name \*d0_rijndael\* -exec rm -f {} \;`
+ if [ -n "$crypto_libs" ]; then
+ verbose mkzip Xonotic-$stamp-crypto.zip \
+ $crypto_libs
+ rm -f $crypto_libs
+ fi
+ # build the archives
+ 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 \
Xonotic/key_0.d0pk \
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 \