diff options
author | Erich Eckner <git@eckner.net> | 2016-04-04 14:24:20 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2016-04-04 14:24:20 +0200 |
commit | c6a36aa869191398710c6f21588c85631cb7de30 (patch) | |
tree | b3f8bbe43eddc1a57613d3c89136cea274884cf1 | |
parent | 14a5c6b56e201a497b147443290b4cce077095b3 (diff) | |
download | archlinuxewe-c6a36aa869191398710c6f21588c85631cb7de30.tar.xz |
openttd-download verbessert
-rwxr-xr-x | openttd-svn/PKGBUILD | 77 | ||||
-rw-r--r-- | openttd-svn/version.patch | 54 |
2 files changed, 104 insertions, 27 deletions
diff --git a/openttd-svn/PKGBUILD b/openttd-svn/PKGBUILD index bc1fb07dc..e05ffc889 100755 --- a/openttd-svn/PKGBUILD +++ b/openttd-svn/PKGBUILD @@ -1,53 +1,71 @@ # Maintainer: Erich Eckner <arch at eckner dot net> pkgname=openttd-svn pkgver=27534 -pkgrel=1 +pkgrel=2 pkgdesc="A FOSS clone of Transport Tycoon Deluxe." arch=('x86_64') url="http://www.openttd.org" -license=('') +license=('GPL2') groups=() depends=( 'sdl' - 'libpng' + 'xz' + 'icu' 'fontconfig' 'lzo' ) -makedepends=() +makedepends=('subversion') checkdepends=() optdepends=() -provides=() +provides=('openttd') conflicts=() replaces=() backup=() options=() -gfxversion=0.5.2 -sfxversion=0.2.3 -msxversion=0.3.1 +_gfxversion=0.5.2 +_sfxversion=0.2.3 +_msxversion=0.3.1 source=( - "http://binaries.openttd.org/extra/opengfx/$gfxversion/opengfx-$gfxversion-all.zip" - "http://binaries.openttd.org/extra/opensfx/$sfxversion/opensfx-$sfxversion-all.zip" - "http://binaries.openttd.org/extra/openmsx/$msxversion/openmsx-$msxversion-all.zip" + "http://binaries.openttd.org/extra/opengfx/$_gfxversion/opengfx-$_gfxversion-all.zip" + "http://binaries.openttd.org/extra/opensfx/$_sfxversion/opensfx-$_sfxversion-all.zip" + "http://binaries.openttd.org/extra/openmsx/$_msxversion/openmsx-$_msxversion-all.zip" "everything.patch" + "version.patch" "clipboard.grf" ) sha256sums=('19be61f1cb04cbb3cb9602f0b8eb6e6f56ecbefbfdd6e0e03f9579e5a5c1cbc8' '6831b651b3dc8b494026f7277989a1d757961b67c17b75d3c2e097451f75af02' '92e293ae89f13ad679f43185e83fb81fb8cad47fe63f4af3d3d9f955130460f5' '87c17a36bbc0f401e3aad88402e68cbc5ff743c728e403e5492879c931f08757' + '69a604a37db76337a2709a0e63f5ca09b325af294225c42f4b7faf43c93ecc4c' '12b90fe53f2d61d2d45d74ecc6b97d3a5f041c4215a5c1b02a6b1ba162e4572a') -package() { +prepare() { + + tar -xf opengfx-$_gfxversion.tar - tar -xf opengfx-$gfxversion.tar + svn export "svn://svn.openttd.org/trunk@r${pkgver}" trunk + cd trunk - git clone "https://git.openttd.org/trunk.git" $pkgname + cat $srcdir/everything.patch | \ + ( + read zeile + while read zeile + do + [[ "${zeile}" == "diff --git a/"* ]] && break + done + echo "${zeile}" + cat + ) | \ + patch -p1 - cd $pkgname - git checkout 76fc2426669d3a52d392ab6838ebf30326294589 + patch -p2 < $srcdir/version.patch - patch -p1 < $srcdir/everything.patch +} +build() { + + cd trunk ./configure --prefix-dir=/usr \ --binary-dir=bin \ --data-dir=share/openttd \ @@ -55,23 +73,28 @@ package() { --man-dir=share/man \ --personal-dir=.openttd \ --install-dir=$pkgdir \ - make + +} + +package() { + + cd trunk make DESTDIR=$pkgdir install # Install OpenGFX - install -d $pkgdir/usr/share/openttd/data/opengfx-$gfxversion - install -m 644 $srcdir/opengfx-$gfxversion/* $pkgdir/usr/share/openttd/data/opengfx-$gfxversion - chown -R root:root $pkgdir/usr/share/openttd/data/opengfx-$gfxversion + install -d $pkgdir/usr/share/openttd/data/opengfx-$_gfxversion + install -m 644 $srcdir/opengfx-$_gfxversion/* $pkgdir/usr/share/openttd/data/opengfx-$_gfxversion + chown -R root:root $pkgdir/usr/share/openttd/data/opengfx-$_gfxversion # Install OpenSFX - install -d $pkgdir/usr/share/openttd/data/opensfx-$sfxversion - install -m 644 $srcdir/opensfx-$sfxversion/* $pkgdir/usr/share/openttd/data/opensfx-$sfxversion - chown -R root:root $pkgdir/usr/share/openttd/data/opensfx-$sfxversion + install -d $pkgdir/usr/share/openttd/data/opensfx-$_sfxversion + install -m 644 $srcdir/opensfx-$_sfxversion/* $pkgdir/usr/share/openttd/data/opensfx-$_sfxversion + chown -R root:root $pkgdir/usr/share/openttd/data/opensfx-$_sfxversion # Install OpenMSX install -d $pkgdir/usr/share/openttd/gm - install -m 644 $srcdir/openmsx-$msxversion/* $pkgdir/usr/share/openttd/gm + install -m 644 $srcdir/openmsx-$_msxversion/* $pkgdir/usr/share/openttd/gm chown -R root:root $pkgdir/usr/share/openttd/gm/* install -m644 $srcdir/clipboard.grf $pkgdir/usr/share/openttd/baseset/ @@ -83,8 +106,8 @@ package() { # Remove junk rm -rf $pkgdir/usr/share/doc rm -rf $pkgdir/usr/share/openttd/scripts - rm $pkgdir/usr/share/openttd/data/opengfx-$gfxversion/{changelog,readme}.txt - rm $pkgdir/usr/share/openttd/data/opensfx-$sfxversion/{changelog,readme}.txt + rm $pkgdir/usr/share/openttd/data/opengfx-$_gfxversion/{changelog,readme}.txt + rm $pkgdir/usr/share/openttd/data/opensfx-$_sfxversion/{changelog,readme}.txt rm $pkgdir/usr/share/openttd/gm/{changelog,readme}.txt } diff --git a/openttd-svn/version.patch b/openttd-svn/version.patch new file mode 100644 index 000000000..b09e08d3a --- /dev/null +++ b/openttd-svn/version.patch @@ -0,0 +1,54 @@ +--- a/trunk/findversion.sh 2016-04-04 13:46:56.085550989 +0200 ++++ b/trunk/findversion.sh 2016-04-04 14:01:08.537965131 +0200 +@@ -128,10 +128,12 @@ + exit + else + # We don't know +- MODIFIED="1" +- BRANCH="" +- REV="" +- REV_NR="" ++ MODIFIED="2" ++ HASH="$(find $ROOT_DIR/{src,bin} -type f -exec sha512sum {} \; | sha512sum - | cut)" ++ BRANCH="r27534-hard-game-by-ewe" ++ REV="g`echo $HASH | cut -c1-8`" ++ REV_NR="27534" ++ TAG="" + fi + + if [ "$MODIFIED" -eq "2" ]; then +--- a/trunk/config.lib 2016-04-04 14:04:14.881840501 +0200 ++++ b/trunk/config.lib 2016-04-04 14:04:25.561871556 +0200 +@@ -1040,32 +1040,6 @@ + fi + fi + +- if [ -d "$ROOT_DIR/.svn" ] && [ -n "`svn help 2>/dev/null`" ]; then +- log 1 "checking revision... svn detection" +- elif [ -d "$ROOT_DIR/../.svn" ] && [ -n "`svn help 2>/dev/null`" ] && [ -n "`LC_ALL=C svn info $ROOT_DIR/.. | grep '^URL:.*tags$'`" ]; then +- # subversion changed its behaviour; now not all folders have a .svn folder, +- # but only the root folder. Since making tags requires a (sparse) checkout +- # of the tags folder, the folder of the tag does not have a .svn folder +- # anymore and this fails to detect the subversion repository checkout. +- log 1 "checking revision... svn detection (tag)" +- elif [ -d "$ROOT_DIR/.git" ] && [ -n "`git help 2>/dev/null`" ]; then +- log 1 "checking revision... git detection" +- elif [ -d "$ROOT_DIR/.hg" ] && [ -n "`HGPLAIN= hg help 2>/dev/null`" ]; then +- log 1 "checking revision... hg detection" +- elif [ -f "$ROOT_DIR/.ottdrev" ]; then +- log 1 "checking revision... source tarball" +- else +- log 1 "checking revision... no detection" +- log 1 "WARNING: there is no means to determine the version." +- log 1 "WARNING: please use a subversion, mercurial, or git checkout of OpenTTD." +- log 1 "WARNING: you can only join game servers that have been compiled without" +- log 1 "WARNING: version detection." +- log 1 "WARNING: there is a great chance you desync." +- log 1 "WARNING: USE WITH CAUTION!" +- +- sleep 5 +- fi +- + if [ "$doc_dir" = "1" ]; then + if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ]; then + doc_dir="share/doc/openttd" |