From 0f5612e68c077cb8b1b51012b3406d2bb036a62f Mon Sep 17 00:00:00 2001
From: Bart Ribbers <bribbers@disroot.org>
Date: Tue, 18 Aug 2020 17:28:59 +0200
Subject: [PATCH] community/openrct2: upgrade to 0.3.0

---
 community/openrct2/APKBUILD | 90 ++++++++++++++++++++++---------------
 1 file changed, 55 insertions(+), 35 deletions(-)

diff --git a/community/openrct2/APKBUILD b/community/openrct2/APKBUILD
index c9829660f81e..31505a29bba5 100644
--- a/community/openrct2/APKBUILD
+++ b/community/openrct2/APKBUILD
@@ -1,32 +1,52 @@
 # Contributor: Bart Ribbers <bribbers@disroot.org>
 # Maintainer: Bart Ribbers <bribbers@disroot.org>
 pkgname=openrct2
-pkgver=0.2.6
-_pkgver_objects=1.0.14
+pkgver=0.3.0
+_pkgver_objects=1.0.16
 _pkgver_title_sequences=0.1.2
-pkgrel=1
+_pkgver_replays=0.0.17
+pkgrel=0
 pkgdesc="Open-source re-implementation of Roller Coaster Tycoon 2"
 arch="all !s390x !mips !mips64" # Build fails on s390x
 url="https://openrct2.io"
 license="GPL-3.0-only"
 depends="$pkgname-data"
-makedepends="cmake ninja jansson-dev libzip-dev libpng-dev speexdsp-dev fontconfig-dev curl-dev icu-dev sdl2-dev mesa-dev fts-dev unzip"
+makedepends="
+	cmake
+	ninja
+	jansson-dev
+	libzip-dev
+	libpng-dev
+	speexdsp-dev
+	fontconfig-dev
+	curl-dev
+	icu-dev
+	sdl2-dev
+	mesa-dev
+	fts-dev
+	duktape-dev
+	gtest-dev
+	unzip
+	"
 install="$pkgname.post-install"
 source="https://github.com/openrct2/openrct2/archive/v$pkgver/openrct2-v$pkgver.tar.gz
 	$pkgname-$pkgver-title_sequences.zip::https://github.com/OpenRCT2/title-sequences/releases/download/v$_pkgver_title_sequences/title-sequence-v$_pkgver_title_sequences.zip
