diff options
Diffstat (limited to 'games-strategy')
-rw-r--r-- | games-strategy/freeciv/Manifest | 1 | ||||
-rw-r--r-- | games-strategy/freeciv/freeciv-2.5.6.ebuild | 179 |
2 files changed, 180 insertions, 0 deletions
diff --git a/games-strategy/freeciv/Manifest b/games-strategy/freeciv/Manifest index b4a92416eb29..508b31aeaa23 100644 --- a/games-strategy/freeciv/Manifest +++ b/games-strategy/freeciv/Manifest @@ -1,3 +1,4 @@ DIST freeciv-2.5.3.tar.bz2 41010519 SHA256 480b0381c64bf1a9423f2507a75d76bda9bf45c3c3badd30b5bad105e75d805c SHA512 a3e1ee5f585be062ec5fc7783dfe24f4cd313bea016af47b868e01561fc3958a86ed310edd41130fc5ede6ca2547ca38198c8dbb18974db7d14defd103277b4b WHIRLPOOL c75ef1419e965003aebb396fd7245fa0a859fea2574d74cc1ef8de7bb4b3b0e47f28ee8bcf0b30c3ad1116bd374336f51bb285d66ea244e4b68e44e33ad36ec4 DIST freeciv-2.5.4.tar.bz2 40977253 SHA256 9e64ef047fd0d2f8e9aa1da01586dea7cfe63a36b15875c168ada555c2e6634b SHA512 08fb0d0e622fdb75a57edfa2de2c662fe68966e510dfc9c0219a00aa52f09ce67c43ad2df6109bdc440a39b020f4762015b04641f01327326768448acff46a92 WHIRLPOOL c07b5fedcb50257df184c4173868b1455ec42298e6fb63517fa94cd70d2216e0d9ca23e861bee9928b83bcbdcb692cf13344a5c6909f2d2ba599193bba851b83 DIST freeciv-2.5.5.tar.bz2 40828396 SHA256 5622f2142637057f7e47b1eda764c4e131222fab4d5bb42cd59fbd58ba3db1d4 SHA512 20cb71ab6d81b0ab272d1a0f8f2d639cbda3f6354a09fef3469cc35b391bf6efd947348c82c76dc632e3366ed1ee203af0e79a2378f7e5ea4206b4fede60f95e WHIRLPOOL 9ca6655f645c84d4488b6c96d06b0e7aa0187a0d29d5e90b8e6c81d544b022727af4ec7004d570e352fc7c60e95f7985f0a9ede7b480247a376e63dbca1ecac4 +DIST freeciv-2.5.6.tar.bz2 41185678 SHA256 cfadc23eec11a5a8ae74a7d3719eb126026137f0700da065367fd55cbab6999b SHA512 85f87d73e7f9a74ff4fe71962481374b2e37a98574615fb94831af0b3d8c1e5c8bbee9a9bbb0223ff455ca46ead85f050f941fb97777c015d1d760d8468cb3db WHIRLPOOL a93bcf972226b65df1cbd33816949593f27bc12aea92abd00e94eaf6659682b59bc3019897e8917eacbf3e9ed88067fd261afc4374f72c392feb07e08ac02cc1 diff --git a/games-strategy/freeciv/freeciv-2.5.6.ebuild b/games-strategy/freeciv/freeciv-2.5.6.ebuild new file mode 100644 index 000000000000..441850c67554 --- /dev/null +++ b/games-strategy/freeciv/freeciv-2.5.6.ebuild @@ -0,0 +1,179 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 +inherit eutils flag-o-matic gnome2-utils + +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 +gtk ipv6 mapimg modpack mysql nls qt5 readline sdl +server +sound sqlite system-lua" + +# postgres isn't yet really supported by upstream +RDEPEND="app-arch/bzip2 + app-arch/xz-utils + net-misc/curl + sys-libs/zlib + auth? ( + mysql? ( virtual/mysql ) + sqlite? ( dev-db/sqlite:3 ) + !mysql? ( ( !sqlite? ( virtual/mysql ) ) ) + ) + readline? ( sys-libs/readline:0= ) + dedicated? ( aimodules? ( dev-libs/libltdl:0 ) ) + !dedicated? ( + media-libs/libpng:0 + gtk? ( x11-libs/gtk+:2 ) + mapimg? ( media-gfx/imagemagick:= ) + modpack? ( x11-libs/gtk+:2 ) + nls? ( virtual/libintl ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + ) + sdl? ( + media-libs/libsdl[video] + media-libs/sdl-gfx + media-libs/sdl-image[png] + media-libs/sdl-ttf + ) + server? ( aimodules? ( sys-devel/libtool:2 ) ) + sound? ( + media-libs/libsdl[sound] + media-libs/sdl-mixer[vorbis] + ) + !sdl? ( !gtk? ( x11-libs/gtk+:2 ) ) + ) + system-lua? ( >=dev-lang/lua-5.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 +} + +src_prepare() { + default + + # 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 \ + tools/Makefile.in \ + data/icons/Makefile.in || die + sed -i -e 's/=SDL/=X-SDL/' bootstrap/freeciv-sdl.desktop.in || die +} + +src_configure() { + local myclient myopts mydatabase + + if use auth ; then + if use !mysql && use !sqlite ; then + einfo "No database backend chosen, defaulting" + einfo "to mysql!" + mydatabase=mysql + else + use mysql && mydatabase="${mydatabase} mysql" + 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 qt5 ; then + einfo "No client backend given, defaulting to" + einfo "gtk2 client!" + myclient="gtk2" + else + use sdl && myclient+=" sdl" + use gtk && myclient+=" gtk2" + if use qt5 ; then + myclient+=" qt" + append-cxxflags -std=c++11 + fi + fi + myopts="$(use_enable server) --without-ggz-client" + fi + + # disabling shared libs will break aimodules USE flag + econf \ + --localedir=/usr/share/locale \ + $(use_enable ipv6) \ + $(use_enable mapimg) \ + --enable-aimodules="$(usex aimodules "yes" "no")" \ + --enable-shared \ + --enable-fcdb="${mydatabase}" \ + $(use_enable nls) \ + $(use_with readline) \ + $(use_enable sound sdl-mixer) \ + --enable-fcmp="$(usex modpack "gtk2" "no")" \ + $(use_enable system-lua sys-lua) \ + ${myopts} \ + --enable-client="${myclient}" +} + +src_install() { + default + + 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... + ./tools/freeciv-manual || die + docinto html + dodoc 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 + + rm -f "${D}/usr/$(get_libdir)"/*.a + prune_libtool_files +} + +pkg_preinst() { + games_pkg_preinst + gnome2_icon_savelist +} + +pkg_postinst() { + games_pkg_postinst + gnome2_icon_cache_update +} + +pkg_postrm() { + gnome2_icon_cache_update +} |