commit:     fbc378134d2444ce21e1c5d9539c95b0e30e1c63
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Sat Feb  7 22:00:04 2026 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Sat Feb  7 23:22:59 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbc37813

games-simulation/openrct2: add 0.4.31

Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 games-simulation/openrct2/Manifest               |   2 +
 games-simulation/openrct2/openrct2-0.4.31.ebuild | 180 +++++++++++++++++++++++
 2 files changed, 182 insertions(+)

diff --git a/games-simulation/openrct2/Manifest 
b/games-simulation/openrct2/Manifest
index c7fb02ef840e..73dc9a443c2d 100644
--- a/games-simulation/openrct2/Manifest
+++ b/games-simulation/openrct2/Manifest
@@ -1,5 +1,7 @@
 DIST openrct2-0.4.30.tar.gz 24060121 BLAKE2B 
953e8fa23f48f84b229d4c8cd6d2fef7cfd162160d48042dd13c8abd7d6ac424585277ea281a6fa36d337a7bff6eebd55f8a7b95b991ec224146f8d6644d2f88
 SHA512 
d0e0d89be85797769e2471b88b9e5711c0b70b364edd81216802b9f4c9adfc384b11b10bda31d4c19b1f27c3fed1eb72b6d7c9065f6b5e272720afdcc579f4ac
+DIST openrct2-0.4.31.tar.gz 24094282 BLAKE2B 
d7bc3d16cc0e564d61d278c366c014713cfe2b3fd5d3ea09e6e3404c4abb69bb9364402b5676725a63667709e03a9b1fdf3a74cd41b8aedff5429484f96eb275
 SHA512 
a2a40919321276822ec61b3aa397f902076339afebf53e1a43c7311b469a79c47b424250d6b9fec421a2b0ac035a2f43a3b731525dd4d0b772d18dbe2d8590b1
 DIST openrct2-objects-1.7.5.zip 11021841 BLAKE2B 
d782d4c43cdd020144b723eee3995ac822eb55da89513cef2df39499d52c8bf97e52c876d7a75a96dd096b58de1dcbd43d8815e35dae57f85331374b70e4ee6b
 SHA512 
baa7a5c92b95eb53177235f83c5b3b1c9a2c0a5cb008d905e5688ba75fcd4086584f7d252948d210771c0243b71bd67e841b45fbd21325c0fd3be3a757b69f15
+DIST openrct2-objects-1.7.6.zip 11027399 BLAKE2B 
aa291cb408a5739f3678df904cbe7146628c3918b87acc64ec77f5ce78116a3e6c64a1ff82fb1fa2e8cd241007b0d071b3fc33c173f753a633d0da9462fa61d9
 SHA512 
3149a0ef91bc5679d808157e41b8fcdb0bff01ddb0e070d3e4e5c8e9cd4cecd4eec17b76d4fa4a442130e004a3192636e504a0c39ff8ef333e36e0c44d988cd8
 DIST openrct2-openmusic-1.6.1.zip 42921420 BLAKE2B 
cdec26dda1797b27a57d0ffd87c44c740869dff8cffc1ac077d6ce1eee747d32ce09547dc9a70256106b48126e08f04c04668c7fb8b3df2e04db72ef5f0cc344
 SHA512 
bc524b20ab72696a5f38bd65d96a4a83f29a0e65884d9b847540631d31aae42f3bdc4a6db5fa5fe34869012e598543b9327ad92d34e8f4f0f274c7f04d4a2e7f
 DIST openrct2-opensound-1.0.6.zip 4273495 BLAKE2B 
ae92336d8b4a1793a01dda701a2bfdbd5efad285029d6c199f657caaade3a6341c2cb7f1a4a9f420e399b6a7763ed2a50a4c2663dadfea3e3079e374b8d2f707
 SHA512 
8ae2d31687c29cfcdc7630da5addc3bed4b94ed1712891bb1e22d2747f2f8435b7fda843b4490543dbd9d63d392c8b3e4863cd3e669df9ca34f9780c8d9e5485
 DIST openrct2-replays-0.0.92.zip 1356796 BLAKE2B 
39288339151b7fde605f9c9d036f39959e5525fe1d7a234b58b1ec453b45eb8d220a74f784f00d6d6a203fb14aff101bed8b860abc6e49b539206b9038cd6b38
 SHA512 
8ab2f6a776191c869adec69f1d014fd3b18c17492b9f767a62b8bb3c4aa74b6f527e0e721f18df838b6a9f82a24036c3ed2726da6469744b72b11785201fadf5

diff --git a/games-simulation/openrct2/openrct2-0.4.31.ebuild 
b/games-simulation/openrct2/openrct2-0.4.31.ebuild
new file mode 100644
index 000000000000..7d5ba9673a42
--- /dev/null
+++ b/games-simulation/openrct2/openrct2-0.4.31.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2026 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.6"
+MY_PV_RPL="0.0.92"
+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
+}

Reply via email to