summaryrefslogtreecommitdiff
path: root/games-strategy/freeciv
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy/freeciv')
-rw-r--r--games-strategy/freeciv/Manifest8
-rw-r--r--games-strategy/freeciv/files/freeciv-3.1.0-qt6.patch24
-rw-r--r--games-strategy/freeciv/files/freeciv-3.1.0_beta4-fix-manpage-install-location.patch34
-rw-r--r--games-strategy/freeciv/freeciv-3.1.0.ebuild216
-rw-r--r--games-strategy/freeciv/freeciv-3.1.2.ebuild22
-rw-r--r--games-strategy/freeciv/freeciv-9999.ebuild22
6 files changed, 14 insertions, 312 deletions
diff --git a/games-strategy/freeciv/Manifest b/games-strategy/freeciv/Manifest
index 5b1dcaf446a0..eaa559162814 100644
--- a/games-strategy/freeciv/Manifest
+++ b/games-strategy/freeciv/Manifest
@@ -1,8 +1,4 @@
-AUX freeciv-3.1.0-qt6.patch 775 BLAKE2B 225fb73659a5a11e1b77c04157856b52a996f1694948152650c879cf1f16d053c30c4ddb28a50125e3e875352840e27407bf1e3f257c33371c19ad408d7efb8c SHA512 e53a347ab9aad973d6283c4057783ae431b0fadc9eb618c7160b2d5457c17fbea9bc25cb286258be1c6aba34ea4848726025c6812b4570e67f7fa1b19ff2a3f8
-AUX freeciv-3.1.0_beta4-fix-manpage-install-location.patch 882 BLAKE2B 7cbe60cf4753af0331541786679b80d8d14a95a8fb99d57b1c17c0e9690001aac2b8bc205a9225c755ca5c3ffc577af992a7bd6aaf2f37d6aa37be6d5b8460ed SHA512 e2f652a05368a885531e47421dfde993fac54850092db07834399d91c393c51e35f6662c9cd79d55bd470dbc81f211a2b393cd96768a6874c3b7b680de2ac366
-DIST freeciv-3.1.0.tar.gz 127748997 BLAKE2B 75b3d1341d8ab09af244f07f3df5b1817571c4958a4296f37f35a105fe5a8e3d2e8d2e0dc7eb1d1aaf3d4a4c6574ba75355595134dc5a255535bc14c604bb99f SHA512 514d796a54466790a5ce0f2abb6fd8cb9c124a2f19ab33d48ce7a7f0d8d92096b54352a5d3655da852cdbd807baf4969467e04b82f687347bdff92e09f7aad86
DIST freeciv-3.1.2.tar.gz 127861796 BLAKE2B ab9c1b8ce2f54725505a21570bbadc906cde34db5e6796fd469556a6ee3bf9e0e05387a2da323f4fd18596e5c5fcb9c4448293f3fd989dfcc9251fe7626300a1 SHA512 6be7e3e3bf78d3606476a51a6c0115d3ef0fe0fa1f446496152873d624c9b7c074d7fb63fe23318a9b4ae2c2ce9acb52d19c0f08c060a64c65b1034df9521340
-EBUILD freeciv-3.1.0.ebuild 5968 BLAKE2B f66374068aaf4b25559814d228febd6a0df42312aa663f87e0c9f82528e110c25d4cbfac3c5489f224efb4e4fcf3aa912523c75ceca1103d2612982e78f2cf09 SHA512 59be1c2a75afa5ff50ec6d870dc59b2768a9df29547b938647cf301f0696692f1468bac2464a06bc5c39c1ef0cf87f6b4829744b5477ffd2205876fb3cdaf032
-EBUILD freeciv-3.1.2.ebuild 5839 BLAKE2B 7d617f5e18d2b07038aa63b4a016d5079f85ef849a25c589b775f279f9237d2ebb4f192fa368006e8c696474c359eb49059f7a971a4428a32dd552984be633cd SHA512 9f63045103c5041f7aea462ba8e79b37810a68b897c79a39f2079374c40012def29c75a579b1460e3b5bf65fc8e0049db19fb0491bf0b1e5426c417ac3a67acd
-EBUILD freeciv-9999.ebuild 5839 BLAKE2B 7d617f5e18d2b07038aa63b4a016d5079f85ef849a25c589b775f279f9237d2ebb4f192fa368006e8c696474c359eb49059f7a971a4428a32dd552984be633cd SHA512 9f63045103c5041f7aea462ba8e79b37810a68b897c79a39f2079374c40012def29c75a579b1460e3b5bf65fc8e0049db19fb0491bf0b1e5426c417ac3a67acd
+EBUILD freeciv-3.1.2.ebuild 5595 BLAKE2B 389553406aee118dc4db3d67d0522bcbfb694c7d4f1e442c8b51177a259ca79318e3e548d804aa03788ddffe56a28a2d568e8ff627a45c6261671150d10d688b SHA512 4dc598da354ef4434509ac8bb07d7040badb5fd1b7e00b488cb542870165769e2acc209569b705d35aeca584a36c407ce2e5f5235acee3b5d5037db3b9d2be13
+EBUILD freeciv-9999.ebuild 5595 BLAKE2B 389553406aee118dc4db3d67d0522bcbfb694c7d4f1e442c8b51177a259ca79318e3e548d804aa03788ddffe56a28a2d568e8ff627a45c6261671150d10d688b SHA512 4dc598da354ef4434509ac8bb07d7040badb5fd1b7e00b488cb542870165769e2acc209569b705d35aeca584a36c407ce2e5f5235acee3b5d5037db3b9d2be13
MISC metadata.xml 1298 BLAKE2B c744a6fa5ab5345aeafa4bea7edc493beee1ded63cc2d9d26fe7e883dd81d4de6cec288a8ceb49567f2bdfe2fcd647ab9231055429244c14d8b05978dc13ad7a SHA512 767b482284030363aeaf521b13511fe10f69db940b411fe637a4f9d00324172b3b3e1426e74fa575cb414eb1a038fca87ab473237804699879975448f9ca0f1f
diff --git a/games-strategy/freeciv/files/freeciv-3.1.0-qt6.patch b/games-strategy/freeciv/files/freeciv-3.1.0-qt6.patch
deleted file mode 100644
index 9aa363a11e02..000000000000
--- a/games-strategy/freeciv/files/freeciv-3.1.0-qt6.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 8da1d4c91dff53db6d903730855ed6a02252e53d Mon Sep 17 00:00:00 2001
-From: Marko Lindqvist <cazfi74@gmail.com>
-Date: Wed, 17 Apr 2024 07:02:20 +0300
-Subject: [PATCH] Qt: Add Q_OBJECT for fc_shortcut_popup
-
-See RM #462
-
-Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
----
- client/gui-qt/shortcuts.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/client/gui-qt/shortcuts.h b/client/gui-qt/shortcuts.h
-index 7574ce4f8e..9d02d1c3f6 100644
---- a/client/gui-qt/shortcuts.h
-+++ b/client/gui-qt/shortcuts.h
-@@ -155,6 +155,7 @@ class line_edit : public QLineEdit
- **************************************************************************/
- class fc_shortcut_popup : public QDialog
- {
-+ Q_OBJECT
- public:
- fc_shortcut_popup(QWidget *parent);
- void run(fc_shortcut *s);
diff --git a/games-strategy/freeciv/files/freeciv-3.1.0_beta4-fix-manpage-install-location.patch b/games-strategy/freeciv/files/freeciv-3.1.0_beta4-fix-manpage-install-location.patch
deleted file mode 100644
index 744d46749741..000000000000
--- a/games-strategy/freeciv/files/freeciv-3.1.0_beta4-fix-manpage-install-location.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 4518545bd37c6665db51ccd2da7c15bcceb1c0f8 Mon Sep 17 00:00:00 2001
-From: Matt Jolly <Matt.Jolly@footclan.ninja>
-Date: Sat, 10 Feb 2024 17:57:38 +1000
-Subject: [PATCH] When using meson we should still install 'man 6' pages to
- ${mandir}/man6
-
----
- meson.build | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 099e526..5ec0e79 100644
---- a/meson.build
-+++ b/meson.build
-@@ -2892,14 +2892,14 @@ endforeach
- foreach manp : man_pages
- install_data(
- join_paths(b_root, manp + '.6'),
-- install_dir : get_option('mandir')
-+ install_dir : join_paths(get_option('mandir'), 'man6')
- )
- endforeach
-
- foreach manp : man_links
- install_data(
- join_paths('doc/man/', manp + '.6'),
-- install_dir : get_option('mandir')
-+ install_dir : join_paths(get_option('mandir'), 'man6')
- )
- endforeach
-
---
-2.43.0
-
diff --git a/games-strategy/freeciv/freeciv-3.1.0.ebuild b/games-strategy/freeciv/freeciv-3.1.0.ebuild
deleted file mode 100644
index 17f914cff915..000000000000
--- a/games-strategy/freeciv/freeciv-3.1.0.ebuild
+++ /dev/null
@@ -1,216 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LUA_COMPAT=( lua5-4 )
-
-inherit desktop 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 ~ppc64 ~x86"
- fi
- MY_P="${PN}-${MY_PV}"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="dedicated gtk3 gtk4 json mapimg modpack mysql nls +qt5 qt6 readline rule-editor sdl +server +sound +system-lua web-server"
-
-# I'm pretty sure that you can't build both qt flavours at the same time
-REQUIRED_USE="
- system-lua? ( ${LUA_REQUIRED_USE} )
- !dedicated? ( || ( gtk3 gtk4 qt5 qt6 sdl ) )
- dedicated? ( !gtk3 !gtk4 !mapimg !nls !qt5 !qt6 !sdl !sound )
- qt5? ( !qt6 )
- qt6? ( !qt5 )
-"
-
-RDEPEND="
- app-arch/bzip2
- app-arch/xz-utils
- app-arch/zstd:=
- dev-build/libtool
- dev-db/sqlite:3
- dev-libs/icu:=
- net-misc/curl
- sys-libs/zlib
- !dedicated? (
- media-libs/libpng
- gtk3? ( x11-libs/gtk+:3 )
- gtk4? ( gui-libs/gtk:4 )
- mapimg? ( media-gfx/imagemagick:= )
- nls? ( virtual/libintl )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtwidgets:5
- )
- qt6? (
- dev-qt/qtbase:6[gui,widgets]
- )
- sdl? (
- media-libs/libsdl2[video]
- media-libs/sdl2-gfx
- media-libs/sdl2-image[png]
- media-libs/sdl2-ttf
- )
- sound? (
- media-libs/libsdl2[sound]
- media-libs/sdl2-mixer[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
-}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.0_beta4-fix-manpage-install-location.patch
- "${FILESDIR}"/${P}-qt6.patch # from git master
-)
-
-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=()
-
- # Upstream considers meson "experimental" until 3.2.0 according to their roadmap
- emesonargs+=( -Dack_experimental=true )
-
- 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} )
- use modpack && myfcmp+=( ${fcmp_name} )
- 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 sdl sdl2 cli
- freeciv_enable_ui gtk3 gtk3.22 gtk3
- freeciv_enable_ui gtk4
- freeciv_enable_ui qt5 qt
- freeciv_enable_ui qt6 qt
- use qt5 && emesonargs+=( -Dqtver=qt5 )
- use qt6 && emesonargs+=( -Dqtver=qt6 )
- 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=$(echo ${myclient[*]} | sed 's/ /,/g')
- -Dfcmp=$(echo ${myfcmp[*]} | sed 's/ /,/g')
- )
-
- # 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
-
- # 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 rule-editor ruledit)
- $(meson_use sound audio)
- $(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 experimental multiplayer sandbox
- do
- $(find "${WORKDIR}" -type d -maxdepth 1 -mindepth 1 -iname '*-build')/freeciv-manual -r ${RULESET} || die
- 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
- else
- # sdl client needs some special handling
- if use sdl ; then
- make_desktop_entry freeciv-sdl "Freeciv (SDL)" freeciv-client
- else
- rm "${ED}"/usr/share/man/man6/freeciv-sdl2.6 || die
- fi
- fi
-
-}
-
-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
-}
diff --git a/games-strategy/freeciv/freeciv-3.1.2.ebuild b/games-strategy/freeciv/freeciv-3.1.2.ebuild
index eca61092a9e5..e61df8f6bac0 100644
--- a/games-strategy/freeciv/freeciv-3.1.2.ebuild
+++ b/games-strategy/freeciv/freeciv-3.1.2.ebuild
@@ -25,15 +25,12 @@ fi
LICENSE="GPL-2+"
SLOT="0"
-IUSE="dedicated gtk3 gtk4 json mapimg modpack mysql nls +qt5 qt6 readline rule-editor sdl +server +sound +system-lua web-server"
+IUSE="dedicated gtk3 gtk4 json mapimg modpack mysql nls +qt6 readline rule-editor sdl +server +sound +system-lua web-server"
-# I'm pretty sure that you can't build both qt flavours at the same time
REQUIRED_USE="
system-lua? ( ${LUA_REQUIRED_USE} )
- !dedicated? ( || ( gtk3 gtk4 qt5 qt6 sdl ) )
- dedicated? ( !gtk3 !gtk4 !mapimg !nls !qt5 !qt6 !sdl !sound )
- qt5? ( !qt6 )
- qt6? ( !qt5 )
+ !dedicated? ( || ( gtk3 gtk4 qt6 sdl ) )
+ dedicated? ( !gtk3 !gtk4 !mapimg !nls !qt6 !sdl !sound )
"
RDEPEND="
@@ -51,14 +48,7 @@ RDEPEND="
gtk4? ( gui-libs/gtk:4 )
mapimg? ( media-gfx/imagemagick:= )
nls? ( virtual/libintl )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtwidgets:5
- )
- qt6? (
- dev-qt/qtbase:6[gui,widgets]
- )
+ qt6? ( dev-qt/qtbase:6[gui,widgets] )
sdl? (
media-libs/libsdl2[video]
media-libs/sdl2-gfx
@@ -132,9 +122,7 @@ src_configure() {
freeciv_enable_ui sdl sdl2 cli
freeciv_enable_ui gtk3 gtk3.22 gtk3
freeciv_enable_ui gtk4
- freeciv_enable_ui qt5 qt
freeciv_enable_ui qt6 qt
- use qt5 && emesonargs+=( -Dqtver=qt5 )
use qt6 && emesonargs+=( -Dqtver=qt6 )
else
if use modpack ; then
@@ -201,6 +189,8 @@ src_install() {
}
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"
diff --git a/games-strategy/freeciv/freeciv-9999.ebuild b/games-strategy/freeciv/freeciv-9999.ebuild
index eca61092a9e5..e61df8f6bac0 100644
--- a/games-strategy/freeciv/freeciv-9999.ebuild
+++ b/games-strategy/freeciv/freeciv-9999.ebuild
@@ -25,15 +25,12 @@ fi
LICENSE="GPL-2+"
SLOT="0"
-IUSE="dedicated gtk3 gtk4 json mapimg modpack mysql nls +qt5 qt6 readline rule-editor sdl +server +sound +system-lua web-server"
+IUSE="dedicated gtk3 gtk4 json mapimg modpack mysql nls +qt6 readline rule-editor sdl +server +sound +system-lua web-server"
-# I'm pretty sure that you can't build both qt flavours at the same time
REQUIRED_USE="
system-lua? ( ${LUA_REQUIRED_USE} )
- !dedicated? ( || ( gtk3 gtk4 qt5 qt6 sdl ) )
- dedicated? ( !gtk3 !gtk4 !mapimg !nls !qt5 !qt6 !sdl !sound )
- qt5? ( !qt6 )
- qt6? ( !qt5 )
+ !dedicated? ( || ( gtk3 gtk4 qt6 sdl ) )
+ dedicated? ( !gtk3 !gtk4 !mapimg !nls !qt6 !sdl !sound )
"
RDEPEND="
@@ -51,14 +48,7 @@ RDEPEND="
gtk4? ( gui-libs/gtk:4 )
mapimg? ( media-gfx/imagemagick:= )
nls? ( virtual/libintl )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtwidgets:5
- )
- qt6? (
- dev-qt/qtbase:6[gui,widgets]
- )
+ qt6? ( dev-qt/qtbase:6[gui,widgets] )
sdl? (
media-libs/libsdl2[video]
media-libs/sdl2-gfx
@@ -132,9 +122,7 @@ src_configure() {
freeciv_enable_ui sdl sdl2 cli
freeciv_enable_ui gtk3 gtk3.22 gtk3
freeciv_enable_ui gtk4
- freeciv_enable_ui qt5 qt
freeciv_enable_ui qt6 qt
- use qt5 && emesonargs+=( -Dqtver=qt5 )
use qt6 && emesonargs+=( -Dqtver=qt6 )
else
if use modpack ; then
@@ -201,6 +189,8 @@ src_install() {
}
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"