1
0
forked from 0ad/0ad

Use zipped data files and pre-converted textures in release distributions

This was SVN commit r8306.
This commit is contained in:
Ykkrosh 2010-10-07 19:57:31 +00:00
parent 5eedb07297
commit 46d5fff269
2 changed files with 33 additions and 23 deletions

View File

@ -69,9 +69,12 @@
Section "!Game and data files" GameSection
SetOutPath "$INSTDIR"
File /r "${CHECKOUTPATH}\binaries"
File "${CHECKOUTPATH}\*.txt"
File "${CHECKOUTPATH}\*.bat"
File /r /x "public" "${CHECKOUTPATH}\binaries"
SetOutPath "$INSTDIR\binaries\data\mods\public"
File "${CHECKOUTPATH}\binaries\data\mods\public\public.zip"
;Store installation folder
WriteRegStr SHCTX "Software\0 A.D." "" $INSTDIR

View File

@ -2,13 +2,19 @@
set -ev
# Compiled executable for archive-builder tool
EXE=~/0ad/hg/ps/binaries/system/pyrogenesis
# Location of clean checkout
SVNWC=~/0ad/public-trunk/
SVNREV=`svnversion -n ${SVNWC}`
PREFIX=0ad-r0${SVNREV}-pre-alpha
PREFIX=0ad-r0${SVNREV}-alpha
SEVENZOPTS="-mmt -mx=9"
XZOPTS="-9"
BZ2OPTS="-9"
GZIPOPTS="-9"
# Export files with appropriate line-endings
rm -rf export-unix
@ -20,34 +26,35 @@ svn export --native-eol CRLF ${SVNWC} export-win32
echo L\"${SVNREV}-release\" > export-unix/build/svn_revision/svn_revision.txt
echo L\"${SVNREV}-release\" > export-win32/build/svn_revision/svn_revision.txt
# Package the mod data
# (The platforms differ only in line endings, so just do the Unix one instead of
# generating two needlessly inconsistent packages)
${EXE} -archivebuild=export-unix/binaries/data/mods/public -archivebuild-output=export-unix/binaries/data/mods/public/public.zip
cp export-unix/binaries/data/mods/public/public.zip export-win32/binaries/data/mods/public/public.zip
# Collect the relevant files
ln -Tsf export-unix ${PREFIX}
tar cf $PREFIX-unix-build-temp.tar \
tar cf $PREFIX-unix-build.tar \
--exclude='*.bat' --exclude='*.dll' --exclude='*.exe' \
--exclude='libraries/fcollada/lib/*' --exclude='libraries/spidermonkey-tip/lib/*' --exclude='libraries/spidermonkey-tip/include-win32' \
${PREFIX}/{source,build,libraries/{cxxtest,fcollada,spidermonkey-tip,valgrind},binaries/system/readme.txt,binaries/data/tests,binaries/data/mods/_test.*,*.txt}
tar cf $PREFIX-unix-data-temp.tar ${PREFIX}/binaries/data/{config,mods/public,tools}
--exclude='libraries/fcollada/lib/*' --exclude='libraries/nvtt/lib/*' \
--exclude='libraries/spidermonkey-tip/lib/*' --exclude='libraries/spidermonkey-tip/include-win32' \
${PREFIX}/{source,build,libraries/{cxxtest,fcollada,spidermonkey-tip,valgrind,nvtt},binaries/system/readme.txt,binaries/data/tests,binaries/data/mods/_test.*,*.txt}
tar cf $PREFIX-unix-data.tar ${PREFIX}/binaries/data/{config,mods/public/public.zip,tools}
# TODO: ought to include generated docs in here, perhaps?
# Anonymise the tarballs a bit
#tardy -gna wfg -gnu 1000 -una wfg -unu 1000 $PREFIX-unix-build-temp.tar $PREFIX-unix-build.tar
#tardy -gna wfg -gnu 1000 -una wfg -unu 1000 $PREFIX-unix-data-temp.tar $PREFIX-unix-data.tar
# Actually don't, because it might be causing "tar: A lone zero block" warnings
mv $PREFIX-unix-build{-temp,}.tar
mv $PREFIX-unix-data{-temp,}.tar
# Compress
xz -kv ${XZOPTS} $PREFIX-unix-build.tar
xz -kv ${XZOPTS} $PREFIX-unix-data.tar
bzip2 -kp ${BZ2OPTS} $PREFIX-unix-build.tar
bzip2 -kp ${BZ2OPTS} $PREFIX-unix-data.tar
#bzip2 -kp ${BZ2OPTS} $PREFIX-unix-build.tar
#bzip2 -kp ${BZ2OPTS} $PREFIX-unix-data.tar
gzip -cv ${GZIPOPTS} $PREFIX-unix-build.tar > $PREFIX-unix-build.tar.gz
gzip -cv ${GZIPOPTS} $PREFIX-unix-data.tar > $PREFIX-unix-data.tar.gz
# Create Windows self-extracting .exe
ln -Tsf export-win32 ${PREFIX}
wine 'c:/program files/7-zip/7zG' a -sfx $PREFIX-win32.exe ${SEVENZOPTS} ${PREFIX}/{source,build,libraries,binaries/{data,system},*.*}
# Create Windows installer
wine ~/.wine/drive_c/Program\ Files/NSIS/makensis.exe /nocd /dcheckoutpath=export-win32 /drevision=${SVNREV} export-win32/source/tools/dist/0ad.nsi
# Fix permissions
chmod 644 ${PREFIX}-{unix-{build,data}.tar.{xz,bz2},win32.exe}
chmod -f 644 ${PREFIX}-{unix-{build,data}.tar.{xz,bz2,gz},win32.exe}
# Print digests for copying into wiki page
sha1sum ${PREFIX}-{unix-{build,data}.tar.{xz,bz2},win32.exe}
sha1sum ${PREFIX}-{unix-{build,data}.tar.{xz,bz2,gz},win32.exe}