repo/gentoo:master commit in: games-strategy/freeciv/
"Matt Jolly" <[email protected]> Wed, 05 Aug 2026 10:48:59 +0000 (UTC)
| Newsgroups | gmane.linux.gentoo.cvs |
|---|---|
| Message-ID | <1785926734.525e5d1d574706e941e2b2ce597518dd66def360.kangie@gentoo> |
commit: 525e5d1d574706e941e2b2ce597518dd66def360
Author: Matt Jolly <kangie <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 5 10:33:43 2026 +0000
Commit: Matt Jolly <kangie <AT> gentoo <DOT> org>
CommitDate: Wed Aug 5 10:45:34 2026 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=525e5d1d
games-strategy/freeciv: drop 3.2.3
Closes: https://bugs.gentoo.org/971045
Signed-off-by: Matt Jolly <kangie <AT> gentoo.org>
games-strategy/freeciv/freeciv-3.2.3.ebuild | 215 ----------------------------
1 file changed, 215 deletions(-)
diff --git a/games-strategy/freeciv/freeciv-3.2.3.ebuild b/games-strategy/freeciv/freeciv-3.2.3.ebuild
deleted file mode 100644
index 79b98ad3d8c1..000000000000
--- a/games-strategy/freeciv/freeciv-3.2.3.ebuild
+++ /dev/null
@@ -1,215 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LUA_COMPAT=( lua5-4 )
-
-inherit lua-single meson xdg
-
-DESCRIPTION="Multiplayer strategy game (Civilization Clone)"
-HOMEPAGE="https://www.freeciv.org/ https://github.com/freeciv/freeciv/"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/freeciv/freeciv/"
-else
- MY_PV="R${PV//./_}"
- SRC_URI="https://github.com/freeciv/freeciv/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.tar.gz"
- if [[ ${PV} != *_beta* ]]; then
- KEYWORDS="~amd64 ~arm64"
- fi
- MY_P="${PN}-${MY_PV}"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="dedicated gtk3 gtk4 json mapimg modpack nls qt6"
-IUSE+=" readline rule-editor +sdl3 +server +sound svg +system-lua web-server"
-
-REQUIRED_USE="
- !dedicated? ( || ( gtk3 gtk4 qt6 sdl3 ) )
- dedicated? ( !gtk3 !gtk4 !mapimg !nls !qt6 !sdl3 !sound )
- sound? ( sdl3 )
- system-lua? ( ${LUA_REQUIRED_USE} )
-"
-
-RDEPEND="
- app-arch/bzip2
- app-arch/xz-utils
- app-arch/zstd:=
- dev-build/libtool
- dev-db/sqlite:3
- dev-libs/icu:=
- net-misc/curl
- virtual/zlib:=
- !dedicated? (
- media-libs/libpng
- gtk3? ( x11-libs/gtk+:3 )
- gtk4? ( gui-libs/gtk:4 )
- mapimg? ( media-gfx/imagemagick:= )
- nls? ( virtual/libintl )
- qt6? ( dev-qt/qtbase:6[gui,widgets] )
- sdl3? (
- media-libs/libsdl3
- media-libs/sdl3-ttf
- media-libs/sdl3-image[png]
- )
- sound? (
- media-libs/libsdl3
- >=media-libs/sdl3-mixer-3.1.2_rc1[vorbis]
- )
- )
- json? ( dev-libs/jansson:= )
- readline? ( sys-libs/readline:= )
- system-lua? (
- ${LUA_DEPS}
- )
-"
-DEPEND="${RDEPEND}
- !dedicated? ( x11-base/xorg-proto )
-"
-# Calls gzip during build
-BDEPEND="
- app-arch/gzip
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
-"
-
-pkg_setup() {
- use system-lua && lua-single_pkg_setup
- use svg && use !qt6 && einfo "SVG flags only supported in qt6 client, ignoring"
-}
-
-PATCHES=(
- "${FILESDIR}/${P}-widget_id-truncation.patch"
-)
-
-src_prepare() {
- # Upstream's meson.build is not very friendly to our needs
- sed -i -e "s:doc/freeciv:doc/${PF}:" meson.build || die
- sed -i -e "/custom_target('gzip_ChangeLog/,+6d" meson.build || die
- default
-}
-
-src_configure() {
- # Docs here: https://github.com/freeciv/freeciv/blob/main/doc/INSTALL.meson
- local myclient=() emesonargs=() myfcmp=()
-
- if use dedicated || use server ; then
- emesonargs+=( -Dserver=enabled )
- elif use web-server; then
- emesonargs+=( -Dserver=freeciv-web )
- else
- emesonargs+=( -Dserver=disabled )
- fi
-
- # Select any client backends that we want enabled; dedicated server shouldn't build a UI
- # for sanity we'll build the modpack bin with the same UIs as the client.
- # 'fcmp' = freeciv modpack (client) - gtk3, qt, cli, gtk4
- freeciv_enable_ui() {
- local flag=$1
- local client_name=${2:-${flag}}
- local fcmp_name=${3:-${client_name}}
-
- if use ${flag} ; then
- myclient+=( ${client_name} )
- # Avoid duplicate `cli` entries; meson will complain
- if use modpack && [[ ! " ${myfcmp[*]} " =~ " ${fcmp_name} " ]]; then
- myfcmp+=( ${fcmp_name} )
- fi
- fi
- }
-
- if ! use dedicated ; then
- # there's no SDL modpack backend; rather than incidentally pull in GTK3 (as is default)
- # let's explicitly set the backend to CLI
- freeciv_enable_ui sdl3 sdl3 cli
- freeciv_enable_ui gtk3 gtk3.22 gtk3
- freeciv_enable_ui gtk4
- freeciv_enable_ui qt6 qt
- use qt6 && emesonargs+=( -Dqtver=qt6 )
- use qt6 && emesonargs+=( $(meson_use svg svgflags) )
- else
- if use modpack ; then
- myfcmp+=( cli )
- fi
- fi
-
- # the client and fpmc arrays are now populated (or not for dedicated); let's add them to emesonargs
- emesonargs+=(
- -Dclients="$(meson-format-array "${myclient[*]}")"
- -Dfcmp="$(meson-format-array "${myfcmp[*]}")"
- )
-
- if use sound; then
- emesonargs+=( -Daudio=sdl3 )
- else
- # We don't want any audio support; probably a dedicated server
- emesonargs+=( -Daudio=none )
- fi
-
- # If we're building a live ebuild, we want to include the git revision in the version string
- if [[ ${PV} == 9999 ]] ; then
- emesonargs+=( -Dgitrev=true )
- fi
-
- local tools=( manual ) # We always want this
- # ruleup is the rule-updater; if you're building the editor you probably want this too
- # default-enabled upstream
- use rule-editor && tools+=( ruledit ruleup )
- emesonargs+=(
- -Dtools="$(meson-format-array "${tools[*]}")"
- )
-
- # Anything that can be trivially set by meson_use goes here
- emesonargs+=(
- $(meson_use json json-protocol)
- $(meson_use mapimg mwand)
- $(meson_use nls)
- $(meson_use readline)
- $(meson_use system-lua syslua)
- )
-
- meson_src_configure
-}
-
-src_install() {
-
- meson_src_install
- # Create and install the html manual and then cleanup the tool because it's useless.
- # TODO: for proper localisation this should be run during postinst but
- # that would require a lot of work to avoid orphan files.
- # freeciv-manual only supports one ruleset argument at a time.
- elog "Generating html manual..."
- for RULESET in alien civ1 civ2 civ2civ3 classic goldkeep multiplayer sandbox
- do
- $(find "${WORKDIR}" -type d -maxdepth 1 -mindepth 1 -iname '*-build')/freeciv-manual -r ${RULESET} ||
- die "Unable to generate HTML output for ${RULESET}"
- docinto html/rulesets/${RULESET}
- dodoc ${RULESET}*.html
- done
-
- find "${ED}" -name "freeciv-manual*" -delete || die "Failed to remove freeciv-manual"
-
- if use dedicated ; then
- elog "Tidying up dedicated server installation..."
- find "${ED}"/usr/share/man/man6/ \
- -not \( -name 'freeciv.6' -o -name 'freeciv-ruledit.6' \
- -o -name 'freeciv-ruleup.6' -o -name 'freeciv-server.6' \) -mindepth 1 -delete || die
- fi
-
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
-
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- einfo "There are a number of supported authentication backends."
- einfo "sqlite3 is the default, however dedicated servers may wish to"
- einfo "use another supported backend; please consult the documentation"
- einfo "to configure freeciv for a particular backend:"
- einfo "https://github.com/freeciv/freeciv/blob/main/doc/README.fcdb"
- fi
-}