summaryrefslogtreecommitdiff
path: root/games-simulation
diff options
context:
space:
mode:
authorConrad Kostecki <conikost@gentoo.org>2025-11-13 22:52:01 +0100
committerConrad Kostecki <conikost@gentoo.org>2025-11-13 22:52:01 +0100
commit14b8844ad8ce95fe17f2224a37f97a2d738c60f7 (patch)
tree7178d6b0fc9ed4b3b9970ba576721eb69f2d96c5 /games-simulation
parentab17df49fb473bfcf1834d09671fa50a41024ffe (diff)
downloadgentoo-14b8844ad8ce95fe17f2224a37f97a2d738c60f7.tar.gz
gentoo-14b8844ad8ce95fe17f2224a37f97a2d738c60f7.tar.bz2
gentoo-14b8844ad8ce95fe17f2224a37f97a2d738c60f7.zip
games-simulation/openrct2: add 0.4.28
Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
Diffstat (limited to 'games-simulation')
-rw-r--r--games-simulation/openrct2/Manifest1
-rw-r--r--games-simulation/openrct2/openrct2-0.4.28.ebuild180
2 files changed, 181 insertions, 0 deletions
diff --git a/games-simulation/openrct2/Manifest b/games-simulation/openrct2/Manifest
index 6c465f0f290a..e2ab4c33e6f0 100644
--- a/games-simulation/openrct2/Manifest
+++ b/games-simulation/openrct2/Manifest
@@ -1,4 +1,5 @@
DIST openrct2-0.4.27.tar.gz 24030087 BLAKE2B ac72f38ddafc7b162e5d159ecae2f003e2043daaa49a20bb06408a161b4f03f9ca1cffacc4183cf54dca86d33b8a2556e81eb71bba12638bedfa1150c0edf8c2 SHA512 8664dfefcf4c57441dc0e93366b2415d73c02ebd9442da250cf66ade764d23170c28407c312e7f9b225b2442c8a3c4171e05981bbc8a1adde40ad8becb56cf90
+DIST openrct2-0.4.28.tar.gz 24049762 BLAKE2B a7fa794e3da65070bb6f3ebb00be288d41797c76c5db3dca70d91ea8909602ac04642630008de94f2d3983273eaff70335fe7bd571df779d682ee62c78a5ccd7 SHA512 9af8cae1385c0f76a58c7f9e2541326edb48537293f48a5c347806079aa19ef069aaaca6e18878338e9a2f0e36b767977d225bcb849da47e3d83745107bc3b11
DIST openrct2-objects-1.7.3.zip 10954826 BLAKE2B 353cc99be66f1b8dfb43eb52453ba8d05ba7aa9d0c0431d4aea81522819be55317fe3e082e28519769681f9d4e8c78dcfaaccdf50286258e2d82fe64f9cfe070 SHA512 108247fc62bdc523ece3d3c32b47ad0d7ab682c1021716ac66223b7577a33966700a92bbe7b98b6d0b2ac731c56ad150795d08cb659c1e190bbcc48b010ff827
DIST openrct2-openmusic-1.6.1.zip 42921420 BLAKE2B cdec26dda1797b27a57d0ffd87c44c740869dff8cffc1ac077d6ce1eee747d32ce09547dc9a70256106b48126e08f04c04668c7fb8b3df2e04db72ef5f0cc344 SHA512 bc524b20ab72696a5f38bd65d96a4a83f29a0e65884d9b847540631d31aae42f3bdc4a6db5fa5fe34869012e598543b9327ad92d34e8f4f0f274c7f04d4a2e7f
DIST openrct2-opensound-1.0.6.zip 4273495 BLAKE2B ae92336d8b4a1793a01dda701a2bfdbd5efad285029d6c199f657caaade3a6341c2cb7f1a4a9f420e399b6a7763ed2a50a4c2663dadfea3e3079e374b8d2f707 SHA512 8ae2d31687c29cfcdc7630da5addc3bed4b94ed1712891bb1e22d2747f2f8435b7fda843b4490543dbd9d63d392c8b3e4863cd3e669df9ca34f9780c8d9e5485
diff --git a/games-simulation/openrct2/openrct2-0.4.28.ebuild b/games-simulation/openrct2/openrct2-0.4.28.ebuild
new file mode 100644
index 000000000000..85c144cd32da
--- /dev/null
+++ b/games-simulation/openrct2/openrct2-0.4.28.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2025 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.1"
+MY_PV_OBJ="1.7.3"
+MY_PV_RPL="0.0.90"
+MY_PV_SFX="1.0.6"
+MY_PV_TS="0.4.26"
+
+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 ~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]
+ virtual/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
+}