X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=all;h=66d20aba900dd41130dfabfbfe464db0b2223bd3;hb=4ad05f7ccccd534ab994554596b0f5d14b85c900;hp=edd3af9fbb0d4e1094ada6148b6580595dec53d5;hpb=45378daff04b7137528b5425c8dc8bf3acd25005;p=xonotic%2Fxonotic.git diff --git a/all b/all index edd3af9f..66d20aba 100755 --- a/all +++ b/all @@ -268,8 +268,55 @@ cmd=$1 shift case "$cmd" in - release-*) + release|release-*) export LC_ALL=C + + release_args="$cmd $*" + msg "*** $release_args: start" + release_starttime=`date +%s` + release_end() + { + release_endtime=`date +%s` + release_deltatime=$(($release_endtime - $release_starttime)) + msg "*** $release_args: $release_deltatime seconds" + } + trap release_end EXIT + release_tempstarttime=$release_starttime + release_timereport() + { + release_endtime=`date +%s` # RELEASE NOW!!! + if [ -n "$*" ]; then + release_deltatime=$(($release_endtime - $release_tempstarttime)) + msg "**** $release_args: $*: $release_deltatime seconds" + fi + release_tempstarttime=$release_endtime + } + release_git_extract_dir() + { + release_src=$1; shift + release_dst=$1; shift + # try to create a hardlink + if ln -f "$release_src/.git/HEAD" "$release_dst/.hardlink-test"; then + rm -f "$release_dst/.hardlink-test" + { + verbose cd "$release_src" + git ls-files HEAD -- "$@" + } | { + while IFS= read -r F; do + case "$F" in */*) mkdir -p "$release_dst/${F%/*}" ;; esac + verbose ln -f "$release_src/$F" "$release_dst/$F" + done + } + else + { + verbose cd "$release_src" + verbose git archive --format=tar HEAD -- "$@" + } | { + verbose cd "$release_dst" + verbose tar xvf - + } + fi + } ;; esac @@ -724,10 +771,8 @@ case "$cmd" in else b=`repobranch "$d"` if git rev-parse "refs/heads/$b" >/dev/null 2>&1; then - exists=true verbose git checkout $checkoutflags "$b" elif git rev-parse "refs/remotes/$remote/$b" >/dev/null 2>&1; then - exists=true verbose git checkout $checkoutflags --track -b "$b" "$remote/$b" else $ECHO "WTF? Not even branch $b doesn't exist in $d" @@ -1559,51 +1604,31 @@ case "$cmd" in else verbose date +%Y%m%d > Xonotic/stamp.txt fi - verbose git archive --format=tar HEAD -- Docs misc server xonotic-linux-glx.sh xonotic-linux-sdl.sh misc/buildfiles key_0.d0pk | { + release_git_extract_dir "." "Xonotic" Docs misc server xonotic-linux-glx.sh xonotic-linux-sdl.sh misc/buildfiles key_0.d0pk COPYING GPL-2 GPL-3 + ( verbose cd Xonotic verbose mkdir data fteqcc source source/darkplaces source/fteqcc source/d0_blind_id mapping - verbose tar xvf - verbose rm -rf misc/builddeps - verbose mv misc/buildfiles/win32/* . || true + verbose mv misc/buildfiles/win32 bin32 || true + verbose mv bin32/SDL.dll . || true verbose mv misc/buildfiles/win64 bin64 || true verbose mv misc/buildfiles/osx/* . || true verbose rm -rf misc/buildfiles verbose rm -rf misc/pki - } - { - verbose cd darkplaces - verbose git archive --format=tar HEAD - } | { - verbose cd Xonotic/source/darkplaces - verbose tar xvf - - } - { - verbose cd fteqcc - verbose git archive --format=tar HEAD - } | { - verbose cd Xonotic/source/fteqcc - verbose tar xvf - - } - { - verbose cd data/xonotic-data.pk3dir - verbose git archive --format=tar HEAD -- qcsrc Makefile - } | { - verbose cd Xonotic/source - verbose tar xvf - - } - { - verbose cd d0_blind_id - verbose git archive --format=tar HEAD - } | { + ) + release_git_extract_dir "darkplaces" "Xonotic/source/darkplaces" . + release_git_extract_dir "fteqcc" "Xonotic/source/fteqcc" . + release_git_extract_dir "data/xonotic-data.pk3dir" "Xonotic/source" qcsrc Makefile + release_git_extract_dir "d0_blind_id" "Xonotic/source/d0_blind_id" . + ( verbose cd Xonotic/source/d0_blind_id - verbose tar xvf - verbose sh autogen.sh - } + ) rm -f Xonotic/key_15.d0pk { verbose cd Xonotic/mapping - verbose wget http://www.icculus.org/netradiant/files/netradiant-1.5.0-20110223.tar.bz2 - verbose wget http://www.icculus.org/netradiant/files/netradiant-1.5.0-20110223-win32-7z.exe + verbose wget http://www.icculus.org/netradiant/files/netradiant-1.5.0-20110630.tar.bz2 + verbose wget http://www.icculus.org/netradiant/files/netradiant-1.5.0-20110630-win32-7z.exe for X in *-7z.exe; do 7za x "$X" rm -f "$X" @@ -1797,15 +1822,12 @@ case "$cmd" in dst="$PWD/$dst" ;; esac + release_timereport verbose rm -rf Xonotic/temp + release_timereport "deleted temp directory" verbose mkdir -p Xonotic/temp - { - verbose cd "$src" - verbose git archive --format=tar HEAD - } | { - verbose cd Xonotic/temp - verbose tar xvf - - } + release_git_extract_dir "$src" "Xonotic/temp" . + release_timereport "extracted data" verbose cd Xonotic/temp if [ x"$src" = x"data/xonotic-data.pk3dir" ]; then verbose cp ../source/progs.dat . @@ -1824,11 +1846,22 @@ case "$cmd" in versionstr="$versionstr$RELEASETYPE" ;; esac - verbose sed -i " - 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 + if [ $gv -lt 900 ]; then + # 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/; + " < defaultXonotic.cfg > defaultXonotic.cfg.new + 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 ))/; + " < defaultXonotic.cfg > defaultXonotic.cfg.new + fi + mv defaultXonotic.cfg.new defaultXonotic.cfg case "$RELEASETYPE" in release) echo "" >> defaultXonotic.cfg @@ -1838,6 +1871,7 @@ case "$cmd" in esac ( verbose cd gfx/menu/luminos + verbose rm -f background_l2.tga background_ingame_l2.tga 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 @@ -1852,10 +1886,14 @@ case "$cmd" in done fi verbose export git_src_repo="$d0/$src" # skip hash-object + release_timereport "processed data" verbose "$SELF" release-buildpk3-transform-$transform "Xonotic/temp" + release_timereport "transformed data" verbose mkzipr "../../$dst" * + release_timereport "zipped data" verbose cd ../.. verbose rm -rf Xonotic/temp + release_timereport "deleted temp directory again" ;; release-buildpk3s) stamp=`cat Xonotic/stamp.txt` @@ -1902,17 +1940,20 @@ case "$cmd" in crypto_libs=`find Xonotic -name \*d0_rijndael\*.so -o -name \*d0_rijndael\*.dylib -o -name \*d0_rijndael\*.dll -o -name \*d0_rijndael\*.c` if [ -n "$crypto_libs" ]; then verbose mkzip Xonotic-$stamp-crypto.zip \ - $crypto_libs + $crypto_libs \ + Xonotic/COPYING Xonotic/GPL-2 Xonotic/GPL-3 rm -f $crypto_libs fi # build the archives verbose mkzip Xonotic-$stamp-engine.zip \ Xonotic/*.dll \ + Xonotic/bin32/*.dll \ Xonotic/bin64/*.dll \ Xonotic/*.app \ Xonotic/xonotic-* \ Xonotic/xonotic.exe \ - Xonotic/source/darkplaces/ + Xonotic/source/darkplaces/ \ + Xonotic/COPYING Xonotic/GPL-2 Xonotic/GPL-3 verbose cp Xonotic-$stamp-engine.zip Xonotic-$stamp-common.zip verbose mkzip Xonotic-$stamp-common.zip \ Xonotic/source/fteqcc/ \ @@ -1936,6 +1977,8 @@ case "$cmd" in Xonotic/data/xonotic-$stamp-maps-low.pk3 \ Xonotic/data/xonotic-$stamp-music-low.pk3 verbose mv Xonotic-$stamp-common.zip Xonotic-$stamp-high.zip + verbose mkzip Xonotic-$stamp-high.zip \ + Xonotic/mapping verbose mkzip0 Xonotic-$stamp-high.zip \ Xonotic/data/xonotic-$stamp-data-high.pk3 \ Xonotic/data/xonotic-$stamp-maps-high.pk3 \ @@ -1944,7 +1987,7 @@ case "$cmd" in verbose mkzip Xonotic-$stamp-mappingsupport.zip \ Xonotic/mapping verbose mkzip0 Xonotic-$stamp-mappingsupport.zip \ - Xonotic/data/xonotic-$stamp-maps-low.pk3 # TODO add a Radiant build + Xonotic/data/xonotic-$stamp-maps-low.pk3 ;; release) verbose "$SELF" release-prepare @@ -1965,7 +2008,7 @@ case "$cmd" in $ECHO " $SELF checkout|switch /" $ECHO " $SELF clean [-m] [-f | -fu | -fU] [-r] [-D]" $ECHO " $SELF clean --reclone" - $ECHO " $SELF compile [-c] [-r|-p] [-0]" + $ECHO " $SELF compile [-c] [-r|-p] [-0] [sdl|glx|wgl|agl|dedicated]" $ECHO " $SELF each|foreach [-k] command..." $ECHO " $SELF fix_upstream_rebase" $ECHO " $SELF keygen"