diff options
author | tastytea <gentoo@tastytea.de> | 2024-06-29 13:39:34 +0200 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2024-07-26 10:40:31 +0300 |
commit | a23c22ab4dc10007242625baab1a678ab714561d (patch) | |
tree | 8001c4faf761f7985ce4e4a00c4fa1933ed51286 /games-simulation | |
parent | gui-libs/aquamarine: Add missing dependency (diff) | |
download | gentoo-a23c22ab4dc10007242625baab1a678ab714561d.tar.gz gentoo-a23c22ab4dc10007242625baab1a678ab714561d.tar.bz2 gentoo-a23c22ab4dc10007242625baab1a678ab714561d.zip |
games-simulation/simutrans: add 124.1
Signed-off-by: tastytea <gentoo@tastytea.de>
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'games-simulation')
-rw-r--r-- | games-simulation/simutrans/Manifest | 3 | ||||
-rw-r--r-- | games-simulation/simutrans/files/simutrans-124.1-fix-miniupnpc-api.patch | 42 | ||||
-rw-r--r-- | games-simulation/simutrans/simutrans-124.1.ebuild | 114 |
3 files changed, 159 insertions, 0 deletions
diff --git a/games-simulation/simutrans/Manifest b/games-simulation/simutrans/Manifest index da6997234c83..5661707dec8d 100644 --- a/games-simulation/simutrans/Manifest +++ b/games-simulation/simutrans/Manifest @@ -1,7 +1,10 @@ DIST simutrans-src-123-0-1.zip 4771334 BLAKE2B c83edba188225c07bea9aa50d8899a251d3b9f50160aada6839d519bc99f52ef57bd95e7cfdf8db5d6c5efffb9fd421b4b8d8283b7998a352fdd7327332244c4 SHA512 87bc96c201126bc735693dea83a320e79f4b4a0fa6940aa9a6d2f8ef6025788f941a3c816febe3dc8a23ff786a2f016df2ef8a61492bb5ed4a834c721f8fc0a1 DIST simutrans-src-124-0.zip 5464505 BLAKE2B c50d6dd67dcc8e8166a016e2b7258e8e4aa4c515b08c31b81b239b7bd26013bf23ba9638329e1becf76473a20a1e6280e49a2c2d5af97d16d2f2422317dc9251 SHA512 1d4f00c41061240e1b14e61178640f1b914bb819edfe174210f4f04cfde2b0b1dd414a30ba19618a8362d387b1c7ec9bfe9a64275b3ec2409b6b1d44aee62412 +DIST simutrans-src-124-1.zip 5965405 BLAKE2B 15e9365df40d9e26f50b63d2e2e2d6f4e03bc5111a28ca3fbe454cfd7339ebbbf3fb99f8f060604f7ca6861fb4220aa9aa0bcd275d98abea6825cbb08956e814 SHA512 f2c95e67ed90a44044264d81dbd1b8db7999a3f192bbfb09f775404924b7583bbf12e1a5841c1e8968ed9bba1bdaff0ca4c913aee83eba5b247c8860a3801c0e DIST simutrans.svg 2677 BLAKE2B c60f386b13908cda641f8cb41918f8f0b1c70f9104d14ee368d221bf013970de3aee05b009ad56af07710833218d5e15cd24c51da4dae4e964f1c877a820fce0 SHA512 317b9059a1cc863eed778f60d6c3f4569a3cee192fb6f9210aed2cf65f76f098dd5a17020de11d3beb30b9e7a1a49876c0610e7d31e24e141c6ce31747b3809a DIST simutrans_language_pack-Base+texts-123.0.1.zip 1228228 BLAKE2B cf7bd6dd40f1c5a79bec73a8f3bd993fdeb8abe725b1294cef7e0fa7fe374aa18a563cfd81907d7b3a67a5898594730448b4f9038515415a8b44d99ecc5eb8ea SHA512 4d6b66f810fedaf50734d178e329592e174c48ca36611b15403075b02a3a626581993093e6fd6e6f297c973c5f928a054a557cd135fa487c79df3c2f1f6e0ea0 DIST simutrans_language_pack-Base+texts-124.0.zip 1234798 BLAKE2B a2a3aed3783156fa8738087107898d284d867109ad0f50d0435efb391fca9fe1f3d14e225e21deb199e213148abeece4eb47257f3e1c91d0b82d3680fae34d4f SHA512 3007662f6e3132966a2bff1384bf32fba9cf6a55df5cd4e337b08c67d7397ad13fd924831709415c015b72a7f7ae0bba432fa13e23c87f14709cd7e0dfa7b939 +DIST simutrans_language_pack-Base+texts-124.1.zip 1234798 BLAKE2B a2a3aed3783156fa8738087107898d284d867109ad0f50d0435efb391fca9fe1f3d14e225e21deb199e213148abeece4eb47257f3e1c91d0b82d3680fae34d4f SHA512 3007662f6e3132966a2bff1384bf32fba9cf6a55df5cd4e337b08c67d7397ad13fd924831709415c015b72a7f7ae0bba432fa13e23c87f14709cd7e0dfa7b939 DIST simutrans_simupak64-123-0.zip 5209700 BLAKE2B 432985b056d2a6ea30a63bb3ce278b6dfa7b02dde390cdbedea68e87538b6fa1626ebe8c2490d1b6e569b53ffa6952c1d72a1e41789a81f05ba3b4705f3b4c7e SHA512 0814bf1b41f8b9d458ffe124a237499f0d9e8105269b983d75c16eb87e164bfa0cd49ff153f603ed56f98e4a04edd483f765230e6e1a182c52fa09eb41c92b71 DIST simutrans_simupak64-124-0.zip 5084196 BLAKE2B a306f71a41fce6c0dc7c2bcd80717ffd4de88e021d145321e98c8bc5cab9c5ce92b5cd1c33e06ae660f7b6810963397733c137636aa64d74e3e22df804e18bf0 SHA512 d757e29a311d3a344f9816d4313cadaecf44f196209969be30732bfd51a954e87c9333aab3e4d2eb6ea2bca70e1beb23fa364e51a651316146378b12e4821a3c +DIST simutrans_simupak64-124-1.zip 5095713 BLAKE2B fdb31043917bd9736cacc6f17a06e0b440a79e077491333491d700bb45b0ec4097d8a13ef34b1a94001cb06c4732250e856b59f7b7faf1537c94860367e16a20 SHA512 fb434104aaf485f78becd99e075fa11d58e59b5e2ee5dfc592b21aec6906f01951bce20181fcb1dacb44ea1d390b4241f1935b4b978474292409c6cf1b6bc849 diff --git a/games-simulation/simutrans/files/simutrans-124.1-fix-miniupnpc-api.patch b/games-simulation/simutrans/files/simutrans-124.1-fix-miniupnpc-api.patch new file mode 100644 index 000000000000..4ea1a7c51298 --- /dev/null +++ b/games-simulation/simutrans/files/simutrans-124.1-fix-miniupnpc-api.patch @@ -0,0 +1,42 @@ +# adapted from <https://github.com/simutrans/simutrans/commit/089b83b> + +From 089b83b03acfb2c1db9f2d22cc10e94ff8ed63be Mon Sep 17 00:00:00 2001 +From: prissi <prissi@8aca7d54-2c30-db11-9de9-000461428c89> +Date: Mon, 3 Jun 2024 03:31:47 +0000 +Subject: [PATCH] Back to nightly and fix the API for miniupnpc + +git-svn-id: svn://tron.homeunix.org/simutrans/simutrans/trunk@11273 8aca7d54-2c30-db11-9de9-000461428c89 +--- + +diff --git a/src/simutrans/network/network.cc b/src/simutrans/network/network.cc +index 5acf10e5c..52669ad9d 100644 +--- a/src/simutrans/network/network.cc ++++ b/src/simutrans/network/network.cc +@@ -981,7 +981,12 @@ bool prepare_for_server( char *externalIPAddress, char *externalAltIPAddress, in + struct UPNPUrls urls; + struct IGDdatas data; + ++#if MINIUPNPC_API_VERSION <= 17 + UPNP_GetValidIGD( devlist, &urls, &data, lanaddr, sizeof(lanaddr) ); ++#else ++ char wanaddr[64] = "uset"; ++ UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr), wanaddr, sizeof(lanaddr)); ++#endif + // we must know our IP address first + if( UPNP_GetExternalIPAddress(urls.controlURL, data.first.servicetype, externalIPAddress) == UPNPCOMMAND_SUCCESS ) { + // this is our ID (at least the routes tells us this) +@@ -1040,7 +1045,13 @@ void remove_port_forwarding( int port ) + struct UPNPUrls urls; + struct IGDdatas data; + +- UPNP_GetValidIGD( devlist, &urls, &data, lanaddr, sizeof(lanaddr) ); ++#if MINIUPNPC_API_VERSION <= 17 ++ UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr)); ++#else ++ char wanaddr[64] = "uset"; ++ UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr), wanaddr, sizeof(lanaddr)); ++#endif ++ + // we must know our IP address first + if( UPNP_GetExternalIPAddress(urls.controlURL, data.first.servicetype, externalIPAddress) == UPNPCOMMAND_SUCCESS ) { + // this is our ID (at least the routes tells us this) diff --git a/games-simulation/simutrans/simutrans-124.1.ebuild b/games-simulation/simutrans/simutrans-124.1.ebuild new file mode 100644 index 000000000000..60803bf4b9a5 --- /dev/null +++ b/games-simulation/simutrans/simutrans-124.1.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools desktop flag-o-matic toolchain-funcs xdg + +MY_PV=${PV//./-} +MY_PAK_64="simupak64-${MY_PV}.zip" +# Required for network games, published in release announcement on the forums +MY_SVN_REVISION="11164" + +DESCRIPTION="A free Transport Tycoon clone" +HOMEPAGE="https://www.simutrans.com/" +SRC_URI=" + https://downloads.sourceforge.net/simutrans/simutrans-src-${MY_PV}.zip + !minimal? ( https://downloads.sourceforge.net/simutrans/${MY_PAK_64} -> simutrans_${MY_PAK_64} ) + https://tastytea.de/files/gentoo/simutrans_language_pack-Base+texts-${PV}.zip +" +S="${WORKDIR}" + +# NOTE: get the latest language pack from: +# https://simutrans-germany.com/translator/data/tab/language_pack-Base+texts.zip + +LICENSE="Artistic" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="minimal +midi fontconfig upnp zstd" + +DEPEND=" + app-arch/bzip2 + media-libs/freetype + media-libs/libpng:0= + media-libs/libsdl2[sound,video] + sys-libs/zlib + midi? ( media-sound/fluidsynth:=[sdl] ) + fontconfig? ( media-libs/fontconfig ) + upnp? ( net-libs/miniupnpc:= ) + zstd? ( app-arch/zstd ) +" +# miniupnpc restriction: bug #935134 +RDEPEND=" + ${DEPEND} + midi? ( media-sound/fluid-soundfont ) + !<games-simulation/simutrans-paksets-${PV} +" +BDEPEND=" + app-arch/unzip + virtual/pkgconfig +" +RESTRICT="test" # Opens the program and doesn't close it. + +PATCHES=( + "${FILESDIR}"/${PN}-124.0-disable-svn-check.patch + "${FILESDIR}"/${P}-fix-miniupnpc-api.patch +) + +src_unpack() { + unpack "simutrans-src-${MY_PV}.zip" + cd simutrans || die "could not cd to ‘simutrans’" + use minimal || unpack "simutrans_${MY_PAK_64}" + + # Bundled text files are incomplete, bug #580948 + cd text || die "could not cd to ‘simutrans/text’" + unpack "simutrans_language_pack-Base+texts-${PV}.zip" +} + +src_prepare() { + default + xdg_environment_reset + + strip-flags # bug #293927 + append-flags -fno-strict-aliasing # bug #859229 + + eautoreconf +} + +src_configure() { + default + + # NOTE: some flags need to be 0, some need to be empty to turn them off + cat > config.default <<-EOF || die + BACKEND=sdl2 + OSTYPE=linux + OPTIMISE=0 + STATIC=0 + WITH_REVISION=${MY_SVN_REVISION} + MULTI_THREAD=1 + USE_UPNP=$(usex upnp 1 '') + USE_FREETYPE=1 + USE_ZSTD=$(usex zstd 1 '') + USE_FONTCONFIG=$(usex fontconfig 1 '') + USE_FLUIDSYNTH_MIDI=$(usex midi 1 '') + VERBOSE=1 + + HOSTCC = $(tc-getCC) + HOSTCXX = $(tc-getCXX) + EOF +} + +src_install() { + newbin build/default/sim ${PN} + insinto usr/share/${PN} + doins -r simutrans/* + doicon src/simutrans/${PN}.svg + domenu src/linux/simutrans.desktop +} + +pkg_postinst() { + xdg_pkg_postinst + + elog "Since 124.0 simutrans allows you to download PakSets to your home directory," + elog "therefore games-simulation/simutrans-paksets has been deprecated." +} |