summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-simulation')
-rw-r--r--games-simulation/openttd/Manifest1
-rw-r--r--games-simulation/openttd/openttd-1.9.1.ebuild185
2 files changed, 186 insertions, 0 deletions
diff --git a/games-simulation/openttd/Manifest b/games-simulation/openttd/Manifest
index 8bae6409e8bc..1627ef5ec007 100644
--- a/games-simulation/openttd/Manifest
+++ b/games-simulation/openttd/Manifest
@@ -1,2 +1,3 @@
DIST openttd-1.8.0-source.tar.xz 6521016 BLAKE2B b3a608fd21d21f861af6eba235c028a59f071ab4698cfdcdd499b6ea7ece853679b064935368d95330414a24ac90aaa3c426afc12a2e135d5b0a48170879b807 SHA512 a2d61b3c94a550c8f3a581127df8c3459b1ddff5ba924942c468cbc70e88e0bf4405cecb68a91243b544ead64f215aa8d489a07b38dce507ae7d59e8ec155d7a
DIST openttd-1.9.0-source.tar.xz 6575956 BLAKE2B 31d663b2f8aa67d9e3eb7899795468e8641671bb977957fdc6e55c8dedf3f2a00757de67ed034bf6180cc6091006a1b0bfba8af22d09744eb839a54ca662cbd9 SHA512 fcc044ea93810c99e9b3e80676676272c6f0efb43faa7ef4bfa7184aea793680df22504a1831837cc5ae8481e898d0636b992d1ddb8560cd4848463343adba2d
+DIST openttd-1.9.1-source.tar.xz 6647548 BLAKE2B fd7d03221bea49345e2163ff700e62a12682f706c1dab3fc741136219b80094bf945dc0cefcd807a643d141841a307141bb760d4b06bf75fa18129c557b149c3 SHA512 44d907299a14fd09ebff980f7c212bbdbd5def880bc56bfe106c3efa8cb32472bbcafdbb145d3f4340a3bc96179418f78fe2ddc62dd067b464eca73313b477c1
diff --git a/games-simulation/openttd/openttd-1.9.1.ebuild b/games-simulation/openttd/openttd-1.9.1.ebuild
new file mode 100644
index 000000000000..49368f0e59a7
--- /dev/null
+++ b/games-simulation/openttd/openttd-1.9.1.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit xdg
+
+MY_PV="${PV/_rc/-RC}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="OpenTTD is a clone of Transport Tycoon Deluxe"
+HOMEPAGE="http://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 lzo +openmedia +png cpu_flags_x86_sse +timidity +truetype zlib"
+RESTRICT="test" # needs a graphics set in order to test
+
+RDEPEND="!dedicated? (
+ media-libs/libsdl[sound,X,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:=
+ )
+ )
+ 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 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
+
+ # libtimidity not needed except for some embedded platform
+ # nevertheless, it will be automagically linked if it is
+ # installed. Hence, we disable it.
+ --without-libtimidity
+
+ --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.
+ 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}
+ fi
+ rm -f "${ED}"/usr/share/doc/${PF}/COPYING
+}
+
+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
+}