Skip to content

Commit

Permalink
games-simulation/openrct2: add 0.4.16
Browse files Browse the repository at this point in the history
Signed-off-by: Conrad Kostecki <[email protected]>
  • Loading branch information
ConiKost committed Nov 9, 2024
1 parent c988cb4 commit 552cf34
Show file tree
Hide file tree
Showing 3 changed files with 201 additions and 0 deletions.
3 changes: 3 additions & 0 deletions games-simulation/openrct2/Manifest
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
DIST openrct2-0.4.14.tar.gz 21917635 BLAKE2B 0fc5a105a416a1a9634ca90542c5234e19da534f07554c1f278b75a1209158d3783cfd69fad1e492140788f9cf3716f5e943391c7787015ae038ccaf7da8765d SHA512 11eaec800aee9667d1a9d5f255f556572221b5f2190740d16c847e23bb1feb75fcb3876c4078ca069517eda72a27fb22f5c6fb91458bdf66dfe1f8ab51bd4e07
DIST openrct2-0.4.15.tar.gz 22045224 BLAKE2B dd0faca7bc4a8d2b5b7b82a087520c6b2a2351481b04c7a2f69e65546428772757df7fd241e8c42adf75eed5f2f94e50d57bbffa6a96e6b50268c1d6fd93045e SHA512 c9dd483993e53addb40097bab87e040bca4f87b8708118ccf4f9aa91a645ee9805f3ceed0cedc4f08b2ea7eb172a3ceac63a1df5f123b40a44cca548b86269af
DIST openrct2-0.4.16.tar.gz 22266650 BLAKE2B 19efa7f08d2f1b82dc3643d6627a1e4758dd679c44d6f49992969b1e75dd5edfe2ab4fce7652dfebcc2e1574a6a404fa2abbf4dc281fb36a26c25ec40024ccc5 SHA512 523ecb6c1358b7d2ee51e862b96fd72215ba5151b888af2878baec099492e097c3d7a99525041e803c5f647eb97c9082751ccf97a468fb7e071d050a9c5fa4c7
DIST openrct2-objects-1.4.10.zip 7495378 BLAKE2B d59f17a419abc935c781075d526ba5e8d6c90d5a524fd314a8c9da3cbd211f87340d615f3a9fe292e2b28cc260734ed344cf2da1e8c76e7310076c2ad163adb0 SHA512 a137a81f6c627ac5d7222c34009d92a24e65bea9b8e0108e59fdf393f1000caee99b9dc9947f824241c055796112d11609b1bcae50ddc33f419723a06b708f64
DIST openrct2-objects-1.4.7.zip 5411765 BLAKE2B 0ac59fbee6d22f832f52f03ad6e4e15bd60ba1955fc7a8f9deaf8fd114483cfdf20cd8ced42494716bf7a1d8dbeb7969cb1fa3852ae11e9afb0819c90ae6d389 SHA512 54f6872502333dc4063d0eca6d9e2cb6f7e6c7593be014a3c17df3b9a6dfa354b50c995953fb56973db8cef3733eedb3b64e680fe136724328156c1c590d9ae7
DIST openrct2-objects-1.4.8.zip 5415469 BLAKE2B 685b2c0493fb367c0eb2087b486cc76b3ff86d6a6400812f13041b2298d63f881760aa6fe538ceea775b7a72b8997a1fbd2611152436057b9d749105e539cae1 SHA512 b25fbb751a8b0ee63aa76fc8559192bc32531019c4c03a27c638cf35be54b5f491c45372b1db94187b6865d0adbf0e29248d43d6b26fde7b829a7138d01d09c6
DIST openrct2-openmusic-1.5.zip 40548101 BLAKE2B 11cf46a54716097038e134ae11aeb23823097ca96189dabeb0e43d7050d5e776aa309c38de247da15b1eec7ed6be6299d5673a92df1323cc3a4a5bbc4f48d567 SHA512 55d4afb854eaa5a69c42e7f0b26669c8fb58b2eba3e2892c655e76d8fab82e2734f39981d7f5ac69e11dc87d06c89795da2468feac3bc53ef6cfdd992e3924f3
DIST openrct2-openmusic-1.6.zip 42921141 BLAKE2B fff3ac6d944ed2021645c064de3daf88c11930bf8817e9c8620cfa73f2da076745dd5b5da36b616c8ee7b2ee0272228a88e264bf1ce948509dc90d77a7a87d5d SHA512 88e3242da45f372e06de04e58d03fc3d256b1485467a25a3f8878c03eb2570eea2c787a9e0416c1b040c15886723ced1379d762f941a23e4bd2fce81416123b0
DIST openrct2-opensound-1.0.5.zip 4012384 BLAKE2B 7ddb1437d7e68373f05bd60d77f03971b8a1d6f4280d008d5bf3e86b5d2cb46001a04edddeeb04a06a37801c3afbd35926beb54fe5a72c7fa88b50d0a0b18535 SHA512 fc46ffb3f6243b3d783a280481ce373a8ddc8cf1fd28bfeceecf6223b72b38f1d49d0c95eea3376308a61a77c50c7a06252b6d72248cfecc493b63b65bd6512a
DIST openrct2-replays-0.0.79.zip 1934633 BLAKE2B 4b5c4d96be91055ceff8f5f5f1a894cc2544659983e61ac2f42d655229357b6a368553c1ee45d147cb360c8d54bb0ca78b61a9716efa8d1d7f37cd7c5ba50fa7 SHA512 04acde4d60c8fa949b298dd15e38fe0421659357fa214dffb0577574e0b0ac218a01ce998f4e12e3ab13a88fbbba8096392462fda29c68a6215bc0875aaae9b2
DIST openrct2-replays-0.0.80.zip 1830711 BLAKE2B b21d658e9e3423fc4cce4a688205660530b576243cb4fefdcbeaa6312e5979052182a51ed9418339c6fcacb6e4c78dfdb617db1934ca51950ea4f89927220f8e SHA512 a6019773e0178d3fa6968f04a5880c27e92cdd270355ddb5b9616b7a9f793a0cb09c246a82d3dd2f6bbf9f2f354a903a9bc4344fafb68532d695513ace7c6922
DIST openrct2-replays-0.0.83.zip 1829681 BLAKE2B fd3a6ff457d45b0b429b667173c95753bdbf9ecd136a7ce16b516c701d88e436e1796c32d1aa5dc7837dd35ea8db5a89a2c42a99dcd5744b826ab32f98030f98 SHA512 43877cd8452049d4519f0d3fd49d9234195a3d3e38af9a880d43509f0a578e1fef0d428673fea1a9a8307d9917be3e3c4ca9d9e466584b6abd5193a366d5f569
DIST openrct2-title-sequences-0.4.14.zip 7791573 BLAKE2B e0bc547b26ba0032c54be0661a1e26bf63a73e3bf0183e3e3d972cbff80e95dd4fa2584852f0da6a597849d822b6d89c3154cbe5ecc99b7eb456560810ed8d17 SHA512 27a1f5e87063ed9baf5faeca15a914e1a57584da6ab0d06d2b9e1f08e801c53f2ea9826381bf5e3dd8e220ff2da601a98841a08f9bcad1e0280b04746512bfb1
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
--- a/src/openrct2/platform/Platform.Linux.cpp
+++ b/src/openrct2/platform/Platform.Linux.cpp
@@ -336,6 +336,7 @@
std::vector<std::string_view> GetSearchablePathsRCT1()
{
return {
+ "/usr/share/openrct2/rct1_data",
// game-data-packager uses this path when installing game files
"/usr/share/games/roller-coaster-tycoon",
};
@@ -344,6 +345,7 @@
std::vector<std::string_view> GetSearchablePathsRCT2()
{
return {
+ "/usr/share/openrct2/rct2_data",
// game-data-packager uses this path when installing game files
"/usr/share/games/roller-coaster-tycoon2",
};
180 changes: 180 additions & 0 deletions games-simulation/openrct2/openrct2-0.4.16.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit cmake readme.gentoo-r1 xdg-utils

MY_PN="OpenRCT2"
MY_PN_MSX="openmusic"
MY_PN_OBJ="objects"
MY_PN_RPL="replays"
MY_PN_SFX="opensound"
MY_PN_TS="title-sequences"
MY_PV_MSX="1.6"
MY_PV_OBJ="1.4.10"
MY_PV_RPL="0.0.83"
MY_PV_SFX="1.0.5"
MY_PV_TS="0.4.14"

DESCRIPTION="An open source re-implementation of Chris Sawyer's RollerCoaster Tycoon 2"
HOMEPAGE="https://openrct2.org/"
SRC_URI="
https://github.com/${MY_PN}/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/${MY_PN}/${MY_PN_MSX}/releases/download/v${MY_PV_MSX}/${MY_PN_MSX}.zip -> ${PN}-${MY_PN_MSX}-${MY_PV_MSX}.zip
https://github.com/${MY_PN}/${MY_PN_OBJ}/releases/download/v${MY_PV_OBJ}/${MY_PN_OBJ}.zip -> ${PN}-${MY_PN_OBJ}-${MY_PV_OBJ}.zip
https://github.com/${MY_PN}/OpenSoundEffects/releases/download/v${MY_PV_SFX}/${MY_PN_SFX}.zip -> ${PN}-${MY_PN_SFX}-${MY_PV_SFX}.zip
https://github.com/${MY_PN}/${MY_PN_TS}/releases/download/v${MY_PV_TS}/${MY_PN_TS}.zip -> ${PN}-${MY_PN_TS}-${MY_PV_TS}.zip
test? ( https://github.com/${MY_PN}/${MY_PN_RPL}/releases/download/v${MY_PV_RPL}/${MY_PN_RPL}.zip -> ${PN}-${MY_PN_RPL}-${MY_PV_RPL}.zip )
"
S="${WORKDIR}/${MY_PN}-${PV}"

LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
IUSE="dedicated +flac +opengl scripting test +truetype +vorbis"
RESTRICT="!test? ( test )"

COMMON_DEPEND="
dev-libs/icu:=
dev-libs/jansson:=
dev-libs/libzip:=
media-libs/libpng:=
net-misc/curl[ssl]
sys-libs/zlib
!dedicated? (
media-libs/libsdl2
media-libs/speexdsp
flac? ( media-libs/flac:= )
opengl? ( virtual/opengl )
vorbis? ( media-libs/libvorbis )
)
dev-libs/openssl:0=
scripting? ( dev-lang/duktape:= )
truetype? (
media-libs/fontconfig:1.0
media-libs/freetype:2
)
"

RDEPEND="
${COMMON_DEPEND}
dedicated? (
acct-group/openrct2
acct-user/openrct2
)
"

DEPEND="
${COMMON_DEPEND}
dev-cpp/nlohmann_json
test? ( dev-cpp/gtest )
"

BDEPEND="
app-arch/unzip
virtual/pkgconfig
"

PATCHES=(
"${FILESDIR}/${PN}-0.4.1-gtest-1.10.patch"
"${FILESDIR}/${PN}-0.4.16-include-additional-paths.patch"
)

src_unpack() {
unpack "${P}".tar.gz

mkdir -p "${S}"/data || die
cd "${S}"/data
unpack "${PN}-${MY_PN_MSX}-${MY_PV_MSX}".zip
unpack "${PN}-${MY_PN_SFX}-${MY_PV_SFX}".zip

mkdir -p "${S}"/data/object || die
cd "${S}"/data/object || die
unpack "${PN}-${MY_PN_OBJ}-${MY_PV_OBJ}".zip

mkdir -p "${S}"/data/sequence || die
cd "${S}"/data/sequence || die
unpack "${PN}-${MY_PN_TS}-${MY_PV_TS}".zip

if use test; then
mkdir -p "${S}"/testdata/replays || die
cd "${S}"/testdata/replays || die
unpack "${PN}-${MY_PN_RPL}-${MY_PV_RPL}".zip
fi
}

src_prepare() {
cmake_src_prepare

# Don't treat warnings as errors.
sed -e 's/-Werror//' -i CMakeLists.txt || die
}

src_configure() {
# Note: There is currently no support for Disord-RPC and Google Benchmark,
# as both packages do not exist in Gentoo, so support for them has been disabled.
local mycmakeargs=(
-DDISABLE_DISCORD_RPC=ON
$(usex !dedicated "-DDISABLE_FLAC=$(usex !flac)" "")
-DDISABLE_GOOGLE_BENCHMARK=ON
-DDISABLE_GUI=$(usex dedicated)
-DDISABLE_HTTP=OFF
-DDISABLE_IPO=ON
-DDISABLE_NETWORK=OFF
$(usex !dedicated "-DDISABLE_OPENGL=$(usex !opengl)" "")
-DDISABLE_TTF=$(usex !truetype)
$(usex !dedicated "-DDISABLE_VORBIS=$(usex !vorbis)" "")
-DDOWNLOAD_OBJECTS=OFF
-DDOWNLOAD_OPENMSX=OFF
-DDOWNLOAD_OPENSFX=OFF
-DDOWNLOAD_REPLAYS=OFF
-DDOWNLOAD_TITLE_SEQUENCES=OFF
-DENABLE_SCRIPTING=$(usex scripting)
-DOPENRCT2_USE_CCACHE=OFF
-DPORTABLE=OFF
-DSTATIC=OFF
-DWITH_TESTS=$(usex test)
-DUSE_MMAP=ON
)

cmake_src_configure
}

src_test() {
# Since the tests need the OpenRCT2 data,
# we need to symlink them into the build directory,
# otherwise some tests will fail, as they don't find the OpenRCT2 data.
# It is currently not possible to override that path.
# See: https://github.com/OpenRCT2/OpenRCT2/issues/6473
ln -s "${S}"/data "${BUILD_DIR}" || die

cmake_src_test
}

src_install() {
use scripting && DOCS+=( "distribution/scripting.md" "distribution/openrct2.d.ts" )

cmake_src_install

if use dedicated; then
newinitd "${FILESDIR}"/openrct2.initd openrct2
newconfd "${FILESDIR}"/openrct2.confd openrct2
fi

readme.gentoo_create_doc
}

pkg_postinst() {
readme.gentoo_print_elog

xdg_desktop_database_update
xdg_icon_cache_update
xdg_mimeinfo_database_update
}

pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
xdg_mimeinfo_database_update
}

0 comments on commit 552cf34

Please sign in to comment.