# Maintainer: Erich Eckner pkgname=openttd-git pkgver=31316.802ca4e72 _commit=${pkgver#*.} pkgrel=2 pkgdesc="A FOSS clone of Transport Tycoon Deluxe." arch=('x86_64' 'i686' 'pentium4') url="http://www.openttd.org" license=('GPL2') groups=() _pinned_dependencies=( 'gcc-libs=11.1.0' 'glibc>=2.31' 'libfluidsynth.so=3' 'libfontconfig.so=1' 'libfreetype.so=6' 'libicui18n.so=70' 'libicuuc.so=70' 'libpng=1.6.37' 'lzo=2.10' 'sdl2=2.0.18' 'xz=5.2.5' 'zlib=1:1.2.11' ) depends=( 'hicolor-icon-theme' "${_pinned_dependencies[@]}" ) makedepends=('git' 'cmake') checkdepends=( 'openttd-opengfx' ) optdepends=( 'openttd-opengfx: free graphics' 'openttd-opensfx: free soundset' 'openttd-openmsx: free music' ) provides=('openttd') conflicts=('openttd') replaces=() backup=() options=() source=( "${pkgname}::git://github.com/OpenTTD/OpenTTD.git#commit=${_commit}" # "chunnel-signaltunnel-pre.patch" # "chunnel-underground-pre.patch" # "chunnel.patch" "signaltunnel.patch" "sloped-stations.patch" "underground.patch" 'opntitle.dat' ) sha512sums=('SKIP' 'fc6bdcdadc40221073741a48e57a115f31918f4ead5c73f9fc3bf8b63f9d002391710a8b79dcb5bcda7a06b570fa8c179fda8a8b9be8809572d738219c3d1793' '880c049177ede4033698b819471fe7c0cf552c584e91b971dbfa179bbff88adbf7da2ba12cd0ae2e7f2b902c32ec8c8f96d5266221c728c0de0fb79f0d6ed3de' 'b3ec4edd1d3c393726f4a4406224cb9237cd87a57f1b4aa86ec9977dfa561c0750a81ac9df5ce91e57fd89b320afae2a0a682cf42065ecd53cb7cd3aaef60b73' 'a3fd5b230b7cdd67a1b6607887433c0cb85ba1dfd30cedfddf573a58b23ccce7c470a22cf7f65a29c173bba12976c5889482cef24f49c8c0a829883a71bcd87d') pkgver() { printf '%s.%s\n' \ "$(( $(git -C "${srcdir}/${pkgname}" rev-list --count "${_commit}" ^f84ad5f7c) + 28004 ))" \ "$( git -C "${srcdir}/${pkgname}" rev-parse --short=9 "${_commit}" )" } prepare() { cd "${srcdir}" # cp chunnel.patch chunnel.pre.patch # patch -p1 -i "chunnel-signaltunnel-pre.patch" # patch -p1 -i "chunnel-underground-pre.patch" cd "${srcdir}/${pkgname}" cp "${srcdir}/opntitle.dat" media/baseset/ ISODATE=$( date -d@$( git log -n1 --pretty=format:%ct ) +'%Y%m%d' ) HASH=$(find {src,bin} -type f -exec sha512sum {} \; | sort | sha512sum - | cut -d' ' -f1) SHORTHASH=$(echo ${HASH} | cut -c1-8) printf '%s\t%s\t%s\t%s\t%s\t%s\t%s\n' \ "${ISODATE}-ewe-g${SHORTHASH}" \ "${ISODATE}" \ "0" \ "${HASH}" \ "0" \ "0" \ "${ISODATE:0:4}" \ > .ottdrev sed -i ' s,"\${CMAKE_SOURCE_DIR}/\.git","/dev/does/not/exist", ' cmake/scripts/FindVersion.cmake # for _p in "${srcdir}/"{signaltunnel,sloped-stations,underground,chunnel.pre}.patch; do for _p in "${srcdir}/"{signaltunnel,underground}.patch; do >&2 echo "patching ${_p##*/} ..." patch -p1 -i "${_p}" >&2 echo "... ok" done } build() { cd "${srcdir}/${pkgname}" mkdir build cd build cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ -DPERSONAL_DIR=.openttd \ .. make # -DBINARY_DIR=bin \ # -DDATA_DIR=share/openttd \ # -DICON_DIR=share/openttd \ # -DMAN_DIR=share/man \ } check() { cd "${srcdir}/${pkgname}/build" make test || true } package() { cd "${srcdir}/${pkgname}/build" make DESTDIR=$pkgdir install # Remove unnecessary languages cp $pkgdir/usr/share/games/openttd/lang/{english,german}.lng $srcdir rm $pkgdir/usr/share/games/openttd/lang/* install -m 644 $srcdir/{english,german}.lng $pkgdir/usr/share/games/openttd/lang # Remove junk rm -rf $pkgdir/usr/share/games/doc rm -rf $pkgdir/usr/share/games/openttd/scripts }