summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-simulation/openttd/openttd-1.0.1.ebuild')
-rw-r--r--games-simulation/openttd/openttd-1.0.1.ebuild155
1 files changed, 155 insertions, 0 deletions
diff --git a/games-simulation/openttd/openttd-1.0.1.ebuild b/games-simulation/openttd/openttd-1.0.1.ebuild
new file mode 100644
index 000000000000..7d5eae8178a8
--- /dev/null
+++ b/games-simulation/openttd/openttd-1.0.1.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-simulation/openttd/openttd-1.0.1.ebuild,v 1.1 2010/05/01 04:26:33 mr_bones_ Exp $
+
+EAPI=2
+inherit eutils games
+
+MY_PV=${PV/_rc/-RC}
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="OpenTTD is a clone of Transport Tycoon Deluxe"
+HOMEPAGE="http://www.openttd.org/"
+SRC_URI="http://binaries.openttd.org/releases/${MY_PV}/${MY_P}-source.tar.bz2"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="alsa debug dedicated iconv icu lzo +openmedia +png +truetype zlib"
+RESTRICT="test"
+
+DEPEND="
+ !dedicated? (
+ media-libs/libsdl[audio,X,video]
+ icu? ( dev-libs/icu )
+ truetype? (
+ media-libs/fontconfig
+ media-libs/freetype:2
+ sys-libs/zlib
+ )
+ )
+ lzo? ( dev-libs/lzo:2 )
+ iconv? ( virtual/libiconv )
+ png? ( media-libs/libpng )
+ zlib? ( sys-libs/zlib )"
+RDEPEND="${DEPEND}
+ !dedicated? (
+ alsa? ( media-sound/alsa-utils )
+ )"
+PDEPEND="
+ openmedia? (
+ games-misc/opengfx
+ games-misc/opensfx
+ games-misc/openmsx
+ )"
+
+src_configure() {
+ # 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.
+ local myopts="${myopts} --without-allegro"
+
+ use debug && myopts="${myopts} --enable-debug=3"
+
+ if use dedicated ; then
+ myopts="${myopts} --enable-dedicated"
+ else
+ use alsa && myopts="${myopts} --with-midi=/usr/bin/aplaymidi"
+ myopts="${myopts}
+ $(use_with truetype freetype)
+ $(use_with icu)
+ --with-sdl"
+ fi
+ if use png || { use !dedicated && use truetype; } || use zlib ; then
+ myopts="${myopts} --with-zlib"
+ else
+ myopts="${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 \
+ --disable-strip \
+ --prefix-dir="${EPREFIX}" \
+ --binary-dir="${GAMES_BINDIR}" \
+ --data-dir="${GAMES_DATADIR}/${PN}" \
+ --install-dir="${D}" \
+ --icon-dir=/usr/share/pixmaps \
+ --menu-dir=/usr/share/applications \
+ --icon-theme-dir=/usr/share/icons/hicolor \
+ --man-dir=/usr/share/man/man6 \
+ --doc-dir=/usr/share/doc/${PF} \
+ --menu-group="Game;Simulation;" \
+ ${myopts} \
+ $(use_with iconv) \
+ $(use_with png) \
+ $(use_with lzo liblzo2) \
+ || die "configure failed"
+}
+
+src_compile() {
+ emake VERBOSE=1 || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ if use dedicated ; then
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ rm -rf "${D}"/usr/share/{applications,icons,pixmaps}
+ fi
+ rm -f "${D}"/usr/share/doc/${PF}/COPYING
+ prepalldocs
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+
+ if ! use openmedia ; then
+ elog
+ elog "OpenTTD was compiled without openmedia USE flags."
+ elog
+ elog "In order to play, you must either install games-misc/opengfx"
+ elog "as well as games-misc/opensfx or copy the following 6 files"
+ elog "from a version of Transport Tycoon Deluxe (windows or DOS)"
+ elog "to ~/.openttd/data/ or ${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 so make sure they are "
+ elog "correct for whichever version you have."
+ elog
+ fi
+
+ if ! use lzo ; then
+ elog "OpenTTD was compiled without lzo2 support."
+ elog "While lzo2 is not required, disabling it does mean that"
+ elog "loading old savegames/scenarios from ancient versions (~0.2)"
+ elog "will be disabled"
+ elog
+ fi
+
+ if use dedicated ; then
+ ewarn "Warning: The init script will kill all running openttd"
+ ewarn "processes when run, including any running client sessions!"
+ else
+ if use alsa ; then
+ elog "You have emerged with 'aplaymidi' for playing MIDI."
+ elog "You have to set the environment variable ALSA_OUTPUT_PORTS."
+ elog "Available ports can be listed by using 'aplaymidi -l'."
+ if ! use openmedia ; then
+ elog "You have disabled the openmedia use flag, in-game music"
+ elog "will be unavailable unless you install games-misc/openmsx"
+ elog "or install a music set in ~/.openttd/gm or use the in-game"
+ elog "download functionality to get a music set"
+ fi
+ else
+ elog "alsa not in USE so music will not be played during the game."
+
+ fi
+ fi
+}