From: "James Le Cuirot" <chewi@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: games-strategy/freeciv/
Date: Thu, 14 Apr 2022 21:34:49 +0000 (UTC) [thread overview]
Message-ID: <1649972057.a7f9ae9ac54ecfedaec26c90e0360ed6b98e47cd.chewi@gentoo> (raw)
commit: a7f9ae9ac54ecfedaec26c90e0360ed6b98e47cd
Author: Matt Jolly <Matt.Jolly <AT> footclan <DOT> ninja>
AuthorDate: Tue Mar 29 10:47:42 2022 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Thu Apr 14 21:34:17 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7f9ae9a
games-strategy/freeciv: add 3.0.0
Signed-off-by: Matt Jolly <Matt.Jolly <AT> footclan.ninja>
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
games-strategy/freeciv/Manifest | 1 +
games-strategy/freeciv/freeciv-3.0.0.ebuild | 192 ++++++++++++++++++++++++++++
2 files changed, 193 insertions(+)
diff --git a/games-strategy/freeciv/Manifest b/games-strategy/freeciv/Manifest
index 399242876ba6..5c49edfb6e62 100644
--- a/games-strategy/freeciv/Manifest
+++ b/games-strategy/freeciv/Manifest
@@ -1 +1,2 @@
DIST freeciv-2.6.6.tar.bz2 52244748 BLAKE2B 88f85b8345b0a2baaa6626a6ab0c8a68e1e7a9a189f661b4fb800572090bf999c62e64641eae36a48b5d90a988bf43b839a411a60af285fbc234e2ca20fadd0c SHA512 97723d260c4e40328aaf26606a4f37871958b58a475cd3fc635edf2e94d28d486c6e28a75b42126e9e69580a60d24fc490da086877d0c912a544d643ff69b103
+DIST freeciv-3.0.0.tar.xz 33421584 BLAKE2B aafd69767c947b26b410e520c674604aa06b51080de35b14bab584b2baf5259fe0b11efb97601341f594d054a664cf0cbf4bb29763919a482f097823d2f024ab SHA512 5c3774cc1510f1aedac0be043cb0684230e230674444031ad1b88c6320a1aab1308452719950d49e25b29f8c2ee9e4e96cc40cdf89ac23609c5422c8beeccd37
diff --git a/games-strategy/freeciv/freeciv-3.0.0.ebuild b/games-strategy/freeciv/freeciv-3.0.0.ebuild
new file mode 100644
index 000000000000..7ff9b9132dcd
--- /dev/null
+++ b/games-strategy/freeciv/freeciv-3.0.0.ebuild
@@ -0,0 +1,192 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-3 )
+
+inherit desktop lua-single qmake-utils xdg
+
+MY_PV="${PV/_beta/-beta}"
+MY_PV="${MY_PV/_rc/-RC}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Multiplayer strategy game (Civilization Clone)"
+HOMEPAGE="http://www.freeciv.org/"
+
+if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
+ SRC_URI="mirror://sourceforge/freeciv/${MY_P}.tar.xz"
+ KEYWORDS="~amd64 ~ppc64 ~x86"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="aimodules auth dedicated +gtk ipv6 mapimg modpack mysql nls qt5 readline sdl +server +sound sqlite system-lua"
+
+REQUIRED_USE="system-lua? ( ${LUA_REQUIRED_USE} )"
+
+RDEPEND="
+ app-arch/bzip2
+ app-arch/xz-utils
+ net-misc/curl
+ sys-libs/zlib
+ auth? (
+ !mysql? ( ( !sqlite? ( dev-db/mysql-connector-c:0= ) ) )
+ mysql? ( dev-db/mysql-connector-c:0= )
+ sqlite? ( dev-db/sqlite:3 )
+ )
+ dedicated? ( aimodules? ( dev-libs/libltdl:0 ) )
+ !dedicated? (
+ media-libs/libpng:0
+ gtk? ( x11-libs/gtk+:3 )
+ mapimg? ( media-gfx/imagemagick:= )
+ modpack? ( x11-libs/gtk+:3 )
+ nls? ( virtual/libintl )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ )
+ !sdl? ( !gtk? ( x11-libs/gtk+:3 ) )
+ sdl? (
+ media-libs/libsdl2[video]
+ media-libs/sdl2-gfx
+ media-libs/sdl2-image[png]
+ media-libs/sdl2-ttf
+ )
+ server? ( aimodules? ( sys-devel/libtool:2 ) )
+ sound? (
+ media-libs/libsdl2[sound]
+ media-libs/sdl2-mixer[vorbis]
+ )
+ )
+ readline? ( sys-libs/readline:0= )
+ system-lua? ( ${LUA_DEPS} )
+"
+DEPEND="${RDEPEND}
+ !dedicated? ( x11-base/xorg-proto )
+"
+# postgres isn't yet really supported by upstream
+BDEPEND="
+ virtual/pkgconfig
+ !dedicated? ( nls? ( sys-devel/gettext ) )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ if ! use dedicated && ! use server ; then
+ ewarn "Disabling server USE flag will make it impossible to start local"
+ ewarn "games, but you will still be able to join multiplayer games."
+ fi
+
+ use system-lua && lua-single_pkg_setup
+}
+
+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
+}
+
+src_configure() {
+ local myclient=() mydatabase=() myeconfargs=()
+
+ 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+=( mysql )
+ use sqlite && mydatabase+=( sqlite3 )
+ fi
+ else
+ mydatabase=( no )
+ fi
+
+ if use dedicated ; then
+ myclient=( no )
+ myeconfargs+=(
+ --enable-server
+ --enable-freeciv-manual=html
+ )
+ else
+ if use !sdl && use !gtk && ! use qt5 ; then
+ einfo "No client backend given, defaulting to gtk3 client!"
+ myclient=( gtk3 )
+ else
+ use sdl && myclient+=( sdl2 )
+ use gtk && myclient+=( gtk3 )
+ if use qt5 ; then
+ local -x MOCCMD=$(qt5_get_bindir)/moc
+ myclient+=( qt )
+ fi
+ fi
+ myeconfargs+=(
+ $(use_enable server)
+ $(use_enable server freeciv-manual html )
+ )
+ fi
+
+ myeconfargs+=(
+ --enable-aimodules="$(usex aimodules "yes" "no")"
+ --enable-client="${myclient[*]}"
+ --enable-fcdb="${mydatabase[*]}"
+ --enable-fcmp="$(usex modpack "gtk3" "no")"
+ # disabling shared libs will break aimodules USE flag
+ --enable-shared
+ --localedir=/usr/share/locale
+ --with-appdatadir="${EPREFIX}"/usr/share/metainfo
+ $(use_enable ipv6)
+ $(use_enable mapimg)
+ $(use_enable nls)
+ $(use_enable sound sdl-mixer)
+ $(use_enable system-lua sys-lua)
+ $(use_with readline)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ if use dedicated ; then
+ rm -rf "${ED}"/usr/share/pixmaps || die
+ rm -f "${ED}"/usr/share/man/man6/freeciv-{client,gtk2,gtk3,modpack,qt,sdl,xaw}* || die
+ 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...
+ # freeciv-manual only supports one ruleset argument at a time.
+ for RULESET in alien civ1 civ2 civ2civ3 classic experimental multiplayer sandbox
+ do
+ ./tools/freeciv-manual -r ${RULESET} || die
+ docinto html/rulesets/${RULESET}
+ dodoc ${RULESET}*.html
+ done
+ fi
+ if use sdl ; then
+ make_desktop_entry freeciv-sdl "Freeciv (SDL)" freeciv-client
+ else
+ rm -f "${ED}"/usr/share/man/man6/freeciv-sdl* || die
+ fi
+ rm -f "${ED}"/usr/share/man/man6/freeciv-xaw* || die
+ fi
+ find "${ED}" -name "freeciv-manual*" -delete || die
+
+ rm -f "${ED}/usr/$(get_libdir)"/*.a || die
+ find "${ED}" -type f -name "*.la" -delete || die
+}
next reply other threads:[~2022-04-14 21:34 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-14 21:34 James Le Cuirot [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-04-03 15:33 [gentoo-commits] repo/gentoo:master commit in: games-strategy/freeciv/ Sam James
2025-04-03 5:58 Matt Jolly
2025-04-03 5:58 Matt Jolly
2025-04-03 5:58 Matt Jolly
2024-11-11 8:53 Matt Jolly
2024-09-25 8:31 Ionen Wolkens
2024-09-25 8:31 Ionen Wolkens
2024-08-25 23:54 Conrad Kostecki
2024-08-25 23:54 Conrad Kostecki
2024-04-01 4:15 Matt Jolly
2024-04-01 3:59 Matt Jolly
2024-04-01 3:59 Matt Jolly
2024-04-01 3:59 Matt Jolly
2024-02-10 21:15 Matt Jolly
2024-02-10 21:15 Matt Jolly
2024-02-10 21:15 Matt Jolly
2023-07-05 20:41 Conrad Kostecki
2022-04-15 6:32 Sam James
2022-04-15 5:53 Sam James
2022-04-15 5:53 Sam James
2022-04-14 21:34 James Le Cuirot
2022-02-03 5:46 Stefan Strogin
2021-09-12 20:20 Ionen Wolkens
2021-08-01 18:27 Sam James
2021-06-05 17:48 Marek Szuba
2021-05-15 16:25 Andreas Sturmlechner
2021-04-19 7:58 Andreas Sturmlechner
2021-04-16 10:25 David Seifert
2020-11-24 0:59 Andreas Sturmlechner
2020-11-21 21:59 Sergei Trofimovich
2020-03-08 21:43 James Le Cuirot
2020-02-19 13:24 Lars Wendler
2020-02-19 12:49 Lars Wendler
2020-02-19 12:49 Lars Wendler
2019-12-28 11:53 Lars Wendler
2019-02-24 20:42 Brian Evans
2019-02-14 23:06 Andreas Sturmlechner
2018-09-15 8:45 Lars Wendler
2018-09-14 7:06 Lars Wendler
2018-07-21 4:43 Lars Wendler
2018-05-16 19:20 Lars Wendler
2018-05-16 19:12 Lars Wendler
2018-04-03 14:19 Lars Wendler
2018-04-03 14:19 Lars Wendler
2018-02-04 6:06 Lars Wendler
2017-12-03 13:32 Lars Wendler
2017-12-03 13:32 Lars Wendler
2017-08-22 13:18 Lars Wendler
2017-08-22 13:18 Lars Wendler
2017-08-15 10:03 Lars Wendler
2017-05-14 10:05 Lars Wendler
2017-05-14 10:05 Lars Wendler
2017-05-14 10:05 Lars Wendler
2016-11-27 14:29 Lars Wendler
2016-11-26 21:18 Lars Wendler
2016-09-19 13:17 Lars Wendler
2016-09-19 13:17 Lars Wendler
2016-05-24 20:44 Michael Sterrett
2016-03-16 3:58 Michael Sterrett
2016-03-14 22:12 Agostino Sarubbo
2016-02-16 1:38 Michael Sterrett
2016-02-10 3:24 Michael Sterrett
2016-01-28 15:21 Michael Sterrett
2015-10-08 6:19 Michael Sterrett
2015-09-25 14:13 Agostino Sarubbo
2015-09-25 10:42 Agostino Sarubbo
2015-08-22 8:56 Lars Wendler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1649972057.a7f9ae9ac54ecfedaec26c90e0360ed6b98e47cd.chewi@gentoo \
--to=chewi@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox