# Maintainer: Erich Eckner pkgname=openttd-git pkgver=31197.19a651360 _commit=${pkgver#*.} pkgrel=1 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=69' 'libicuuc.so=69' 'libpng=1.6.37' 'lzo=2.10' 'sdl2=2.0.16' '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' 'b6e538e27f2bc7049788392854f819f1ce36bf78e824f41903729fe80263214ed90369ea920a5f33825a0fa7be9cb0d5ad02de9b06680f1545d53d475b04f617' 'fb3b39cf651074597a0301e32fa04f57efd34580c2f647a7bff1e2c5fb33c03aaedb602f762e9df27531a26ec1752ab678bf79df8166325b4298b70335a05bfb' '3b1841da4a8738e17cb07f0853aaec99acb18e4d781408fd09e3761cf44dd410ce7c7a88a3784bb1e0442df00a327ab750b49a74cf2fabf5c5313a10a042018d' '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 }