diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /games-simulation/openttd | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'games-simulation/openttd')
-rw-r--r-- | games-simulation/openttd/Manifest | 1 | ||||
-rw-r--r-- | games-simulation/openttd/files/openttd-1.5.0-cflags.patch | 42 | ||||
-rwxr-xr-x | games-simulation/openttd/files/openttd.initd | 20 | ||||
-rw-r--r-- | games-simulation/openttd/metadata.xml | 12 | ||||
-rw-r--r-- | games-simulation/openttd/openttd-1.5.0.ebuild | 177 |
5 files changed, 252 insertions, 0 deletions
diff --git a/games-simulation/openttd/Manifest b/games-simulation/openttd/Manifest new file mode 100644 index 000000000000..056f59ab067e --- /dev/null +++ b/games-simulation/openttd/Manifest @@ -0,0 +1 @@ +DIST openttd-1.5.0-source.tar.gz 10018865 SHA256 4c357205a63a475001a13e4ade59a73635e2f0c480ad097f4d7f03d2ae290ee0 SHA512 c2459165bd8f957d56d4171361237e6de42221f7b8c02f98503e2225a81fd496f10da9d9c60335edb981f86c4c4ce45fafc9edf43ea38a94b84f67136a17a165 WHIRLPOOL 88a15852d1ae01f7a03ea1bcc929bcdf450265a81462aa5316d2e16e86b79167d04503a83bc231eb411d159b70073c650db6e5604adbf07eccda43a193af3e20 diff --git a/games-simulation/openttd/files/openttd-1.5.0-cflags.patch b/games-simulation/openttd/files/openttd-1.5.0-cflags.patch new file mode 100644 index 000000000000..bb7f768b3798 --- /dev/null +++ b/games-simulation/openttd/files/openttd-1.5.0-cflags.patch @@ -0,0 +1,42 @@ +--- openttd-1.4.4/config.lib ++++ openttd-1.4.4/config.lib +@@ -1450,12 +1450,6 @@ + CFLAGS="-I/gg/os-include -noixemul -fstrict-aliasing -fexpensive-optimizations -mcpu=604 -fno-inline -mstring -mmultiple $CFLAGS" + LDFLAGS="$LDFLAGS -noixemul" + fi +- +- if [ "$enable_profiling" = "0" ]; then +- # -fomit-frame-pointer and -pg do not go well together (gcc errors they are incompatible) +- CFLAGS="-fomit-frame-pointer $CFLAGS" +- fi +- CFLAGS="-O2 $CFLAGS" + else + OBJS_SUBDIR="debug" + +@@ -1466,14 +1460,6 @@ + CFLAGS="$CFLAGS -G0" + fi + fi +- if [ $enable_debug -ge 2 ]; then +- CFLAGS="$CFLAGS -fno-inline" +- fi +- if [ $enable_debug -ge 3 ]; then +- CFLAGS="$CFLAGS -O0" +- else +- CFLAGS="$CFLAGS -O2" +- fi + fi + + if [ $enable_debug -le 2 ]; then +@@ -1498,11 +1484,6 @@ + CFLAGS="$CFLAGS -fno-expensive-optimizations" + fi + +- if [ "$enable_profiling" != "0" ]; then +- CFLAGS="$CFLAGS -pg" +- LDFLAGS="$LDFLAGS -pg" +- fi +- + if [ "$with_threads" = "0" ]; then + CFLAGS="$CFLAGS -DNO_THREADS" + fi diff --git a/games-simulation/openttd/files/openttd.initd b/games-simulation/openttd/files/openttd.initd new file mode 100755 index 000000000000..629f1857c259 --- /dev/null +++ b/games-simulation/openttd/files/openttd.initd @@ -0,0 +1,20 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later +# $Id$ + +depend() { + need net +} + +start() { + ebegin "Starting OpenTTD dedicated server" + start-stop-daemon --start -q --exec /usr/games/bin/openttd -- -D -f > /dev/null + eend $? +} + +stop() { + ebegin "Stopping OpenTTD dedicated server" + start-stop-daemon --stop -q -n openttd + eend $? +} diff --git a/games-simulation/openttd/metadata.xml b/games-simulation/openttd/metadata.xml new file mode 100644 index 000000000000..031679386643 --- /dev/null +++ b/games-simulation/openttd/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>games</herd> + <use> + <flag name='aplaymidi'>Enables midi music in game, using aplaymidi as an external player</flag> + + <flag name='openmedia'>Enables the free open media sets: OpenGFX, OpenSFX, OpenMSX, removing the requirement for proprietary TTD assets to play OpenTTD.</flag> + <flag name='lzo'>Enables LZO compression for savegames. This is only needed to load extremely old savegames. (versions before 0.2)</flag> + <flag name='dedicated'>Build only the openttd server, and not the client.</flag> + </use> +</pkgmetadata> diff --git a/games-simulation/openttd/openttd-1.5.0.ebuild b/games-simulation/openttd/openttd-1.5.0.ebuild new file mode 100644 index 000000000000..cb4fe056c13c --- /dev/null +++ b/games-simulation/openttd/openttd-1.5.0.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils gnome2-utils games + +DESCRIPTION="OpenTTD is a clone of Transport Tycoon Deluxe" +HOMEPAGE="http://www.openttd.org/" +SRC_URI="http://binaries.openttd.org/releases/${PV}/${P}-source.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~ppc ~ppc64 x86" +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:= ) + truetype? ( + media-libs/fontconfig + media-libs/freetype:2 + sys-libs/zlib + ) + ) + lzo? ( dev-libs/lzo:2 ) + iconv? ( virtual/libiconv ) + png? ( media-libs/libpng:0 ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + 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 )" + +src_prepare() { + epatch "${FILESDIR}"/${P}-cflags.patch + sed -i \ + -e '/Keywords/s/$/;/' \ + media/openttd.desktop.in || die +} + +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=" --without-allegro" + + # libtimidity not needed except for some embedded platform + # nevertheless, it will be automagically linked if it is + # installed. Hence, we disable it. + myopts+=" --without-libtimidity" + + use debug && myopts+=" --enable-debug=3" + + if use dedicated ; then + myopts+=" --enable-dedicated" + else + use aplaymidi && myopts+=" --with-midi='/usr/bin/aplaymidi'" + myopts+=" + $(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 \ + --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 cpu_flags_x86_sse sse) \ + $(use_with lzo liblzo2) \ + || die +} + +src_compile() { + emake VERBOSE=1 +} + +src_install() { + default + if use dedicated ; then + newinitd "${FILESDIR}"/${PN}.initd ${PN} + rm -rf "${ED}"/usr/share/{applications,icons,pixmaps} + fi + rm -f "${ED}"/usr/share/doc/${PF}/COPYING + prepgamesdirs +} + +pkg_preinst() { + games_pkg_preinst + gnome2_icon_savelist +} + +pkg_postinst() { + gnome2_icon_cache_update + games_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() { + gnome2_icon_cache_update +} |