-	$pkgname-$pkgver-objects.zip::https://github.com/OpenRCT2/objects/releases/download/v$_pkgver_objects/objects.zip"
-subpackages="$pkgname-static $pkgname-doc $pkgname-cli $pkgname-data::noarch"
-# net required for downloading googletests
-# TODO: pre-download googletest and integrate
-options="net"
+	$pkgname-$pkgver-objects.zip::https://github.com/OpenRCT2/objects/releases/download/v$_pkgver_objects/objects.zip
+	$pkgname-$pkgver-replays.zip::https://github.com/OpenRCT2/replays/releases/download/v$_pkgver_replays/replays.zip
+	"
+subpackages="$pkgname-doc $pkgname-cli $pkgname-data::noarch"
+case "$CARCH" in
+	armv7) options="!check" ;; # https://github.com/OpenRCT2/OpenRCT2/issues/12727
+esac
 builddir="$srcdir/OpenRCT2-$pkgver"
 
 prepare() {
 	default_prepare
 
-	mkdir title object
-	unzip "$srcdir"/$pkgname-$pkgver-title_sequences.zip -d title
-	unzip "$srcdir"/$pkgname-$pkgver-objects.zip -d object
+	mkdir -p data/title data/object testdata/replays
+	unzip "$srcdir"/$pkgname-$pkgver-title_sequences.zip -d data/title
+	unzip "$srcdir"/$pkgname-$pkgver-objects.zip -d data/object
+	unzip "$srcdir"/$pkgname-$pkgver-replays.zip -d testdata/replays
 }
 
 build() {
@@ -34,38 +54,37 @@ build() {
 		-DCMAKE_BUILD_TYPE=None \
 		-DCMAKE_INSTALL_PREFIX=/usr \
 		-DCMAKE_INSTALL_LIBDIR=lib \
+		-DBUILD_SHARED_LIBS=ON \
 		-DWITH_TESTS=ON \
+		-DSYSTEM_GTEST=ON \
 		-DDOWNLOAD_TITLE_SEQUENCES=OFF \
-		-DDOWNLOAD_OBJECTS=OFF
-	ninja -C build
+		-DDOWNLOAD_OBJECTS=OFF \
+		-DDOWNLOAD_REPLAYS=OFF \
+		-DDISABLE_GOOGLE_BENCHMARK=ON # Not packaged in Alpine
+	cmake --build build
 }
 
-package() {
-	DESTDIR="$pkgdir" ninja -C build install
+check() {
+	ln -s "$builddir"/data build/data
+	cd build
+	CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
 
-	install -d "$pkgdir"/usr/share/openrct2
 
-	mv \
-		title \
-		object \
-		"$pkgdir"/usr/share/openrct2
-}
+package() {
+	DESTDIR="$pkgdir" cmake --build build --target install
 
-check() {
-	cd build
-	# test failures due to unable to select language
-	CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E "(ride_ratings|multilaunch|tile_elements|pathfinding|s6importexporttests)"
+	install -d "$pkgdir"/usr/share/openrct2
 }
 
 data() {
 	mkdir -p "$subpkgdir"/usr/share/openrct2
 
-	mv \
-		"$pkgdir"/usr/share/openrct2/object \
-		"$pkgdir"/usr/share/openrct2/g2.dat \
-		"$pkgdir"/usr/share/openrct2/shaders \
-		"$pkgdir"/usr/share/openrct2/language \
-		"$subpkgdir"/usr/share/openrct2
+	mv "$pkgdir"/usr/share/openrct2 \
+		"$subpkgdir"/usr/share/
+	# https://github.com/OpenRCT2/OpenRCT2/issues/12716
+	mv "$subpkgdir"/usr/share/openrct2/title \
+		"$subpkgdir"/usr/share/openrct2/sequence
 }
 
 cli() {
@@ -74,6 +93,7 @@ cli() {
 	mkdir -p "$subpkgdir"/usr/bin
 	mv "$pkgdir"/usr/bin/openrct2-cli "$subpkgdir"/usr/bin/openrct2-cli
 }
-sha512sums="abe7c344b7588b169c95ffe0ab9028f72614d9b5783d81fa4f97f206d90d8cbaa0b91f04314c10926dbd5f68bba166558c428557f598abb343d306800611fb24  openrct2-v0.2.6.tar.gz
-7592c5397ceb27347c127ae5c4f8e11d7ef2ff23c97f627b354f941894420f546ffdcff88e2348e42c82d182ccf620e739c745d894a9b5650a0d7d028b68a106  openrct2-0.2.6-title_sequences.zip
-66e7a55ca894f2ea11af1c6300f934ef00f659137dded06f54bf749f490ff6063f95da800ae3cbfbbffe1c3e7d995e307d1281d57e4454ded6fed5affde84f8e  openrct2-0.2.6-objects.zip"
+sha512sums="585bcd7a077114dc5332b95cb44f7c689e47fcbd7cff7c2ab32a24253a4fd87f50e79f40f9428c79ea6bc6d8cd88019b4edfce88509c03bc2d43854926d21317  openrct2-v0.3.0.tar.gz
+7592c5397ceb27347c127ae5c4f8e11d7ef2ff23c97f627b354f941894420f546ffdcff88e2348e42c82d182ccf620e739c745d894a9b5650a0d7d028b68a106  openrct2-0.3.0-title_sequences.zip
+2a8696467320f7894330d0fbb4894dd6effb2d6844fcf643e1f8e15a7b0b45411a7c205b75a9e9d7ea0627bc70b7a7e1e2213e0f7db1c7b489ae8b485670dba5  openrct2-0.3.0-objects.zip
+103a8ba5b5b2dd76c18b642720d262553bb15ad26d59892f895327bf5e87b73e476b255af6556286faacb668aae49aa1ee29a14bcca2bb75d855383d12e60f4a  openrct2-0.3.0-replays.zip"
-- 
GitLab