summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy/freeciv/files/freeciv-20050430.ebuild')
-rw-r--r--games-strategy/freeciv/files/freeciv-20050430.ebuild163
1 files changed, 163 insertions, 0 deletions
diff --git a/games-strategy/freeciv/files/freeciv-20050430.ebuild b/games-strategy/freeciv/files/freeciv-20050430.ebuild
new file mode 100644
index 0000000..4c44e02
--- /dev/null
+++ b/games-strategy/freeciv/files/freeciv-20050430.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit games
+
+MY_P=${PN}-cvs-Apr-${PV:6:2}
+S=${WORKDIR}/${MY_P}
+DESCRIPTION="multiplayer strategy game (Civilization Clone)"
+HOMEPAGE="http://www.freeciv.org/"
+SRC_URI="ftp://ftp.freeciv.org/pub/freeciv/latest/${MY_P}.tar.bz2
+ !dedicated? (
+ alsa? ( http://www.freeciv.org/ftp/contrib/sounds/sets/stdsounds2.tar.gz )
+ esd? ( http://www.freeciv.org/ftp/contrib/sounds/sets/stdsounds2.tar.gz )
+ sdl? ( http://www.freeciv.org/ftp/contrib/sounds/sets/stdsounds2.tar.gz )
+ )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~ppc ~x86"
+IUSE="Xaw3d gtk gtk2 nls readline dedicated alsa esd sdl"
+
+RDEPEND="sys-libs/zlib
+ readline? ( sys-libs/readline )
+ !dedicated? (
+ virtual/x11
+ !gtk? ( Xaw3d? ( x11-libs/Xaw3d ) )
+ gtk? (
+ gtk2? (
+ >=x11-libs/gtk+-2.0.0
+ >=dev-libs/glib-2.0.0
+ >=dev-libs/atk-1.0.3
+ >=x11-libs/pango-1.0.5
+ )
+ !gtk2? (
+ =x11-libs/gtk+-1*
+ >=dev-libs/glib-1.2.5
+ >=media-libs/imlib-1.9.2
+ )
+ )
+ alsa? (
+ >=media-libs/alsa-lib-1.0
+ >=media-libs/audiofile-0.2
+ )
+ esd? ( >=media-sound/esound-0.2 )
+ sdl? (
+ >=media-libs/sdl-mixer-1.2
+ >=media-libs/libsdl-1.2
+ )
+ )"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )
+ >=sys-apps/sed-4"
+
+
+pkg_setup() {
+ if use '!dedicated' ; then
+ if use gtk && use gtk2 ; then
+ einfo "The Freeciv Client will be built with the GTK+-2 toolkit"
+ elif use gtk ; then
+ einfo "The Freeciv Client will be built with the GTK+-1.2 toolkit"
+ elif use Xaw3d ; then
+ einfo "The Freeciv Client will be built with the Xaw3d toolkit"
+ else
+ einfo "The Freeciv Client will be built with the Xaw toolkit"
+ fi
+ if use '!esd' && use '!alsa' && use '!sdl' ; then
+ ewarn ""
+ ewarn "To enable sound support in civclient, you must enable"
+ ewarn "at least one of this USE flags: alsa, esd, sdl"
+ ewarn ""
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ # install locales in /usr/share/locale
+ sed -i 's:^\(localedir = \).*:\1/usr/share/locale:' \
+ ${S}/intl/Makefile.in ${S}/po/Makefile.in.in || die "sed failed"
+ sed -i '/^#define LOCALEDIR/s:".*":"/usr/share/locale":' \
+ ${S}/configure || die "sed failed"
+
+ # install the .desktop in /usr/share/applications
+ sed -i 's:^\(desktopfiledir = \).*:\1/usr/share/applications:' \
+ ${S}/client/Makefile.in || die "sed failed"
+
+ # remove civclient manpage if dedicated server
+ use dedicated && {
+ sed -i '/man_MANS = /s:civclient.6::' \
+ ${S}/doc/man/Makefile.in || die "sed failed"
+ }
+}
+
+src_compile() {
+ # Configure the client toolkit
+ local myclient="xaw"
+ use Xaw3d && myclient="xaw3d"
+ if use gtk ; then
+ use gtk2 \
+ && myclient="gtk-2.0" \
+ || myclient="gtk"
+ fi
+ use dedicated && myclient="no"
+
+ # Configure the sound plugins
+ local mysoundconf
+ if use dedicated ; then
+ mysoundconf="--disable-alsa --disable-esd --disable-sdl-mixer"
+ else
+ #XXX --enable-{alsa,esd,sdl-mixer} actually disable them...
+ #XXX ==> use --disable-* only, and autodetect to enable.
+ #XXX mysoundconf="${mysoundconf} $(use_enable alsa)"
+ use alsa || mysoundconf="${mysoundconf} --disable-alsa"
+ #XXX mysoundconf="${mysoundconf} $(use_enable esd)"
+ use esd || mysoundconf="${mysoundconf} --disable-esd"
+ #XXX mysoundconf="${mysoundconf} $(use_enable sdl sdl-mixer)"
+ use sdl || mysoundconf="${mysoundconf} --disable-sdl-mixer"
+ fi
+
+ egamesconf \
+ --disable-dependency-tracking \
+ --with-zlib \
+ $(use_with readline) \
+ $(use_enable nls) \
+ --enable-client=${myclient} \
+ ${mysoundconf} \
+ || die "egamesconf failed"
+
+ emake || die "emake failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ if use '!dedicated' ; then
+ # Install the app-defaults if Xaw/Xaw3d toolkit
+ if use '!gtk'; then
+ insinto /etc/X11/app-defaults
+ doins data/Freeciv || die "doins failed"
+ fi
+ # Install sounds if at least one sound plugin was built
+ if use alsa || use esd || use sdl ; then
+ cp -R ../stdsounds* ${D}${GAMES_DATADIR}/${PN} \
+ || die "failed to install sounds"
+ fi
+ # Create and install the html manual. It can't be done for dedicated
+ # servers, because the 'civmanual' tool is then not built. Also
+ # delete civmanual from the GAMES_BINDIR, because it's then useless.
+ # Note: to have it localized, it should be ran from _postinst, or
+ # something like that, but then it's a PITA to avoid orphan files...
+ ./manual/civmanual || die "civmanual failed"
+ dohtml manual*.html || die "dohtml failed"
+ rm -f ${D}/${GAMES_BINDIR}/civmanual
+ fi
+
+ dodoc ChangeLog INSTALL NEWS \
+ doc/{BUGS,CodingStyle,HACKING,HOWTOPLAY,PEOPLE,README*,TODO} \
+ || die "dodoc failed"
+
+ prepgamesdirs
+}