summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Ospald <hasufell@gentoo.org>2014-05-22 19:00:19 +0000
committerJulian Ospald <hasufell@gentoo.org>2014-05-22 19:00:19 +0000
commit62265a2251562678c9878ce396fc80cee3ed53b8 (patch)
tree29476c15a92ee9465b7da9f2382a3c09fd6b9a06 /games-strategy/freeciv
parentAdd depend on sys-libs/csu for crt1.o (diff)
downloadgentoo-2-62265a2251562678c9878ce396fc80cee3ed53b8.tar.gz
gentoo-2-62265a2251562678c9878ce396fc80cee3ed53b8.tar.bz2
gentoo-2-62265a2251562678c9878ce396fc80cee3ed53b8.zip
version bump wrt #487012
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key BDEED020)
Diffstat (limited to 'games-strategy/freeciv')
-rw-r--r--games-strategy/freeciv/ChangeLog8
-rw-r--r--games-strategy/freeciv/freeciv-2.4.2.ebuild184
-rw-r--r--games-strategy/freeciv/metadata.xml22
3 files changed, 207 insertions, 7 deletions
diff --git a/games-strategy/freeciv/ChangeLog b/games-strategy/freeciv/ChangeLog
index d79f0b60f0c6..559638c15d0a 100644
--- a/games-strategy/freeciv/ChangeLog
+++ b/games-strategy/freeciv/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for games-strategy/freeciv
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-strategy/freeciv/ChangeLog,v 1.148 2014/05/15 17:03:17 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-strategy/freeciv/ChangeLog,v 1.149 2014/05/22 19:00:19 hasufell Exp $
+
+*freeciv-2.4.2 (22 May 2014)
+
+ 22 May 2014; Julian Ospald <hasufell@gentoo.org> +freeciv-2.4.2.ebuild,
+ metadata.xml:
+ version bump wrt #487012
15 May 2014; Ulrich Müller <ulm@gentoo.org> freeciv-2.3.4.ebuild:
Fix USE dependency on media-libs/libsdl, "audio" USE flag was renamed to
diff --git a/games-strategy/freeciv/freeciv-2.4.2.ebuild b/games-strategy/freeciv/freeciv-2.4.2.ebuild
new file mode 100644
index 000000000000..b5c35166bd6a
--- /dev/null
+++ b/games-strategy/freeciv/freeciv-2.4.2.ebuild
@@ -0,0 +1,184 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-strategy/freeciv/freeciv-2.4.2.ebuild,v 1.1 2014/05/22 19:00:19 hasufell Exp $
+
+# FIXME: gtk3 support breaks ggz support
+
+EAPI=5
+inherit eutils gnome2-utils games-ggz games
+
+DESCRIPTION="multiplayer strategy game (Civilization Clone)"
+HOMEPAGE="http://www.freeciv.org/"
+SRC_URI="mirror://sourceforge/freeciv/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="auth aimodules dedicated ggz +gtk ipv6 mapimg modpack mysql nls postgres qt4 readline sdl +server +sound sqlite"
+
+RDEPEND="app-arch/bzip2
+ app-arch/xz-utils
+ dev-lang/lua
+ net-misc/curl
+ sys-libs/zlib
+ auth? (
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql-base )
+ sqlite? ( dev-db/sqlite:3 )
+ !mysql? ( !postgres? ( !sqlite? ( virtual/mysql ) ) )
+ )
+ readline? ( sys-libs/readline )
+ dedicated? ( aimodules? ( sys-devel/libtool:2 ) )
+ !dedicated? (
+ media-libs/libpng:0
+ ggz? ( games-board/ggz-gtk-client )
+ gtk? ( x11-libs/gtk+:2 )
+ mapimg? ( media-gfx/imagemagick )
+ modpack? ( x11-libs/gtk+:2 )
+ nls? ( virtual/libintl )
+ qt4? (
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ )
+ sdl? (
+ media-libs/libsdl[video]
+ media-libs/sdl-image[png]
+ media-libs/freetype:2
+ )
+ server? ( aimodules? ( sys-devel/libtool:2 ) )
+ sound? (
+ media-libs/libsdl[sound]
+ media-libs/sdl-mixer[vorbis]
+ )
+ !sdl? ( !gtk? ( !qt4? ( x11-libs/gtk+:2 ) ) )
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ !dedicated? (
+ x11-proto/xextproto
+ nls? ( sys-devel/gettext )
+ )"
+
+pkg_setup() {
+ if use !dedicated && use !server ; then
+ ewarn "Disabling server USE flag will make it impossible"
+ ewarn "to start local games, but you will still be able to"
+ ewarn "join multiplayer games."
+ fi
+ games_pkg_setup
+}
+
+src_prepare() {
+ # install the .desktop in /usr/share/applications
+ # install the icons in /usr/share/pixmaps
+ sed -i \
+ -e 's:^.*\(desktopfiledir = \).*:\1/usr/share/applications:' \
+ -e 's:^\(icon[0-9]*dir = \)$(prefix)\(.*\):\1/usr\2:' \
+ -e 's:^\(icon[0-9]*dir = \)$(datadir)\(.*\):\1/usr/share\2:' \
+ client/Makefile.in \
+ server/Makefile.in \
+ modinst/Makefile.in \
+ data/Makefile.in \
+ data/icons/Makefile.in \
+ || die
+}
+
+src_configure() {
+ local myclient myopts mydatabase
+
+ if use auth ; then
+ if use !mysql && use !postgres && use !sqlite ; then
+ einfo "No database backend chosen, defaulting"
+ einfo "to mysql!"
+ mydatabase=mysql
+ else
+ use mysql && mydatabase="${mydatabase} mysql"
+ use postgres && mydatabase="${mydatabase} postgres"
+ use sqlite && mydatabase="${mydatabase} sqlite3"
+ fi
+ else
+ mydatabase=no
+ fi
+
+ if use dedicated ; then
+ myclient="no"
+ myopts="--enable-server"
+ else
+ if use !sdl && use !gtk && use !qt4 ; then
+ einfo "No client backend given, defaulting to"
+ einfo "gtk2 client!"
+ myclient="gtk2"
+ else
+ use sdl && myclient="${myclient} sdl"
+ use gtk && myclient="${myclient} gtk2"
+ use qt4 && myclient="${myclient} qt"
+ fi
+ myopts="$(use_enable server) $(use_with ggz ggz-client)"
+ fi
+
+ # disabling shared libs will break aimodules USE flag
+ egamesconf \
+ --localedir=/usr/share/locale \
+ $(use_enable ipv6) \
+ $(use_enable mapimg) \
+ --enable-aimodules="$(usex aimodules "yes" "no")" \
+ --enable-shared \
+ --enable-fcdb="${mydatabase}" \
+ --with-ggzconfig=/usr/bin \
+ --enable-noregistry="${GGZ_MODDIR}" \
+ $(use_enable nls) \
+ $(use_with readline) \
+ $(use_enable sound sdl-mixer) \
+ --enable-fcmp="$(usex modpack "gtk2" "no")" \
+ --enable-sys-lua \
+ ${myopts} \
+ --enable-client="${myclient}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ if use dedicated ; then
+ rm -rf "${D}/usr/share/pixmaps"
+ rm -f "${D}"/usr/share/man/man6/freeciv-{client,gtk2,gtk3,modpack,qt,sdl,xaw}*
+ else
+ if use server ; then
+ # Create and install the html manual. It can't be done for dedicated
+ # servers, because the 'freeciv-manual' tool is then not built. Also
+ # delete freeciv-manual from the GAMES_BINDIR, because it's 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/freeciv-manual || die
+ dohtml manual*.html
+ fi
+ if use sdl ; then
+ make_desktop_entry freeciv-sdl "Freeciv (SDL)" freeciv-client
+ else
+ rm -f "${D}"/usr/share/man/man6/freeciv-sdl*
+ fi
+ rm -f "${D}"/usr/share/man/man6/freeciv-xaw*
+ fi
+ find "${D}" -name "freeciv-manual*" -delete
+
+ dodoc ChangeLog NEWS doc/{BUGS,CodingStyle,HACKING,HOWTOPLAY,README*,TODO}
+ rm -f "${D}$(games_get_libdir)"/*.a
+ prune_libtool_files --all
+
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ games-ggz_update_modules
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ games-ggz_update_modules
+ gnome2_icon_cache_update
+}
diff --git a/games-strategy/freeciv/metadata.xml b/games-strategy/freeciv/metadata.xml
index 8bd84f44148b..c8a038f61f0d 100644
--- a/games-strategy/freeciv/metadata.xml
+++ b/games-strategy/freeciv/metadata.xml
@@ -1,10 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>games</herd>
- <use>
- <flag name="auth">Add authentication capability</flag>
- <flag name="ggz">Add support for GGZ Gaming Zone</flag>
- <flag name="sound">Add support for sound provided by <pkg>media-libs/sdl-mixer</pkg></flag>
- </use>
+ <herd>games</herd>
+ <use>
+ <flag name="aimodules">Support for dynamically loadable AI
+ modules (server-side)</flag>
+ <flag name="auth">Add authentication capability via
+ mysql, postgres or sqlite3</flag>
+ <flag name="ggz">Add support for GGZ Gaming Zone</flag>
+ <flag name="mapimg">Additional mag image toolkit
+ via <pkg>media-gfx/imagemagick</pkg></flag>
+ <flag name="modpack">Build the freeciv-modpack-program
+ to download/install mods</flag>
+ <flag name="server">Enable server support. Disabling this
+ will also make it impossible to start local games.</flag>
+ <flag name="sound">Add support for sound provided by
+ <pkg>media-libs/sdl-mixer</pkg></flag>
+ </use>
</pkgmetadata>