commit:     2ba03a2f0bc4d7e5f16e9a98b8e3b286684d900a
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  9 21:02:06 2022 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Sat Jul  9 21:29:28 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ba03a2f

games-simulation/openrct2: add 0.4.1

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

 games-simulation/openrct2/Manifest                 |   2 +
 .../openrct2/files/openrct2-0.4.1-gtest-1.10.patch |   8 +
 games-simulation/openrct2/openrct2-0.4.1.ebuild    | 164 +++++++++++++++++++++
 3 files changed, 174 insertions(+)

diff --git a/games-simulation/openrct2/Manifest 
b/games-simulation/openrct2/Manifest
index 12bcabc744f6..1958d324c2af 100644
--- a/games-simulation/openrct2/Manifest
+++ b/games-simulation/openrct2/Manifest
@@ -1,4 +1,6 @@
 DIST openrct2-0.4.0.tar.gz 15179718 BLAKE2B 
7ff0b3532d7d8bf4e325f5b3bea602d19b884346f4ab98ba9533cad5cbd9d7f79d20c7faf52e8c5cc68e140aae52710d00c87d551d097ccb448610c7d0ff69d3
 SHA512 
b1edf0b8c2987ad2c7fb7f69bb7402ac2a7b783f0a49831a20e8ff8cfc28e84d3e4bc265c986079d58ee430fb1fe6593cde04859cbba8e7aaf1d890091a478d0
+DIST openrct2-0.4.1.tar.gz 14307739 BLAKE2B 
d50dd896128898725eb7bd347341dc23a5ef4e8c83d3334625f5484dc5d4214a6ba19981997291de3edb80baaf498e9b4fd83b460a2fd4fdc2100c080d3d0bb6
 SHA512 
795e94b025ebe8ce4386e59723e2442e950810652a1c95caa1e21a88bef5417c2cce18c93418788e75cd8e980ffda0dc73838693fbe2be108a4e269da9159f06
 DIST openrct2-objects-1.2.7.zip 3424846 BLAKE2B 
3c66bf448fb6ac130d4c5690e3f1a510a65d3058630b427bbc19d067e3ca7f9668b44864c3fa6fb8153d573a72f23c254d15700c97dfa0ecbe76be15f8198fb6
 SHA512 
b94027944e8e82dc0ecd9f330c5cb707f07547a3d787e5a8251bba7c7528a5a15fc034e251dfe70ade397b1aa990c148aa7ccdf2f7e8964db36f143b38f1a4f5
+DIST openrct2-objects-1.3.2.zip 3954437 BLAKE2B 
21d79e35a3bad343a4f96e152f8b5f04820fc927557f0526e639f7c04ca1fac61804db02be57261deb01d65c81f67783ba9ed8e0230a90b2626fa2b63ed82857
 SHA512 
88b292961d728c1ad31dd9f68ba9a1201a59126887030b7b4a8d9fdbed758c1b9bd4f29fb924ddd3cf7b4c5fb7c95f576a00fabdef5a8403e287edeb1c740ff1
 DIST openrct2-replays-0.0.67.zip 1479146 BLAKE2B 
78e2872013e20ce389dd24d70aeeeb2fe3822dbc3bb6059308ad0f2014d0550fe26f85b7dbce7ed8373235e688e5a8e2817b16231a751871d22301d9e3d1ecf7
 SHA512 
41745238b61128777ae4fee1ecb7e9284d84d9b420d653b5371d1349bd00473a98beeaa41688903081390ad38b693cd5e54d230bfc2c255beabbef93ec326f69
 DIST openrct2-title-sequences-0.4.0.zip 7945853 BLAKE2B 
51f07af30c3702754d806829fe612891a883adc70b8e89f64094b28c94879e5c98feca69f3c1f389ceeb33a99175b41afa794a4f2d121280dcce97c428d2ea99
 SHA512 
fcfabb02fb7cb9dda7f73f8a24fb426e23b1ea4c417deacd7147e4d2e8942223e0cf9d9cc6ae371f7508e8d3b1f3161e05677a301a330ae265b6610e1c5da487

diff --git a/games-simulation/openrct2/files/openrct2-0.4.1-gtest-1.10.patch 
b/games-simulation/openrct2/files/openrct2-0.4.1-gtest-1.10.patch
new file mode 100644
index 000000000000..1a9eba0fb3e3
--- /dev/null
+++ b/games-simulation/openrct2/files/openrct2-0.4.1-gtest-1.10.patch
@@ -0,0 +1,8 @@
+--- a/test/tests/ReplayTests.cpp
++++ b/test/tests/ReplayTests.cpp
+@@ -115,4 +115,5 @@
+     }
+ };
+ 
++GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(ReplayTests);
+ INSTANTIATE_TEST_SUITE_P(Replay, ReplayTests, 
testing::ValuesIn(GetReplayFiles()), PrintReplayParameter());

diff --git a/games-simulation/openrct2/openrct2-0.4.1.ebuild 
b/games-simulation/openrct2/openrct2-0.4.1.ebuild
new file mode 100644
index 000000000000..086cc24d58f0
--- /dev/null
+++ b/games-simulation/openrct2/openrct2-0.4.1.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2022 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_OBJ="objects"
+MY_PN_RPL="replays"
+MY_PN_TS="title-sequences"
+MY_PV_OBJ="1.3.2"
+MY_PV_RPL="0.0.67"
+MY_PV_TS="0.4.0"
+
+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_OBJ}/releases/download/v${MY_PV_OBJ}/${MY_PN_OBJ}.zip
 -> ${PN}-${MY_PN_OBJ}-${MY_PV_OBJ}.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 +lightfx +opengl scripting test +truetype"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+       dev-libs/icu:=
+       dev-libs/jansson:=
+       dev-libs/libzip:=
+       media-libs/libpng:0=
+       net-misc/curl[ssl]
+       sys-libs/zlib
+       !dedicated? (
+               media-libs/libsdl2
+               media-libs/speexdsp
+               opengl? ( virtual/opengl )
+       )
+       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.0-include-additional-paths.patch"
+       "${FILESDIR}/${PN}-0.4.1-gtest-1.10.patch"
+)
+
+src_unpack() {
+       unpack "${P}".tar.gz
+
+       mkdir -p "${S}"/data/sequence || die
+       cd "${S}"/data/sequence || die
+       unpack "${PN}-${MY_PN_TS}-${MY_PV_TS}".zip
+
+       mkdir -p "${S}"/data/object || die
+       cd "${S}"/data/object || die
+       unpack "${PN}-${MY_PN_OBJ}-${MY_PV_OBJ}".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
+               -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)
+               -DDOWNLOAD_OBJECTS=OFF
+               -DDOWNLOAD_REPLAYS=OFF
+               -DDOWNLOAD_TITLE_SEQUENCES=OFF
+               -DENABLE_LIGHTFX=$(usex lightfx)
+               -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