games-simulation/openttd: Bump to version 1.9.3
authorLars Wendler <polynomial-c@gentoo.org>
Mon, 14 Oct 2019 12:02:14 +0000 (14:02 +0200)
committerLars Wendler <polynomial-c@gentoo.org>
Mon, 14 Oct 2019 12:10:08 +0000 (14:10 +0200)
Package-Manager: Portage-2.3.76, Repoman-2.3.17
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
games-simulation/openttd/Manifest
games-simulation/openttd/openttd-1.9.3.ebuild [new file with mode: 0644]

index 574fbb4069dc94f35f09fc8a0a14b7d466de5184..6ef1d4d4e371d94e8104fcec18ac42426caea41e 100644 (file)
@@ -1,2 +1,3 @@
 DIST openttd-1.9.1-source.tar.xz 6647548 BLAKE2B fd7d03221bea49345e2163ff700e62a12682f706c1dab3fc741136219b80094bf945dc0cefcd807a643d141841a307141bb760d4b06bf75fa18129c557b149c3 SHA512 44d907299a14fd09ebff980f7c212bbdbd5def880bc56bfe106c3efa8cb32472bbcafdbb145d3f4340a3bc96179418f78fe2ddc62dd067b464eca73313b477c1
 DIST openttd-1.9.2-source.tar.xz 6666860 BLAKE2B a28862b00f3ec5cd8f015445022746e08a298046de05a592a76f72ff72d76aae4584d48cfe021d3fe6920555b4848986b3e25b23998cac830da572c21f06e595 SHA512 a84a219c049147e9566967f96a01c84dde587e38da37b34ef756da99a2d14f1d418492030098f63c4ac60cb0db553f474aaf3b8a00c8abfd98f66adc14f523e4
+DIST openttd-1.9.3-source.tar.xz 6659508 BLAKE2B 653ddd14d257d25f6c51138765f310cb8166575375fb95227a9a2c06cd1b526d8af403cb736d17b98c49add26f668ab5c6f8ca7b5fcda5fea9093726b2fd4a21 SHA512 e2208f730cf26c2df9b1950e885e20471060217dd47f2483db3f1cc86b40658d71208f27caab38a9fa513cfddb33c791a0972336dfa902a6d110ef246d936a34
diff --git a/games-simulation/openttd/openttd-1.9.3.ebuild b/games-simulation/openttd/openttd-1.9.3.ebuild
new file mode 100644 (file)
index 0000000..49368f0
--- /dev/null
@@ -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
+}