summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-simulation')
-rw-r--r--games-simulation/openrct2/Manifest4
-rw-r--r--games-simulation/openrct2/files/openrct2-0.2.0-disable-tests-with-assets.patch50
-rw-r--r--games-simulation/openrct2/openrct2-0.2.0.ebuild121
-rw-r--r--games-simulation/openrct2/openrct2-9999.ebuild15
4 files changed, 183 insertions, 7 deletions
diff --git a/games-simulation/openrct2/Manifest b/games-simulation/openrct2/Manifest
index 1da0e45b5c0a..9aafa6ade4d6 100644
--- a/games-simulation/openrct2/Manifest
+++ b/games-simulation/openrct2/Manifest
@@ -1,3 +1,5 @@
DIST openrct2-0.1.2.tar.gz 6769785 BLAKE2B 0cc6ef6c68c1db6c822dd6038bc2d115f487a52b5891316273ee36db1713913baa2f119dabace88a37c16f87c90b14cf84df75a24b26b22571e98966afd2adbc SHA512 489dac96e1eda1449680f98a4b500eeb7b3f1ffbdaa5a5c701300071eb3a7862c65fa5a81e769083927b95a14914db54307724756a9841cff0c769c9e5471adc
-DIST openrct2-objects-v1.0.zip 2050225 BLAKE2B 52ae6f5ab4de5d4b121cea6a3d6711b04f1c4857795c995f7568e3be2862409104be55e233781ff6708c7e821f49af8e91f9f4c87c037b6a8a77698534747925 SHA512 a125fee04c12c49ffd16880eb5b8722e25c5fb82adae305d9904c3a6251c83e73e4a29c7e3694acee3abf336894759cfbff94018c6b210df4d794ca3ec34dc84
+DIST openrct2-0.2.0.tar.gz 6481521 BLAKE2B b3a17d4dd7b0d3e68d4a0a200a81307fa598ac9bafd0636fc2fe62cc0921d1e620cf29a31f2fd5d9258d5b79cd952887e853c005ed719f5990744e9849ad0ee8 SHA512 ac42509ceb52eab20964bf95d7a140dc00d9b4c2569fab1200faff31548f063e209acde29f8ca4ee14858fcf5f6781eebe6d5f7de3d4e01fd43c43ee8905863b
+DIST openrct2-objects-v1.0.2.zip 2068705 BLAKE2B 4f291289a7f331bad19080ffc63d204819973682710ea62c3fc66fb9d05b63c267e2146d6c533f59eac3baa9760b85953ae344b6da4bb778e5ccd249f6160525 SHA512 814d52ee5c071f33c17d88bc53711a509d7988ece12381996b3d233b9b46c79739fd2dafbed57f00537b19c78e290e2481d72b2824b5574734f6876a0af0c359
+DIST openrct2-objects-v1.0.3.zip 2070513 BLAKE2B 3499b022f1d1f2b05da003f87f5f885de8463ed63d751653b0d8d48e2a339496d84d025eb2e44619012aa76360f6880541a519312e6d339eca862f6274d2b73b SHA512 9012a6337df7abd2743e94e3606266cde306335f33bf4f7869cca90c9c31758806c063b697bc3a6e21af7c733841551f2b29072592850cc51090d58f5f685f99
DIST openrct2-title-sequence-v0.1.2.zip 4073116 BLAKE2B a36fb07e8da62afce129f2224f4cf5cc226922094132a3dc515fda1f02e0f8bbe07c973363f824ae58a54a26f252ad96f3f673bf5f142be5c964f45b6f712ed6 SHA512 7592c5397ceb27347c127ae5c4f8e11d7ef2ff23c97f627b354f941894420f546ffdcff88e2348e42c82d182ccf620e739c745d894a9b5650a0d7d028b68a106
diff --git a/games-simulation/openrct2/files/openrct2-0.2.0-disable-tests-with-assets.patch b/games-simulation/openrct2/files/openrct2-0.2.0-disable-tests-with-assets.patch
new file mode 100644
index 000000000000..0b4c7275558c
--- /dev/null
+++ b/games-simulation/openrct2/files/openrct2-0.2.0-disable-tests-with-assets.patch
@@ -0,0 +1,50 @@
+From 86b45a7a4a4fc9b038bcd0e720cf575b934fb462 Mon Sep 17 00:00:00 2001
+From: "Hendrik v. Raven" <hendrik@consetetur.de>
+Date: Sat, 4 Aug 2018 13:58:31 +0200
+Subject: [PATCH] reintroduce DISABLE_RCT2_TESTS compile option
+
+the option was removing when restructuring the CI system, but it is
+still usefull for package maintainers.
+---
+ test/tests/CMakeLists.txt | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/test/tests/CMakeLists.txt b/test/tests/CMakeLists.txt
+index 1f862153d..34ab5c884 100644
+--- a/test/tests/CMakeLists.txt
++++ b/test/tests/CMakeLists.txt
+@@ -1,5 +1,6 @@
+ cmake_minimum_required(VERSION 2.6)
+
++option(DISABLE_RCT2_TESTS "Disable tests that require RollerCoaster Tycoon 2 assets.")
+ option(SYSTEM_GTEST "Use the googletest library provided by the system.")
+
+ if (SYSTEM_GTEST)
+@@ -172,18 +173,21 @@ set(RIDE_RATINGS_TEST_SOURCES "${CMAKE_CURRENT_LIST_DIR}/RideRatings.cpp"
+ "${CMAKE_CURRENT_LIST_DIR}/TestData.cpp")
+ add_executable(test_ride_ratings ${RIDE_RATINGS_TEST_SOURCES})
+ target_link_libraries(test_ride_ratings ${GTEST_LIBRARIES} libopenrct2 ${LDL} z)
+-add_test(NAME ride_ratings COMMAND test_ride_ratings)
+
+ # Multi-launch test
+ set(MULTILAUNCH_TEST_SOURCES "${CMAKE_CURRENT_LIST_DIR}/MultiLaunch.cpp"
+ "${CMAKE_CURRENT_LIST_DIR}/TestData.cpp")
+ add_executable(test_multilaunch ${MULTILAUNCH_TEST_SOURCES})
+ target_link_libraries(test_multilaunch ${GTEST_LIBRARIES} libopenrct2 ${LDL} z)
+-add_test(NAME multilaunch COMMAND test_multilaunch)
+
+ # Tile element test
+ set(TILE_ELEMENT_TEST_SOURCES "${CMAKE_CURRENT_LIST_DIR}/TileElements.cpp"
+ "${CMAKE_CURRENT_LIST_DIR}/TestData.cpp")
+ add_executable(test_tile_elements ${TILE_ELEMENT_TEST_SOURCES})
+ target_link_libraries(test_tile_elements ${GTEST_LIBRARIES} libopenrct2 ${LDL} z)
+-add_test(NAME tile_elements COMMAND test_tile_elements)
++
++if (NOT DISABLE_RCT2_TESTS)
++ add_test(NAME ride_ratings COMMAND test_ride_ratings)
++ add_test(NAME multilaunch COMMAND test_multilaunch)
++ add_test(NAME tile_elements COMMAND test_tile_elements)
++endif ()
+--
+2.18.0
+
diff --git a/games-simulation/openrct2/openrct2-0.2.0.ebuild b/games-simulation/openrct2/openrct2-0.2.0.ebuild
new file mode 100644
index 000000000000..f8059872fa82
--- /dev/null
+++ b/games-simulation/openrct2/openrct2-0.2.0.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils gnome2-utils xdg-utils
+
+DESCRIPTION="An open source re-implementation of RollerCoaster Tycoon 2"
+HOMEPAGE="https://openrct2.website/"
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/OpenRCT2/OpenRCT2.git"
+ EGIT_BRANCH="develop"
+ inherit git-r3
+ SRC_URI=""
+else
+ KEYWORDS="~amd64 ~x86"
+ SRC_URI="https://github.com/OpenRCT2/OpenRCT2/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+ S="${WORKDIR}/OpenRCT2-${PV}"
+fi
+
+TSV="0.1.2"
+OBJV="1.0.2"
+SRC_URI+="
+ https://github.com/OpenRCT2/title-sequences/releases/download/v${TSV}/title-sequence-v${TSV}.zip
+ -> ${PN}-title-sequence-v${TSV}.zip
+ https://github.com/OpenRCT2/objects/releases/download/v${OBJV}/objects.zip
+ -> ${PN}-objects-v${OBJV}.zip"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="libressl +multiplayer opengl test truetype +twitch"
+
+RDEPEND="
+ >=dev-libs/jansson-2.5
+ >=dev-libs/libzip-1.0
+ media-libs/libpng:0=
+ media-libs/libsdl2
+ media-libs/speexdsp
+ multiplayer? (
+ libressl? ( dev-libs/libressl:0= )
+ !libressl? ( dev-libs/openssl:0= )
+ )
+ opengl? ( virtual/opengl )
+ truetype? (
+ media-libs/sdl2-ttf
+ media-libs/fontconfig
+ )
+ twitch? ( net-misc/curl[ssl] )
+"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.2.0-disable-tests-with-assets.patch"
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]]; then
+ git-r3_src_unpack
+ else
+ unpack ${P}.tar.gz
+ fi
+
+ mkdir -p "${S}/data/title" || die
+ pushd "${S}/data/title" || die
+ unpack ${PN}-title-sequence-v${TSV}.zip
+ popd || die
+
+ mkdir -p "${S}/data/object" || die
+ pushd "${S}/data/object" || die
+ unpack ${PN}-objects-v${OBJV}.zip
+ popd || die
+}
+
+src_prepare() {
+ sed -i CMakeLists.txt -e 's/-Werror//' || die
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DDISABLE_HTTP_TWITCH="$(usex !twitch)"
+ -DDISABLE_NETWORK="$(usex !multiplayer)"
+ -DDISABLE_OPENGL="$(usex !opengl)"
+ -DDISABLE_TTF="$(usex !truetype)"
+ -DWITH_TESTS="$(usex test)"
+ -DDOWNLOAD_TITLE_SEQUENCES=OFF
+ -DDOWNLOAD_OBJECTS=OFF
+ -DBUILD_SHARED_LIBS=ON
+ )
+ if use test ; then
+ mycmakeargs+=(
+ -DSYSTEM_GTEST=ON
+ -DDISABLE_RCT2_TESTS=ON
+ )
+ fi
+
+ cmake-utils_src_configure
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ ewarn ""
+ ewarn "You need the original RollerCoaster Tycoon 2 files to play this game."
+ ewarn "See: https://github.com/OpenRCT2/OpenRCT2/wiki/Required-RCT2-files#how-to-retrieve"
+ ewarn ""
+ fi
+ gnome2_icon_cache_update
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+}
diff --git a/games-simulation/openrct2/openrct2-9999.ebuild b/games-simulation/openrct2/openrct2-9999.ebuild
index 1058facd68fd..d9c56e6aeb0f 100644
--- a/games-simulation/openrct2/openrct2-9999.ebuild
+++ b/games-simulation/openrct2/openrct2-9999.ebuild
@@ -14,15 +14,18 @@ if [[ ${PV} == 9999 ]]; then
SRC_URI=""
else
KEYWORDS="~amd64 ~x86"
- SRC_URI="https://github.com/OpenRCT2/OpenRCT2/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI="https://github.com/OpenRCT2/OpenRCT2/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
S="${WORKDIR}/OpenRCT2-${PV}"
fi
TSV="0.1.2"
-SRC_URI+=" https://github.com/OpenRCT2/title-sequences/releases/download/v${TSV}/title-sequence-v${TSV}.zip -> ${PN}-title-sequence-v${TSV}.zip "
-
-OBJV="1.0"
-SRC_URI+=" https://github.com/OpenRCT2/objects/releases/download/v${OBJV}/objects.zip -> ${PN}-objects-v${OBJV}.zip"
+OBJV="1.0.3"
+SRC_URI+="
+ https://github.com/OpenRCT2/title-sequences/releases/download/v${TSV}/title-sequence-v${TSV}.zip
+ -> ${PN}-title-sequence-v${TSV}.zip
+ https://github.com/OpenRCT2/objects/releases/download/v${OBJV}/objects.zip
+ -> ${PN}-objects-v${OBJV}.zip"
LICENSE="GPL-3"
SLOT="0"
@@ -83,9 +86,9 @@ src_configure() {
-DWITH_TESTS="$(usex test)"
-DDOWNLOAD_TITLE_SEQUENCES=OFF
-DDOWNLOAD_OBJECTS=OFF
- -DSYSTEM_GTEST=ON
-DBUILD_SHARED_LIBS=ON
)
+ use test && mycmakeargs+=( -DSYSTEM_GTEST=ON )
cmake-utils_src_configure
}