diff options
Diffstat (limited to 'games-simulation/openttd')
-rw-r--r-- | games-simulation/openttd/Manifest | 2 | ||||
-rw-r--r-- | games-simulation/openttd/openttd-1.10.3.ebuild | 183 |
2 files changed, 185 insertions, 0 deletions
diff --git a/games-simulation/openttd/Manifest b/games-simulation/openttd/Manifest index 76fbaba0e8fb..2950d98bca34 100644 --- a/games-simulation/openttd/Manifest +++ b/games-simulation/openttd/Manifest @@ -2,6 +2,8 @@ AUX openttd-1.9.0-cflags.patch 1418 BLAKE2B 4c279bca0360d202d183488f61a19a5abc76 AUX openttd-1.9.0-dont_compress_manpages.patch 1137 BLAKE2B aa03bf141f1dac450b90ad9b54f4022dc981e041f40cd5ad9b7b522910788fcf30c85ac8ee3ba480c76df67f11b8258de7fe785259796b67bebc1a49ce1ed6e3 SHA512 0985a5826dddfb9a03bfc686de5ae2a36362d635865fde9ec2ee340672556d82517db94197d7de04630ba7558bee5ad4543debafd46e5dfd2bbec2eaa9354a18 AUX openttd.initd-r1 306 BLAKE2B d36e2f405a1b8808c708edd0c66e23d9976c2f5ef0fc2af3430bb8ba287c237dffe3d11cde6428b8ab668886ac4ff5eb4bc4fe5b39f205da4bf3d7773f66f7ef SHA512 bd04f9d812d5d68eebd953e9a667e5138d8e440139eb9c07f8da089495774b7d45e3b23bfb2af38ed053b333d4ead5f4be5c5fa877ad9f9bb0effee5c4a499dc DIST openttd-1.10.2-source.tar.xz 6766904 BLAKE2B 959d3ba98022d3fd3ddb15844bc2d6f5eb54b470e2dfebdcd784428c1773585c116dd739bd6718879ac6d6ac6942737cd51b71bc77d6d82991fdcea1bc8aec1a SHA512 03de85449a458c76c07d8a28c34f72bc95ab0652c666e5925da43746cdd4e95b0d66360b6e214d1df33f11b5346da2e3b9ca6832ac6628c7d6e5e0a791881683 +DIST openttd-1.10.3-source.tar.xz 6815924 BLAKE2B f700304e723fe5c3fa9781432a387e061595bbc8de42f565ad57ac265d9e4bc14cbc659a3f6551019bfb31b8b56b180c272c6753a12b4cd2e13016a98dfe1679 SHA512 d1cd535e8e49f0ac147704341287af1b16bde6725fd9152dd36dcb780559b400da8bb31c4e8eb665a0d11e9b1f5bf8a96be0f97f7a85bd967eec534fdd3dd0d4 EBUILD openttd-1.10.2.ebuild 4994 BLAKE2B 58e971daf9226546e8da2309f4f7cb9022fe0a9762d21754a0a9be1b17b539390314d89d2716473c7578003998f5aaa7c962ff663d480dfbb7de2ead8487efb9 SHA512 5889dcf77f942f7b6d9e6450756d29d5c7a616e1e97d0ea6439828bd84a106cba72a2ce6a26b21116d1a70523be9db72156cfe0c95719869da6904ae0d833eaa +EBUILD openttd-1.10.3.ebuild 4994 BLAKE2B 58e971daf9226546e8da2309f4f7cb9022fe0a9762d21754a0a9be1b17b539390314d89d2716473c7578003998f5aaa7c962ff663d480dfbb7de2ead8487efb9 SHA512 5889dcf77f942f7b6d9e6450756d29d5c7a616e1e97d0ea6439828bd84a106cba72a2ce6a26b21116d1a70523be9db72156cfe0c95719869da6904ae0d833eaa EBUILD openttd-9999.ebuild 4994 BLAKE2B 58e971daf9226546e8da2309f4f7cb9022fe0a9762d21754a0a9be1b17b539390314d89d2716473c7578003998f5aaa7c962ff663d480dfbb7de2ead8487efb9 SHA512 5889dcf77f942f7b6d9e6450756d29d5c7a616e1e97d0ea6439828bd84a106cba72a2ce6a26b21116d1a70523be9db72156cfe0c95719869da6904ae0d833eaa MISC metadata.xml 752 BLAKE2B 85476f4dbf68d94a5d95e35cff935edfe35caee4bd2a253c7bad747b0915b80f0f7009bf78e419417a05345210bed17dff8f82ce603480c96781323d7d5a89fd SHA512 ddb1fbbe98d5e0bc1e23385b38502603819b89bd1d9285b0193a55efe2263b8ab6e045c7befdc908303eea27de8c9148dbcc8e7b6c035b267f5c8ff0f16b4b56 diff --git a/games-simulation/openttd/openttd-1.10.3.ebuild b/games-simulation/openttd/openttd-1.10.3.ebuild new file mode 100644 index 000000000000..acf83d2f9551 --- /dev/null +++ b/games-simulation/openttd/openttd-1.10.3.ebuild @@ -0,0 +1,183 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs xdg + +MY_PV="${PV/_rc/-RC}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="OpenTTD is a clone of Transport Tycoon Deluxe" +HOMEPAGE="https://www.openttd.org/" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/OpenTTD/OpenTTD.git" +else + SRC_URI="https://proxy.binaries.openttd.org/openttd-releases/${MY_PV}/${MY_P}-source.tar.xz" + KEYWORDS="~amd64 ~ppc64 ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="aplaymidi debug dedicated iconv icu +lzma lzo +openmedia +png cpu_flags_x86_sse +timidity +truetype zlib" +RESTRICT="test" # needs a graphics set in order to test + +RDEPEND="!dedicated? ( + media-libs/libsdl2[sound,video] + icu? ( + dev-libs/icu-layoutex + dev-libs/icu-le-hb + >=dev-libs/icu-58.1:= + ) + truetype? ( + media-libs/fontconfig + media-libs/freetype:2 + sys-libs/zlib:= + ) + ) + lzma? ( app-arch/xz-utils ) + lzo? ( dev-libs/lzo:2 ) + iconv? ( virtual/libiconv ) + png? ( + media-libs/libpng:0 + sys-libs/zlib:= + ) + zlib? ( sys-libs/zlib:= )" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig" +PDEPEND=" + !dedicated? ( + openmedia? ( + games-misc/openmsx + games-misc/opensfx + ) + aplaymidi? ( media-sound/alsa-utils ) + !aplaymidi? ( timidity? ( media-sound/timidity++ ) ) + ) + openmedia? ( >=games-misc/opengfx-0.4.7 )" + +PATCHES=( + "${FILESDIR}"/${PN}-1.9.0-cflags.patch + "${FILESDIR}"/${PN}-1.9.0-dont_compress_manpages.patch +) + +src_configure() { + local myopts=( + --binary-dir="bin" + --disable-strip + --doc-dir="share/doc/${PF}" + --install-dir="${D}" + --menu-group="Game;Simulation;" + --prefix-dir="${EPREFIX}/usr" + $(use_with cpu_flags_x86_sse sse) + $(use_with iconv) + $(use_with lzma) + $(use_with lzo liblzo2) + $(use_with png) + $(usex debug '--enable-debug=3' '') + # there is an allegro interface available as well as sdl, but + # the configure for it looks broken so the sdl interface is + # always built instead. + --without-allegro + + --without-fluidsynth + ) + + if use dedicated ; then + myopts+=( --enable-dedicated ) + else + myopts+=( + $(usex aplaymidi '--with-midi=/usr/bin/aplaymidi' '') + $(use_with truetype freetype) + $(use_with icu) + --with-sdl + ) + fi + if use png || { use !dedicated && use truetype; } || use zlib ; then + myopts+=( --with-zlib ) + else + myopts+=( --without-zlib ) + fi + + # configure is a hand-written bash-script, so econf will not work. + # It's all built as C++, upstream uses CFLAGS internally. + CC=$(tc-getCC) CXX=$(tc-getCXX) CFLAGS="" ./configure ${myopts[@]} || die +} + +src_compile() { + emake VERBOSE=1 +} + +src_install() { + default + if use dedicated ; then + newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN} + rm -rf "${ED}"/usr/share/{applications,icons,pixmaps} || die + fi + rm -f "${ED}"/usr/share/doc/${PF}/COPYING || die +} + +pkg_preinst() { + xdg_pkg_preinst +} + +pkg_postinst() { + xdg_pkg_postinst + + if ! use lzo ; then + elog "OpenTTD was built without 'lzo' in USE. While 'lzo' is not" + elog "required, disabling it does mean that loading old savegames" + elog "or scenarios from ancient versions (~0.2) will fail." + elog + fi + + if use dedicated ; then + ewarn "Warning: The init script will kill all running openttd" + ewarn "processes when triggered, including any running client sessions!" + else + if use aplaymidi ; then + elog "You have emerged with 'aplaymidi' for playing MIDI." + elog "This option is for those with a hardware midi device," + elog "or who have set up ALSA to handle midi ports." + elog "You must set the environment variable ALSA_OUTPUT_PORTS." + elog "Available ports can be listed by using 'aplaymidi -l'." + else + if ! use timidity ; then + elog "OpenTTD was built with neither 'aplaymidi' nor 'timidity'" + elog "in USE. Music may or may not work in-game. If you happen" + elog "to have timidity++ installed, music will work so long" + elog "as it remains installed, but OpenTTD will not depend on it." + fi + fi + if ! use openmedia ; then + elog + elog "OpenTTD was compiled without the 'openmedia' USE flag." + elog + elog "In order to play, you must at least install:" + elog "games-misc/opengfx, and games-misc/opensfx, or copy the " + elog "following 6 files from a version of Transport Tycoon Deluxe" + elog "(windows or DOS) to ~/.openttd/data/ or" + elog "${GAMES_DATADIR}/${PN}/data/." + elog + elog "From the WINDOWS version you need: " + elog "sample.cat trg1r.grf trgcr.grf trghr.grf trgir.grf trgtr.grf" + elog "OR from the DOS version you need: " + elog "SAMPLE.CAT TRG1.GRF TRGC.GRF TRGH.GRF TRGI.GRF TRGT.GRF" + elog + elog "File names are case sensitive, but should work either with" + elog "all upper or all lower case names" + elog + elog "In addition, in-game music will be unavailable: for music," + elog "install games-misc/openmsx, or use the in-game download" + elog "functionality to get a music set" + elog + fi + fi +} + +pkg_postrm() { + xdg_pkg_postrm +} |