# Maintainer: jc_gargma # Maintainer (Arch): Jelle van der Waa # Contributor (AUR): Graham Edgecombe # # I maintain this because: # Arch version lacks additional optimization and hardening flags # Arch version builds with discord, benchmark, update checks, online tests # Arch version cannot be built offline pkgname=openrct2 pkgver=0.3.2 _titlepkgver=0.1.2c _objectpkgver=1.0.20 _replayspkgver=0.0.29 pkgrel=3.4 pkgdesc='Open source re-implementation of Roller Coaster Tycoon 2 (requires full copy of the game)' arch=('x86_64' 'i686' 'armv7h' 'aarch64') url='https://openrct2.io' license=('GPL3') depends=('hicolor-icon-theme' 'sdl2' 'speexdsp' 'fontconfig' 'libpng' 'libzip' 'icu' 'duktape') makedepends=('cmake' 'nlohmann-json') optdepends=('zenity: System dialog box support (GNOME/GTK)' 'kdialog: System dialog box support (KDE)' 'alsa-lib: ALSA audio driver' 'libpulse: PulseAudio audio driver') install=openrct2.install source=($pkgname-$pkgver.tar.gz::https://github.com/OpenRCT2/OpenRCT2/archive/v$pkgver.tar.gz $pkgname-title-sequences-$_titlepkgver.zip::https://github.com/OpenRCT2/title-sequences/releases/download/v$_titlepkgver/title-sequences.zip $pkgname-objects-$_objectpkgver.zip::https://github.com/OpenRCT2/objects/releases/download/v$_objectpkgver/objects.zip $pkgname-replays-$_replayspkgver.zip::https://github.com/OpenRCT2/replays/releases/download/v$_replayspkgver/replays.zip ) b2sums=('de79fefdb860dae1bf2962f9359d1ea46ab073c80206b6687ef40386725c84d1d048eafbd3f3aeb3fcae3136528568943e4cb88ae0f78b4f6c04d127726254e8' 'f91168bea0a4f88a801c95ea45759e0d1c887a89c18dbbded5887d2914db7119dd65c231aa422e4f8a964a81d832eae05bffaa8b7908fac39a63792d082b53a0' 'b3aac9a972a6a9a3272378801bb53ecbceb6ba4dbf1d723a22016a0fc9e7ed0893ec0136b9fc1c95274d1815722a2b11a6c6138db0b7686c6ccaa6d340b8ec6a' '8996bd694e33b1e5a7eab6028f4053f15327f93c7ead446b93722bb0736584eec98ecd2919d62c67b9a19bdfdf187c85e602e18ae212077ae7443448e9d75eef') prepare() { cd "$srcdir/OpenRCT2-$pkgver" mkdir data/sequence cp -r $srcdir/*.parkseq data/sequence mkdir data/object cp -r $srcdir/official data/object cp -r $srcdir/rct1 data/object cp -r $srcdir/rct2 data/object cp -r $srcdir/rct2tt data/object cp -r $srcdir/rct2ww data/object mkdir -p testdata/replays cp -r $srcdir/*.sv6r testdata/replays } build() { cd "$srcdir/OpenRCT2-$pkgver" # lto breaks compiling export CFLAGS="$CFLAGS -O3 -fstack-protector-all -fPIE" export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -fPIE" export LDFLAGS="$LDFLAGS,-pie" mkdir -p build cd build cmake -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DSTATIC=off \ -DCMAKE_INSTALL_LIBDIR=/usr/lib \ -DDOWNLOAD_TITLE_SEQUENCES=OFF \ -DDOWNLOAD_OBJECTS=OFF \ -DDOWNLOAD_REPLAYS=OFF \ -DDISABLE_DISCORD_RPC=ON \ -DDISABLE_GOOGLE_BENCHMARK=ON \ -DDISABLE_HTTP=ON \ -DDISABLE_NETWORK=ON \ .. make all g2 } package() { cd "$srcdir/OpenRCT2-$pkgver/build" make DESTDIR="$pkgdir" install rm "$pkgdir/usr/lib/libopenrct2.a" rmdir "$pkgdir/usr/lib" }