aboutsummaryrefslogtreecommitdiffstats
path: root/community/openrct2/APKBUILD
blob: 982b0941492e6ec4b0a2f0f7be7b0a3d5b1d98b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=openrct2
pkgver=0.3.5.1
_pkgver_objects=1.0.21
_pkgver_title_sequences=0.1.2c
_pkgver_replays=0.0.57
pkgrel=1
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
	duktape-dev
	gtest-dev
	unzip
	nlohmann-json
	"
install="$pkgname.post-install"
source="$pkgname-$pkgver.tar.gz::https://github.com/openrct2/openrct2/archive/v$pkgver.tar.gz
	$pkgname-$_pkgver_title_sequences-title_sequences.zip::https://github.com/OpenRCT2/title-sequences/releases/download/v$_pkgver_title_sequences/title-sequences.zip
	$pkgname-$_pkgver_objects-objects.zip::https://github.com/OpenRCT2/objects/releases/download/v$_pkgver_objects/objects.zip
	$pkgname-$_pkgver_replays-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
	arm*) options="!check" ;; # https://github.com/OpenRCT2/OpenRCT2/issues/12727
	riscv64) options="textrels" ;;
esac
builddir="$srcdir/OpenRCT2-$pkgver"

prepare() {
	default_prepare

	mkdir -p data/title data/object testdata/replays
	unzip "$srcdir"/$pkgname-$_pkgver_title_sequences-title_sequences.zip -d data/title
	unzip "$srcdir"/$pkgname-$_pkgver_objects-objects.zip -d data/object
	unzip "$srcdir"/$pkgname-$_pkgver_replays-replays.zip -d testdata/replays
}

build() {
	cmake -B build -G Ninja \
		-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 \
		-DDOWNLOAD_REPLAYS=OFF \
		-DDISABLE_GOOGLE_BENCHMARK=ON # Not packaged in Alpine
	cmake --build build
}

check() {
	ln -s "$builddir"/data build/data
	cd build
	CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E "replay_tests"
}


package() {
	DESTDIR="$pkgdir" cmake --install build

	install -d "$pkgdir"/usr/share/openrct2
}

data() {
	amove usr/share/openrct2

	# https://github.com/OpenRCT2/OpenRCT2/issues/12716
	mv "$subpkgdir"/usr/share/openrct2/title \
		"$subpkgdir"/usr/share/openrct2/sequence
}

cli() {
	depends="openrct2-data"
	install="$subpkgname.post-install"

	amove usr/bin/openrct2-cli
}
sha512sums="
0e36db302631b75aa1411eca945bddd1120997efbc48ba9172887f834670f34e345b8c96f363cdc8791d94bb4df32f6e70e30001989c194a8c525e2614241c84  openrct2-0.3.5.1.tar.gz
0e544d236d5f6ac7f68d75ba1f56f043c76c77676cbb92e6fdbf68a6ae2dc6c41dbdad6083ceec36b2f774bcdd99f64f28de73b208d6a39a8218a9e95502d46e  openrct2-0.1.2c-title_sequences.zip
b267db6542562c0c46c9964c865d33abff57d3d3c9a1f4073366f34cc229af2483a51538e56597d0e17ffdcd5bb1ba52ddc8198f8a0afaf0a30fdc2e00e6b3c0  openrct2-1.0.21-objects.zip
eae0e60c92c4e21c03444cb0c9b597c575b2b0ad9d744ca3bf98f46e33e241012b18d92167c58e582481b963c6e602eacd0fc40d59730c31d77ade40cc1bba57  openrct2-0.0.57-replays.zip
"