summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy')
-rw-r--r--games-strategy/0ad/0ad-0.0.25b_alpha-r1.ebuild (renamed from games-strategy/0ad/0ad-0.0.24b_alpha-r1.ebuild)137
-rw-r--r--games-strategy/0ad/0ad-0.0.25b_alpha.ebuild3
-rw-r--r--games-strategy/0ad/Manifest2
-rw-r--r--games-strategy/0ad/files/0ad-0.0.24_alpha_pre20210116040036-build.patch105
-rw-r--r--games-strategy/0ad/files/0ad-0.0.24b_alpha-fix-hang-on-quit-without-nvtt.patch98
-rw-r--r--games-strategy/0ad/files/0ad-0.0.24b_alpha-rust-1.50.patch82
-rw-r--r--games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-name-collision-glibc.patch131
-rw-r--r--games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-setuptools.patch188
-rw-r--r--games-strategy/0ad/files/0ad-0.0.25b_alpha-python3.10.patch156
-rw-r--r--games-strategy/0ad/metadata.xml1
-rw-r--r--games-strategy/augustus/augustus-3.0.1.ebuild4
-rw-r--r--games-strategy/endless-sky/metadata.xml2
-rw-r--r--games-strategy/freeciv/Manifest2
-rw-r--r--games-strategy/freeciv/freeciv-3.0.1-r1.ebuild (renamed from games-strategy/freeciv/freeciv-2.6.4.ebuild)33
-rw-r--r--games-strategy/freeorion/Manifest1
-rw-r--r--games-strategy/freeorion/freeorion-0.4.10.2.ebuild77
-rw-r--r--games-strategy/freeorion/freeorion-9999.ebuild6
-rw-r--r--games-strategy/julius/julius-1.6.0.ebuild4
-rw-r--r--games-strategy/naev/Manifest4
-rw-r--r--games-strategy/naev/metadata.xml6
-rw-r--r--games-strategy/naev/naev-0.8.2.ebuild73
-rw-r--r--games-strategy/naev/naev-0.9.1.ebuild91
-rw-r--r--games-strategy/naev/naev-0.9.3.ebuild (renamed from games-strategy/naev/naev-0.9.2.ebuild)6
-rw-r--r--games-strategy/s25rttr/Manifest1
-rw-r--r--games-strategy/s25rttr/s25rttr-0.9.5.ebuild112
-rw-r--r--games-strategy/seven-kingdoms/Manifest1
-rw-r--r--games-strategy/seven-kingdoms/seven-kingdoms-2.15.5.ebuild42
-rw-r--r--games-strategy/triplea/Manifest1
-rw-r--r--games-strategy/triplea/files/mkdir.sh1
-rw-r--r--games-strategy/triplea/files/paths.patch63
-rw-r--r--games-strategy/triplea/files/triplea-1.8.0.9-drop-ant-check.patch29
-rw-r--r--games-strategy/triplea/files/upnplib.patch14
-rw-r--r--games-strategy/triplea/metadata.xml11
-rw-r--r--games-strategy/triplea/triplea-1.8.0.9-r2.ebuild92
-rw-r--r--games-strategy/ufoai/ufoai-2.5.0_p20180603-r1.ebuild4
-rw-r--r--games-strategy/warzone2100/Manifest1
-rw-r--r--games-strategy/warzone2100/warzone2100-4.2.6.ebuild116
-rw-r--r--games-strategy/wesnoth/Manifest6
-rw-r--r--games-strategy/wesnoth/files/wesnoth-1.14.14-ar.patch14
-rw-r--r--games-strategy/wesnoth/metadata.xml1
-rw-r--r--games-strategy/wesnoth/wesnoth-1.16.2.ebuild (renamed from games-strategy/wesnoth/wesnoth-1.16.0-r1.ebuild)14
-rw-r--r--games-strategy/wesnoth/wesnoth-1.16.3.ebuild (renamed from games-strategy/wesnoth/wesnoth-1.15.15.ebuild)20
-rw-r--r--games-strategy/wesnoth/wesnoth-1.17.5.ebuild (renamed from games-strategy/wesnoth/wesnoth-1.14.14-r1.ebuild)27
-rw-r--r--games-strategy/widelands/widelands-1.0.ebuild4
44 files changed, 974 insertions, 812 deletions
diff --git a/games-strategy/0ad/0ad-0.0.24b_alpha-r1.ebuild b/games-strategy/0ad/0ad-0.0.25b_alpha-r1.ebuild
index 6307e21c5b2..0939933bda9 100644
--- a/games-strategy/0ad/0ad-0.0.24b_alpha-r1.ebuild
+++ b/games-strategy/0ad/0ad-0.0.25b_alpha-r1.ebuild
@@ -1,53 +1,68 @@
-# Copyright 2014-2021 Gentoo Authors
+# Copyright 2014-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
WX_GTK_VER="3.0-gtk3"
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit desktop toolchain-funcs multiprocessing python-any-r1 wxwidgets xdg
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/0ad/0ad"
-elif [[ ${PV} == *_pre* ]]; then
- ZEROAD_GIT_REVISION="c7d07d3979f969b969211a5e5748fa775f6768a7"
-else
- MY_P="0ad-${PV/_/-}"
-fi
-
DESCRIPTION="A free, real-time strategy game"
HOMEPAGE="https://play0ad.com/"
-
-if [[ ${PV} == 9999 ]]; then
+LICENSE="BitstreamVera CC-BY-SA-3.0 GPL-2 LGPL-2.1 LPPL-1.3c MIT ZLIB"
+# Upstream signs releases (and only them) with app-crypt/minisign.
+# The (public) key can be found on https://play0ad.com/download/source.
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/0ad/0ad"
S="${WORKDIR}/${P}"
elif [[ ${PV} == *_pre* ]]; then
+ ZEROAD_GIT_REVISION="c7d07d3979f969b969211a5e5748fa775f6768a7"
SRC_URI="https://github.com/0ad/0ad/archive/${ZEROAD_GIT_REVISION}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${ZEROAD_GIT_REVISION}"
else
- SRC_URI="http://releases.wildfiregames.com/${MY_P}-unix-build.tar.xz"
- SRC_URI+=" https://releases.wildfiregames.com/${MY_P}-unix-data.tar.xz"
+ # Trailing whitespace for IUSE append below
+ IUSE="verify-sig "
+ MINISIGN_KEY="RWT0hFWv57I2RFoJwLVjxEr44JOq/RkEx1oT0IA3PPPICnSF7HFKW1CT"
+ MY_P="0ad-${PV/_/-}"
+ SRC_URI="
+ http://releases.wildfiregames.com/${MY_P}-unix-build.tar.xz
+ https://releases.wildfiregames.com/${MY_P}-unix-data.tar.xz
+ verify-sig? (
+ http://releases.wildfiregames.com/${MY_P}-unix-build.tar.xz.minisig
+ http://releases.wildfiregames.com/${MY_P}-unix-data.tar.xz.minisig
+ )
+ "
S="${WORKDIR}/${MY_P}"
fi
-
-LICENSE="CC-BY-SA-3.0 GPL-2 LGPL-2.1 MIT ZLIB BitstreamVera LPPL-1.3c"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="editor +lobby nvtt pch test"
+IUSE+="editor +lobby nvtt pch test"
+
RESTRICT="test"
+CHECKREQS_DISK_BUILD="9000M" # 8769732 KiB (8.3 GiB) for alpha 25
+CHECKREQS_DISK_USR="3500M" # 3545972 KiB (3.3 GiB)
-# virtual/rust is for bundled SpiderMonkey
-# Build-time Python dependency is for SM too
-# TODO: Unbundle premake5
-# See bug #773472 which may help (bump for it)
+# Premake adds '-s' to some LDFLAGS. Simply sed'ing it out leads to
+# build and/or startup issues.
+QA_PRESTRIPPED="/usr/lib64/0ad/libCollada.so /usr/bin/0ad"
+
+# virtual/rust is for bundled SpiderMonkey.
+# Build-time Python dependency is for SM, too.
BDEPEND="
${PYTHON_DEPS}
+ >=dev-util/premake-5.0.0_alpha12:5
virtual/pkgconfig
virtual/rust
test? ( dev-lang/perl )
"
-# Removed dependency on nvtt as we use the bundled one
+# Upstream uses minisign which is not supported by verify-sign, bug #783066.
+# Signatures are only provided for releases.
+if [[ ( ${PV} != *9999 ) && ( ${PV} != *_p* ) ]]; then
+ BDEPEND+=" app-crypt/minisign"
+fi
+
+# Removed dependency on nvtt as we use the bundled one.
# bug #768930
DEPEND="
dev-libs/boost:=
@@ -66,7 +81,7 @@ DEPEND="
virtual/opengl
x11-libs/libX11
editor? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
- lobby? ( >=net-libs/gloox-1.0.20 )
+ lobby? ( net-libs/gloox )
"
RDEPEND="
${DEPEND}
@@ -74,10 +89,10 @@ RDEPEND="
"
PATCHES=(
- "${FILESDIR}"/${PN}-0.0.24_alpha_pre20210116040036-build.patch
- "${FILESDIR}"/${PN}-0.0.24b_alpha-rust-1.50.patch
"${FILESDIR}"/${PN}-0.0.24b_alpha-respect-tc.patch
- "${FILESDIR}"/${PN}-0.0.24b_alpha-fix-hang-on-quit-without-nvtt.patch
+ "${FILESDIR}"/${PN}-0.0.25b_alpha-fix-setuptools.patch
+ "${FILESDIR}"/${PN}-0.0.25b_alpha-python3.10.patch
+ "${FILESDIR}"/${PN}-0.0.25b_alpha-fix-name-collision-glibc.patch
)
pkg_setup() {
@@ -86,6 +101,30 @@ pkg_setup() {
python-any-r1_pkg_setup
}
+src_unpack() {
+ if [[ ( ${PV} != *9999 ) && ( ${PV} != *_p* ) ]]; then
+ if use verify-sig; then
+ elog "Verifying both signatures using app-crypt/minisign."
+ minisign -V \
+ -P "${MINISIGN_KEY}" \
+ -x "${DISTDIR}/${MY_P}-unix-build.tar.xz.minisig" \
+ -m "${DISTDIR}/${MY_P}-unix-build.tar.xz" \
+ || die "Failed to verify engine distfile using minisign!"
+ minisign -V \
+ -P "${MINISIGN_KEY}" \
+ -x "${DISTDIR}/${MY_P}-unix-data.tar.xz.minisig" \
+ -m "${DISTDIR}/${MY_P}-unix-data.tar.xz" \
+ || die "Failed to verify data distfile using minisign!"
+ fi
+ # Unpack manually until an eclass supports minisign and unpacks
+ # if signatures match.
+ default
+ else
+ # Unpack distfiles without checking as this is no official release.
+ default
+ fi
+}
+
src_prepare() {
default
@@ -98,6 +137,11 @@ src_prepare() {
}
src_configure() {
+ # 0AD uses premake:5 to generate the Makefiles, so let's
+ # 1. configure the configure args,
+ # 2. export some toolchain args,
+ # 3. configure premake args,
+ # 4. run premake5.
local myconf=(
--minimal-flags
$(usex nvtt "" "--without-nvtt")
@@ -112,27 +156,16 @@ src_configure() {
tc-export AR CC CXX RANLIB
- # Stock premake5 does not work, use the shipped one
- # TODO: revisit this, see above BDEPEND note re premake5
- emake -C "${S}"/build/premake/premake5/build/gmake2.unix
-
- # Regenerate scripts.c so our patch applies
- cd "${S}"/build/premake/premake5 || die
- "${S}"/build/premake/premake5/bin/release/premake5 embed || die
-
- # Rebuild premake again
- emake -C "${S}"/build/premake/premake5/build/gmake2.unix clean
- emake -C "${S}"/build/premake/premake5/build/gmake2.unix
-
- # Run premake to create build scripts
- cd "${S}"/build/premake || die
- "${S}"/build/premake/premake5/bin/release/premake5 \
- --file="premake5.lua" \
- --outpath="../workspaces/gcc/" \
- --os=linux \
- "${myconf[@]}" \
- gmake2 \
- || die "Premake failed"
+ local mypremakeargs=(
+ --outpath="../workspace/gcc"
+ --os=linux
+ --verbose
+ )
+
+ cd "${S}/build/premake" || die "Could not enter premake directory"
+
+ /usr/bin/premake5 "${mypremakeargs[@]}" "${myconf[@]}" gmake2 \
+ || die "Premake failed"
}
src_compile() {
@@ -141,7 +174,7 @@ src_compile() {
emake -C libraries/source/fcollada/src
# Build bundled NVTT
- # nvtt is abandoned upstream and 0ad have forked it and added fixes.
+ # nvtt is abandoned upstream and 0ad has forked it and added fixes.
# Use their copy. bug #768930
if use nvtt ; then
cd libraries/source/nvtt || die
@@ -165,7 +198,7 @@ src_compile() {
# Build 0ad itself!
elog "Building 0ad"
- JOBS="-j$(makeopts_jobs)" emake -C build/workspaces/gcc verbose=1
+ JOBS="-j$(makeopts_jobs)" emake -C build/workspace/gcc verbose=1
# Build assets
# (We only do this if we're using a snapshot/non-release)
diff --git a/games-strategy/0ad/0ad-0.0.25b_alpha.ebuild b/games-strategy/0ad/0ad-0.0.25b_alpha.ebuild
index e01f6242d2c..d7b282a68f3 100644
--- a/games-strategy/0ad/0ad-0.0.25b_alpha.ebuild
+++ b/games-strategy/0ad/0ad-0.0.25b_alpha.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2014-2021 Gentoo Authors
+# Copyright 2014-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -90,6 +90,7 @@ RDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-0.0.24b_alpha-respect-tc.patch
+ "${FILESDIR}"/${PN}-0.0.25b_alpha-fix-setuptools.patch
)
pkg_setup() {
diff --git a/games-strategy/0ad/Manifest b/games-strategy/0ad/Manifest
index 923eae80585..afaaebc4f84 100644
--- a/games-strategy/0ad/Manifest
+++ b/games-strategy/0ad/Manifest
@@ -1,5 +1,3 @@
-DIST 0ad-0.0.24b-alpha-unix-build.tar.xz 75546740 BLAKE2B a724abba6bed4b580670588e9dcfe0f75f6cef0fbde6ad666356e96213c685932edd0a1daafb5dd04206870c2c8222340c9c51e83076ec2911cbb5377ca00666 SHA512 8173d393eb1bc57c38bef0076ba973ef46c877c06644365189c0887cd3152adba51d26b553e42221fd14343e9830a3a275bfcd9b28f66281e282ea3f247730ea
-DIST 0ad-0.0.24b-alpha-unix-data.tar.xz 828553992 BLAKE2B 2081225d88d475ed0899648994a900677bc3280bb2ba6cf92354ece82b90ddcefddb48458fa23e2de97100e58f4db8db408d4b50d0306a8c3efe47d263064bf0 SHA512 d7804d25ddf376028f230a31c6fc1201dfa366b3d5434569a1a7852bb4c400fb14e5c8934c5d6c6295320cf2e62c64be83b1e3c4c27fd116115bfe7d01106726
DIST 0ad-0.0.25b-alpha-unix-build.tar.xz 75579956 BLAKE2B 674d69d625137709a186f9273607dc353fc99aea68ef3f2ea5031dbe2f684176910d757c3f03c7fbdac475d30708be448b71f5020d27a65c346bf147223bcb9d SHA512 e8069897b97b381099ab5ec5868d27e96c699105b3307054d1bc7bf9236a537f02625ba9034892d91f3e951b4f95c9ce5fb75ed0a7c14b8a294882482fd9c1b4
DIST 0ad-0.0.25b-alpha-unix-build.tar.xz.minisig 327 BLAKE2B 547a7a1c8a83167fa40976efb2efaf691fc5434eb1be227b481a70d308381b20dcdc90bb4652e190f8e329fb33cc19ebbaab43977329f8971e49436f7f1ce636 SHA512 9d6a235ea50183e1db16f4bf2dc59af9042a52e4e18ccd0c34c481a7e9021f19e2bc370e594aa97911bb7ca33bcc5ebe23a4b206cd74357060371ca06b6010d2
DIST 0ad-0.0.25b-alpha-unix-data.tar.xz 1249684600 BLAKE2B d77546ba9d21b512f106645c07fa92ecc343e0a01d9a70a83f2a2b3ade912e72d095982f7d4c4cd64e18fb71a67a01c419763744dd4cad1e8c081e5f77ec17c9 SHA512 d6bbe484acb7fbd507d303f5c75f8a2ccbaf8fe9dd30ff408b082f170bfd96eb9235db1b710c15656ef465b44fa5597679a694515e0c153a35fe24c0915f29f1
diff --git a/games-strategy/0ad/files/0ad-0.0.24_alpha_pre20210116040036-build.patch b/games-strategy/0ad/files/0ad-0.0.24_alpha_pre20210116040036-build.patch
deleted file mode 100644
index 1e643adb41a..00000000000
--- a/games-strategy/0ad/files/0ad-0.0.24_alpha_pre20210116040036-build.patch
+++ /dev/null
@@ -1,105 +0,0 @@
---- /build/premake/premake5/build/gmake2.bsd/Premake5.make
-+++ /build/premake/premake5/build/gmake2.bsd/Premake5.make
-@@ -36,19 +36,19 @@
- TARGET = $(TARGETDIR)/premake5
- OBJDIR = obj/Release/Premake5
- DEFINES += -DPREMAKE_COMPRESSION -DCURL_STATICLIB -DPREMAKE_CURL -DNDEBUG -DLUA_USE_POSIX -DLUA_USE_DLOPEN
--ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -O3 -Wall -Wextra
--ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -O3 -Wall -Wextra -fno-stack-protector
-+ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
-+ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra -fno-stack-protector
- LIBS += bin/Release/liblua-lib.a bin/Release/libzip-lib.a bin/Release/libzlib-lib.a bin/Release/libcurl-lib.a bin/Release/libmbedtls-lib.a -lm
- LDDEPS += bin/Release/liblua-lib.a bin/Release/libzip-lib.a bin/Release/libzlib-lib.a bin/Release/libcurl-lib.a bin/Release/libmbedtls-lib.a
--ALL_LDFLAGS += $(LDFLAGS) -s -rdynamic
-+ALL_LDFLAGS += $(LDFLAGS) -rdynamic
-
- else ifeq ($(config),debug)
- TARGETDIR = ../../bin/debug
- TARGET = $(TARGETDIR)/premake5
- OBJDIR = obj/Debug/Premake5
- DEFINES += -DPREMAKE_COMPRESSION -DCURL_STATICLIB -DPREMAKE_CURL -D_DEBUG -DLUA_USE_POSIX -DLUA_USE_DLOPEN
--ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -g -Wall -Wextra
--ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -g -Wall -Wextra
-+ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
-+ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
- LIBS += bin/Debug/liblua-lib.a bin/Debug/libzip-lib.a bin/Debug/libzlib-lib.a bin/Debug/libcurl-lib.a bin/Debug/libmbedtls-lib.a -lm
- LDDEPS += bin/Debug/liblua-lib.a bin/Debug/libzip-lib.a bin/Debug/libzlib-lib.a bin/Debug/libcurl-lib.a bin/Debug/libmbedtls-lib.a
- ALL_LDFLAGS += $(LDFLAGS) -rdynamic
---- /build/premake/premake5/build/gmake2.macosx/Premake5.make
-+++ /build/premake/premake5/build/gmake2.macosx/Premake5.make
-@@ -45,8 +45,8 @@
- TARGET = $(TARGETDIR)/premake5
- OBJDIR = obj/Release/Premake5
- DEFINES += -DPREMAKE_COMPRESSION -DCURL_STATICLIB -DPREMAKE_CURL -DNDEBUG -DLUA_USE_MACOSX
--ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -O3 -Wall -Wextra
--ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -O3 -Wall -Wextra -fno-stack-protector
-+ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
-+ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra -fno-stack-protector
- LIBS += bin/Release/liblua-lib.a bin/Release/libzip-lib.a bin/Release/libzlib-lib.a bin/Release/libcurl-lib.a -framework CoreServices -framework Foundation -framework Security -lreadline
- LDDEPS += bin/Release/liblua-lib.a bin/Release/libzip-lib.a bin/Release/libzlib-lib.a bin/Release/libcurl-lib.a
-
-@@ -55,8 +55,8 @@
- TARGET = $(TARGETDIR)/premake5
- OBJDIR = obj/Debug/Premake5
- DEFINES += -DPREMAKE_COMPRESSION -DCURL_STATICLIB -DPREMAKE_CURL -D_DEBUG -DLUA_USE_MACOSX
--ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -g -Wall -Wextra
--ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -g -Wall -Wextra
-+ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
-+ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
- LIBS += bin/Debug/liblua-lib.a bin/Debug/libzip-lib.a bin/Debug/libzlib-lib.a bin/Debug/libcurl-lib.a -framework CoreServices -framework Foundation -framework Security -lreadline
- LDDEPS += bin/Debug/liblua-lib.a bin/Debug/libzip-lib.a bin/Debug/libzlib-lib.a bin/Debug/libcurl-lib.a
-
---- /build/premake/premake5/build/gmake2.unix/Premake5.make
-+++ /build/premake/premake5/build/gmake2.unix/Premake5.make
-@@ -36,19 +36,19 @@
- TARGET = $(TARGETDIR)/premake5
- OBJDIR = obj/Release/Premake5
- DEFINES += -DPREMAKE_COMPRESSION -DCURL_STATICLIB -DPREMAKE_CURL -DNDEBUG -DLUA_USE_POSIX -DLUA_USE_DLOPEN
--ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -O3 -Wall -Wextra
--ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -O3 -Wall -Wextra -fno-stack-protector
-+ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
-+ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra -fno-stack-protector
- LIBS += bin/Release/liblua-lib.a bin/Release/libzip-lib.a bin/Release/libzlib-lib.a bin/Release/libcurl-lib.a bin/Release/libmbedtls-lib.a -lm -ldl -lrt
- LDDEPS += bin/Release/liblua-lib.a bin/Release/libzip-lib.a bin/Release/libzlib-lib.a bin/Release/libcurl-lib.a bin/Release/libmbedtls-lib.a
--ALL_LDFLAGS += $(LDFLAGS) -s -rdynamic
-+ALL_LDFLAGS += $(LDFLAGS) -rdynamic
-
- else ifeq ($(config),debug)
- TARGETDIR = ../../bin/debug
- TARGET = $(TARGETDIR)/premake5
- OBJDIR = obj/Debug/Premake5
- DEFINES += -DPREMAKE_COMPRESSION -DCURL_STATICLIB -DPREMAKE_CURL -D_DEBUG -DLUA_USE_POSIX -DLUA_USE_DLOPEN
--ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -g -Wall -Wextra
--ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -g -Wall -Wextra
-+ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
-+ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -Wall -Wextra
- LIBS += bin/Debug/liblua-lib.a bin/Debug/libzip-lib.a bin/Debug/libzlib-lib.a bin/Debug/libcurl-lib.a bin/Debug/libmbedtls-lib.a -lm -ldl -lrt
- LDDEPS += bin/Debug/liblua-lib.a bin/Debug/libzip-lib.a bin/Debug/libzlib-lib.a bin/Debug/libcurl-lib.a bin/Debug/libmbedtls-lib.a
- ALL_LDFLAGS += $(LDFLAGS) -rdynamic
---- /build/premake/premake5/src/tools/gcc.lua
-+++ /build/premake/premake5/src/tools/gcc.lua
-@@ -346,8 +346,7 @@
- --
-
- function gcc.ldsymbols(cfg)
-- -- OS X has a bug, see http://lists.apple.com/archives/Darwin-dev/2006/Sep/msg00084.html
-- return iif(table.contains(os.getSystemTags(cfg.system), "darwin"), "-Wl,-x", "-s")
-+ return ""
- end
-
- gcc.ldflags = {
---- /libraries/source/fcollada/src/Makefile
-+++ /libraries/source/fcollada/src/Makefile
-@@ -9,9 +9,9 @@
-
- CXX ?= g++
- CXXFLAGS += -fvisibility=hidden -W -Wall -Wno-unused-parameter -Wno-unused-function $(OS_DEFINE) $(PIC_FLAGS) $(CPPFLAGS)
--CXXFLAGS_DEBUG := -O0 -g -D_DEBUG -DRETAIL
--CXXFLAGS_RELEASE := -O2 -DNDEBUG -DRETAIL
--CXXFLAGS_TEST := -O0 -g -D_DEBUG
-+CXXFLAGS_DEBUG := -D_DEBUG -DRETAIL
-+CXXFLAGS_RELEASE := -DNDEBUG -DRETAIL
-+CXXFLAGS_TEST := -D_DEBUG
- LDFLAGS_TEST= -ldl
- LIBS += `pkg-config libxml-2.0 --libs`
- INCLUDES += -IFCollada `pkg-config libxml-2.0 --cflags`
diff --git a/games-strategy/0ad/files/0ad-0.0.24b_alpha-fix-hang-on-quit-without-nvtt.patch b/games-strategy/0ad/files/0ad-0.0.24b_alpha-fix-hang-on-quit-without-nvtt.patch
deleted file mode 100644
index fe054eccac5..00000000000
--- a/games-strategy/0ad/files/0ad-0.0.24b_alpha-fix-hang-on-quit-without-nvtt.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-# Nils Freydank <holgersson@posteo.de> (2021-06-17)
-Apply the patch from upstream with minor adoption.
-
-Gentoo bug: https://bugs.gentoo.org/779757
-Upstream Bug: https://trac.wildfiregames.com/ticket/6107
-Upstream Patch: https://trac.wildfiregames.com/changeset/25766
-
---- a/source/graphics/TextureConverter.cpp (revision 25765)
-+++ b/source/graphics/TextureConverter.cpp (revision 25766)
-@@ -294,9 +294,8 @@
- m_VFS(vfs), m_HighQuality(highQuality), m_Shutdown(false)
- {
-+#if CONFIG2_NVTT
- // Verify that we are running with at least the version we were compiled with,
- // to avoid bugs caused by ABI changes
--#if CONFIG2_NVTT
- ENSURE(nvtt::version() >= NVTT_VERSION);
--#endif
-
- m_WorkerThread = std::thread(Threading::HandleExceptions<RunThread>::Wrapper, this);
-@@ -304,8 +303,10 @@
- // Maybe we should share some centralised pool of worker threads?
- // For now we'll just stick with a single thread for this specific use.
-+#endif // CONFIG2_NVTT
- }
-
- CTextureConverter::~CTextureConverter()
- {
-+#if CONFIG2_NVTT
- // Tell the thread to shut down
- {
-@@ -327,4 +328,5 @@
- // Wait for it to shut down cleanly
- m_WorkerThread.join();
-+#endif // CONFIG2_NVTT
- }
-
-@@ -477,8 +479,8 @@
- return true;
-
--#else
-+#else // CONFIG2_NVTT
- LOGERROR("Failed to convert texture \"%s\" (NVTT not available)", src.string8());
- return false;
--#endif
-+#endif // !CONFIG2_NVTT
- }
-
-@@ -529,22 +531,24 @@
- return true;
-
--#else // #if CONFIG2_NVTT
-+#else // CONFIG2_NVTT
- return false;
--#endif
-+#endif // !CONFIG2_NVTT
- }
-
- bool CTextureConverter::IsBusy()
- {
-+#if CONFIG2_NVTT
- std::lock_guard<std::mutex> lock(m_WorkerMutex);
- return !m_RequestQueue.empty();
-+#else // CONFIG2_NVTT
-+ return false;
-+#endif // !CONFIG2_NVTT
- }
-
- void CTextureConverter::RunThread(CTextureConverter* textureConverter)
- {
-+#if CONFIG2_NVTT
- debug_SetThreadName("TextureConverter");
- g_Profiler2.RegisterCurrentThread("texconv");
--
--#if CONFIG2_NVTT
--
- // Wait until the main thread wakes us up
- while (true)
-@@ -596,4 +600,4 @@
- std::lock_guard<std::mutex> wait_lock(textureConverter->m_WorkerMutex);
- textureConverter->m_Shutdown = false;
--#endif
--}
-+#endif // CONFIG2_NVTT
-+}
-
---- a/source/graphics/TextureConverter.h (revision 25765)
-+++ b/source/graphics/TextureConverter.h (revision 25766)
-@@ -208,7 +208,9 @@
- bool m_HighQuality;
-
-+#if CONFIG2_NVTT
- std::thread m_WorkerThread;
- std::mutex m_WorkerMutex;
- std::condition_variable m_WorkerCV;
-+#endif // CONFIG2_NVTT
-
- struct ConversionRequest;
diff --git a/games-strategy/0ad/files/0ad-0.0.24b_alpha-rust-1.50.patch b/games-strategy/0ad/files/0ad-0.0.24b_alpha-rust-1.50.patch
deleted file mode 100644
index f4436a7b92c..00000000000
--- a/games-strategy/0ad/files/0ad-0.0.24b_alpha-rust-1.50.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-https://bugs.gentoo.org/773493
---- a/libraries/source/spidermonkey/FixRust150.diff
-+++ b/libraries/source/spidermonkey/FixRust150.diff
-@@ -0,0 +1,65 @@
-+
-+# HG changeset patch
-+# User Emilio Cobos Álvarez <emilio@crisal.io>
-+# Date 1609006565 0
-+# Node ID 0e8f444683cb9c4079d3b2250f32f986043ea582
-+# Parent 55097a5cf353f1b2a2228820bdf26bb69a1372a0
-+Bug 1684261 - Fix build with rust nightly. r=jrmuizel, a=RyanVM
-+
-+Fixes errors like:
-+
-+ dependency (nix) specification is ambiguous. Only one of `branch`, `tag` or `rev` is allowed.
-+
-+I've left the most specific dependency, but for wgpu the rev is not
-+right, so I've kept the branch which effectively preserves behavior.
-+
-+Differential Revision: https://phabricator.services.mozilla.com/D100485
-+
-+diff --git a/.cargo/config.in b/.cargo/config.in
-+--- a/.cargo/config.in
-++++ b/.cargo/config.in
-+@@ -1,16 +1,16 @@
-+ # This file contains vendoring instructions for cargo.
-+ # It was generated by `mach vendor rust`.
-+ # Please do not edit.
-+
-+ [source."https://github.com/shravanrn/nix/"]
-+-branch = "r0.13.1"
-+ git = "https://github.com/shravanrn/nix/"
-+ replace-with = "vendored-sources"
-++rev = "4af6c367603869a30fddb5ffb0aba2b9477ba92e"
-+
-+ [source."https://github.com/mozilla/rkv"]
-+ git = "https://github.com/mozilla/rkv"
-+ replace-with = "vendored-sources"
-+ rev = "e3c3388e6632cf55e08d773b32e58b1cab9b2731"
-+
-+ [source."https://github.com/mozilla/neqo"]
-+ git = "https://github.com/mozilla/neqo"
-+diff --git a/Cargo.lock b/Cargo.lock
-+--- a/Cargo.lock
-++++ b/Cargo.lock
-+@@ -3200,7 +3200,7 @@
-+ [[package]]
-+ name = "nix"
-+ version = "0.13.1"
-+-source = "git+https://github.com/shravanrn/nix/?branch=r0.13.1#4af6c367603869a30fddb5ffb0aba2b9477ba92e"
-++source = "git+https://github.com/shravanrn/nix/?rev=4af6c367603869a30fddb5ffb0aba2b9477ba92e#4af6c367603869a30fddb5ffb0aba2b9477ba92e"
-+ dependencies = [
-+ "bitflags",
-+ "cc",
-+diff --git a/Cargo.toml b/Cargo.toml
-+--- a/Cargo.toml
-++++ b/Cargo.toml
-+@@ -60,8 +60,8 @@
-+ [patch.crates-io]
-+ packed_simd = { git = "https://github.com/hsivonen/packed_simd", rev="3541e3818fdc7c2a24f87e3459151a4ce955a67a" }
-+ rlbox_lucet_sandbox = { git = "https://github.com/PLSysSec/rlbox_lucet_sandbox/", rev="d510da5999a744c563b0acd18056069d1698273f" }
-+-nix = { git = "https://github.com/shravanrn/nix/", branch = "r0.13.1", rev="4af6c367603869a30fddb5ffb0aba2b9477ba92e" }
-+-spirv_cross = { git = "https://github.com/kvark/spirv_cross", branch = "wgpu3", rev = "20191ad2f370afd6d247edcb9ff9da32d3bedb9c" }
-++nix = { git = "https://github.com/shravanrn/nix/", rev="4af6c367603869a30fddb5ffb0aba2b9477ba92e" }
-++spirv_cross = { git = "https://github.com/kvark/spirv_cross", branch = "wgpu3" }
-+ # failure's backtrace feature might break our builds, see bug 1608157.
-+ failure = { git = "https://github.com/badboy/failure", rev = "64af847bc5fdcb6d2438bec8a6030812a80519a5" }
-+ failure_derive = { git = "https://github.com/badboy/failure", rev = "64af847bc5fdcb6d2438bec8a6030812a80519a5" }
-+
---- a/libraries/source/spidermonkey/patch.sh
-+++ b/libraries/source/spidermonkey/patch.sh
-@@ -39,6 +39,10 @@
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1536491
- patch -p1 < ../FixRpiUnalignedFpAccess.diff
-
-+# Bug 1684261 upstreamed from 78.8: https://hg.mozilla.org/releases/mozilla-esr78/rev/0e8f444683cb
-+# Note that this isn't quite the upstream patch to match our version.
-+patch -p1 < ../FixRust150.diff
-+
- # Patch those separately, as they might interfere with normal behaviour.
- if [ "$(uname -s)" = "FreeBSD" ];
- then
diff --git a/games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-name-collision-glibc.patch b/games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-name-collision-glibc.patch
new file mode 100644
index 00000000000..e8d88e794c9
--- /dev/null
+++ b/games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-name-collision-glibc.patch
@@ -0,0 +1,131 @@
+https://bugs.gentoo.org/834578
+https://trac.wildfiregames.com/changeset/26536/
+​https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103735
+​https://sourceware.org/bugzilla/show_bug.cgi?id=28713
+--- a/source/tools/atlas/AtlasUI/ScenarioEditor/Sections/Environment/Environment.cpp
++++ b/source/tools/atlas/AtlasUI/ScenarioEditor/Sections/Environment/Environment.cpp
+@@ -1,3 +1,3 @@
+-/* Copyright (C) 2021 Wildfire Games.
++/* Copyright (C) 2022 Wildfire Games.
+ * This file is part of 0 A.D.
+ *
+@@ -30,6 +30,4 @@
+ static Observable<AtlasMessage::sEnvironmentSettings> g_EnvironmentSettings;
+
+-const float M_PIf = 3.14159265f;
+-
+ //////////////////////////////////////////////////////////////////////////
+
+@@ -86,10 +84,13 @@
+ m_Var(var)
+ {
+- m_Conn = g_EnvironmentSettings.RegisterObserver(0, &VariableListBox::OnSettingsChange, this);
++ m_Conn = g_EnvironmentSettings.RegisterObserver(
++ 0, &VariableListBox::OnSettingsChange, this);
+
+ m_Sizer = new wxStaticBoxSizer(wxVERTICAL, this, label);
+ SetSizer(m_Sizer);
+
+- m_Combo = new wxComboBox(this, -1, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxArrayString(), wxCB_READONLY),
++ m_Combo = new wxComboBox(
++ this, -1, wxEmptyString, wxDefaultPosition, wxDefaultSize,
++ wxArrayString(), wxCB_READONLY),
+ m_Sizer->Add(m_Combo, wxSizerFlags().Expand());
+ }
+@@ -207,6 +208,7 @@
+ }
+
+-EnvironmentSidebar::EnvironmentSidebar(ScenarioEditor& scenarioEditor, wxWindow* sidebarContainer, wxWindow* bottomBarContainer)
+-: Sidebar(scenarioEditor, sidebarContainer, bottomBarContainer)
++EnvironmentSidebar::EnvironmentSidebar(
++ ScenarioEditor& scenarioEditor, wxWindow* sidebarContainer, wxWindow* bottomBarContainer)
++ : Sidebar(scenarioEditor, sidebarContainer, bottomBarContainer)
+ {
+ wxSizer* scrollSizer = new wxBoxSizer(wxVERTICAL);
+@@ -218,13 +220,22 @@
+ wxSizer* waterSizer = new wxStaticBoxSizer(wxVERTICAL, scrolledWindow, _T("Water settings"));
+ scrollSizer->Add(waterSizer, wxSizerFlags().Expand());
+- waterSizer->Add(new wxButton(scrolledWindow, ID_RecomputeWaterData, _("Reset Water Data")), wxSizerFlags().Expand());
+- waterSizer->Add(m_WaterTypeList = new VariableListBox(scrolledWindow, _("Water Type"), g_EnvironmentSettings.watertype), wxSizerFlags().Expand());
+- waterSizer->Add(new VariableSliderBox(scrolledWindow, _("Water height"), g_EnvironmentSettings.waterheight, 0.f, 1.2f), wxSizerFlags().Expand());
+- waterSizer->Add(new wxButton(scrolledWindow, ID_PickWaterHeight, _("Pick Water Height")), wxSizerFlags().Expand());
+- waterSizer->Add(new VariableSliderBox(scrolledWindow, _("Water waviness"), g_EnvironmentSettings.waterwaviness, 0.f, 10.f), wxSizerFlags().Expand());
+- waterSizer->Add(new VariableSliderBox(scrolledWindow, _("Water murkiness"), g_EnvironmentSettings.watermurkiness, 0.f, 1.f), wxSizerFlags().Expand());
+- waterSizer->Add(new VariableSliderBox(scrolledWindow, _("Wind angle"), g_EnvironmentSettings.windangle, -M_PIf, M_PIf), wxSizerFlags().Expand());
+- waterSizer->Add(new VariableColorBox(scrolledWindow, _("Water color"), g_EnvironmentSettings.watercolor), wxSizerFlags().Expand());
+- waterSizer->Add(new VariableColorBox(scrolledWindow, _("Water tint"), g_EnvironmentSettings.watertint), wxSizerFlags().Expand());
++ waterSizer->Add(new wxButton(
++ scrolledWindow, ID_RecomputeWaterData, _("Reset Water Data")), wxSizerFlags().Expand());
++ waterSizer->Add(m_WaterTypeList = new VariableListBox(
++ scrolledWindow, _("Water Type"), g_EnvironmentSettings.watertype), wxSizerFlags().Expand());
++ waterSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Water height"), g_EnvironmentSettings.waterheight, 0.f, 1.2f), wxSizerFlags().Expand());
++ waterSizer->Add(new wxButton(
++ scrolledWindow, ID_PickWaterHeight, _("Pick Water Height")), wxSizerFlags().Expand());
++ waterSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Water waviness"), g_EnvironmentSettings.waterwaviness, 0.f, 10.f), wxSizerFlags().Expand());
++ waterSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Water murkiness"), g_EnvironmentSettings.watermurkiness, 0.f, 1.f), wxSizerFlags().Expand());
++ waterSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Wind angle"), g_EnvironmentSettings.windangle, -static_cast<float>(M_PI), static_cast<float>(M_PI)), wxSizerFlags().Expand());
++ waterSizer->Add(new VariableColorBox(
++ scrolledWindow, _("Water color"), g_EnvironmentSettings.watercolor), wxSizerFlags().Expand());
++ waterSizer->Add(new VariableColorBox(
++ scrolledWindow, _("Water tint"), g_EnvironmentSettings.watertint), wxSizerFlags().Expand());
+
+ std::vector<std::wstring> list;
+@@ -236,23 +247,38 @@
+ scrollSizer->Add(sunSizer, wxSizerFlags().Expand().Border(wxTOP, 8));
+
+- sunSizer->Add(new VariableSliderBox(scrolledWindow, _("Sun rotation"), g_EnvironmentSettings.sunrotation, -M_PIf, M_PIf), wxSizerFlags().Expand());
+- sunSizer->Add(new VariableSliderBox(scrolledWindow, _("Sun elevation"), g_EnvironmentSettings.sunelevation, -M_PIf/2, M_PIf/2), wxSizerFlags().Expand());
+- sunSizer->Add(new VariableSliderBox(scrolledWindow, _("Sun overbrightness"), g_EnvironmentSettings.sunoverbrightness, 1.0f, 3.0f), wxSizerFlags().Expand());
+- sunSizer->Add(new LightControl(scrolledWindow, wxSize(150, 150), g_EnvironmentSettings));
+- sunSizer->Add(new VariableColorBox(scrolledWindow, _("Sun color"), g_EnvironmentSettings.suncolor), wxSizerFlags().Expand());
+- sunSizer->Add(m_SkyList = new VariableListBox(scrolledWindow, _("Sky set"), g_EnvironmentSettings.skyset), wxSizerFlags().Expand());
+- sunSizer->Add(new VariableSliderBox(scrolledWindow, _("Fog Factor"), g_EnvironmentSettings.fogfactor, 0.0f, 0.01f), wxSizerFlags().Expand());
+- sunSizer->Add(new VariableSliderBox(scrolledWindow, _("Fog Thickness"), g_EnvironmentSettings.fogmax, 0.5f, 0.0f), wxSizerFlags().Expand());
+- sunSizer->Add(new VariableColorBox(scrolledWindow, _("Fog color"), g_EnvironmentSettings.fogcolor), wxSizerFlags().Expand());
+- sunSizer->Add(new VariableColorBox(scrolledWindow, _("Ambient color"), g_EnvironmentSettings.ambientcolor), wxSizerFlags().Expand());
++ sunSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Sun rotation"), g_EnvironmentSettings.sunrotation, -static_cast<float>(M_PI), static_cast<float>(M_PI)), wxSizerFlags().Expand());
++ sunSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Sun elevation"), g_EnvironmentSettings.sunelevation, -static_cast<float>(M_PI) / 2.0f, static_cast<float>(M_PI) / 2.0f), wxSizerFlags().Expand());
++ sunSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Sun overbrightness"), g_EnvironmentSettings.sunoverbrightness, 1.0f, 3.0f), wxSizerFlags().Expand());
++ sunSizer->Add(new LightControl(
++ scrolledWindow, wxSize(150, 150), g_EnvironmentSettings));
++ sunSizer->Add(new VariableColorBox(
++ scrolledWindow, _("Sun color"), g_EnvironmentSettings.suncolor), wxSizerFlags().Expand());
++ sunSizer->Add(m_SkyList = new VariableListBox(
++ scrolledWindow, _("Sky set"), g_EnvironmentSettings.skyset), wxSizerFlags().Expand());
++ sunSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Fog Factor"), g_EnvironmentSettings.fogfactor, 0.0f, 0.01f), wxSizerFlags().Expand());
++ sunSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Fog Thickness"), g_EnvironmentSettings.fogmax, 0.5f, 0.0f), wxSizerFlags().Expand());
++ sunSizer->Add(new VariableColorBox(
++ scrolledWindow, _("Fog color"), g_EnvironmentSettings.fogcolor), wxSizerFlags().Expand());
++ sunSizer->Add(new VariableColorBox(
++ scrolledWindow, _("Ambient color"), g_EnvironmentSettings.ambientcolor), wxSizerFlags().Expand());
+
+ wxSizer* postProcSizer = new wxStaticBoxSizer(wxVERTICAL, scrolledWindow, _T("Post-processing settings"));
+ scrollSizer->Add(postProcSizer, wxSizerFlags().Expand().Border(wxTOP, 8));
+
+- postProcSizer->Add(m_PostEffectList = new VariableListBox(scrolledWindow, _("Post Effect"), g_EnvironmentSettings.posteffect), wxSizerFlags().Expand());
+- postProcSizer->Add(new VariableSliderBox(scrolledWindow, _("Brightness"), g_EnvironmentSettings.brightness, -0.5f, 0.5f), wxSizerFlags().Expand());
+- postProcSizer->Add(new VariableSliderBox(scrolledWindow, _("Contrast (HDR)"), g_EnvironmentSettings.contrast, 0.5f, 1.5f), wxSizerFlags().Expand());
+- postProcSizer->Add(new VariableSliderBox(scrolledWindow, _("Saturation"), g_EnvironmentSettings.saturation, 0.0f, 2.0f), wxSizerFlags().Expand());
+- postProcSizer->Add(new VariableSliderBox(scrolledWindow, _("Bloom"), g_EnvironmentSettings.bloom, 0.2f, 0.0f), wxSizerFlags().Expand());
++ postProcSizer->Add(m_PostEffectList = new VariableListBox(
++ scrolledWindow, _("Post Effect"), g_EnvironmentSettings.posteffect), wxSizerFlags().Expand());
++ postProcSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Brightness"), g_EnvironmentSettings.brightness, -0.5f, 0.5f), wxSizerFlags().Expand());
++ postProcSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Contrast (HDR)"), g_EnvironmentSettings.contrast, 0.5f, 1.5f), wxSizerFlags().Expand());
++ postProcSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Saturation"), g_EnvironmentSettings.saturation, 0.0f, 2.0f), wxSizerFlags().Expand());
++ postProcSizer->Add(new VariableSliderBox(
++ scrolledWindow, _("Bloom"), g_EnvironmentSettings.bloom, 0.2f, 0.0f), wxSizerFlags().Expand());
+
+ m_Conn = g_EnvironmentSettings.RegisterObserver(0, &SendToGame);
+
diff --git a/games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-setuptools.patch b/games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-setuptools.patch
new file mode 100644
index 00000000000..ea0626fadad
--- /dev/null
+++ b/games-strategy/0ad/files/0ad-0.0.25b_alpha-fix-setuptools.patch
@@ -0,0 +1,188 @@
+https://bugs.gentoo.org/826762
+https://bugzilla.mozilla.org/show_bug.cgi?id=1665675
+https://phabricator.services.mozilla.com/D90627
+--- a/libraries/source/spidermonkey/patch.sh
++++ b/libraries/source/spidermonkey/patch.sh
+@@ -51,5 +51,7 @@ then
+ # https://svnweb.freebsd.org/ports/head/lang/spidermonkey78/files/patch-third__party_rust_cc_.cargo-checksum.json?view=log
+ patch -p1 < ../FixFreeBSDCargoChecksum.diff
+ # https://svnweb.freebsd.org/ports/head/lang/spidermonkey78/files/patch-third__party_rust_cc_src_lib.rs?view=log
+ patch -p1 < ../FixFreeBSDRustThirdPartyOSDetection.diff
+ fi
++
++patch -p1 < ../FixSysconfigImport.diff
+--- a/libraries/source/spidermonkey/FixSysconfigImport.diff
++++ b/libraries/source/spidermonkey/FixSysconfigImport.diff
+@@ -0,0 +1,171 @@
++diff --git a/python/mozbuild/mozbuild/configure/__init__.py b/python/mozbuild/mozbuild/configure/__init__.py
++--- a/python/mozbuild/mozbuild/configure/__init__.py
+++++ b/python/mozbuild/mozbuild/configure/__init__.py
++@@ -877,17 +877,56 @@
++
++ def _apply_imports(self, func, glob):
++ for _from, _import, _as in self._imports.pop(func, ()):
++- _from = '%s.' % _from if _from else ''
++- if _as:
++- glob[_as] = self._get_one_import('%s%s' % (_from, _import))
+++ self._get_one_import(_from, _import, _as, glob)
+++
+++ def _handle_wrapped_import(self, _from, _import, _as, glob):
+++ """Given the name of a module, "import" a mocked package into the glob
+++ iff the module is one that we wrap (either for the sandbox or for the
+++ purpose of testing). Applies if the wrapped module is exposed by an
+++ attribute of `self`.
+++
+++ For example, if the import statement is `from os import environ`, then
+++ this function will set
+++ glob['environ'] = self._wrapped_os.environ.
+++
+++ Iff this function handles the given import, return True.
+++ """
+++ module = (_from or _import).split('.')[0]
+++ attr = '_wrapped_' + module
+++ wrapped = getattr(self, attr, None)
+++ if wrapped:
+++ if _as or _from:
+++ obj = self._recursively_get_property(
+++ module, (_from + '.' if _from else '') + _import, wrapped)
+++ glob[_as or _import] = obj
++ else:
++- what = _import.split('.')[0]
++- glob[what] = self._get_one_import('%s%s' % (_from, what))
+++ glob[module] = wrapped
+++ return True
+++ else:
+++ return False
+++
+++ def _recursively_get_property(self, module, what, wrapped):
+++ """Traverse the wrapper object `wrapped` (which represents the module
+++ `module`) and return the property represented by `what`, which may be a
+++ series of nested attributes.
+++
+++ For example, if `module` is 'os' and `what` is 'os.path.join',
+++ return `wrapped.path.join`.
+++ """
+++ if what == module:
+++ return wrapped
+++ assert what.startswith(module + '.')
+++ attrs = what[len(module + '.'):].split('.')
+++ for attr in attrs:
+++ wrapped = getattr(wrapped, attr)
+++ return wrapped
++
++ @memoized_property
++ def _wrapped_os(self):
++ wrapped_os = {}
++ exec_('from os import *', {}, wrapped_os)
+++ # Special case os and os.environ so that os.environ is our copy of
+++ # the environment.
++ wrapped_os['environ'] = self._environ
++ return ReadOnlyNamespace(**wrapped_os)
++
++@@ -913,57 +952,62 @@
++
++ return ReadOnlyNamespace(**wrapped_subprocess)
++
++- def _get_one_import(self, what):
++- # The special `__sandbox__` module gives access to the sandbox
++- # instance.
++- if what == '__sandbox__':
++- return self
+++ @memoized_property
+++ def _wrapped_six(self):
+++ if six.PY3:
+++ return six
+++ wrapped_six = {}
+++ exec_('from six import *', {}, wrapped_six)
+++ wrapped_six_moves = {}
+++ exec_('from six.moves import *', {}, wrapped_six_moves)
+++ wrapped_six_moves_builtins = {}
+++ exec_('from six.moves.builtins import *', {},
+++ wrapped_six_moves_builtins)
+++
++ # Special case for the open() builtin, because otherwise, using it
++ # fails with "IOError: file() constructor not accessible in
++ # restricted mode". We also make open() look more like python 3's,
++ # decoding to unicode strings unless the mode says otherwise.
++- if what == '__builtin__.open' or what == 'builtins.open':
++- if six.PY3:
++- return open
+++ def wrapped_open(name, mode=None, buffering=None):
+++ args = (name,)
+++ kwargs = {}
+++ if buffering is not None:
+++ kwargs['buffering'] = buffering
+++ if mode is not None:
+++ args += (mode,)
+++ if 'b' in mode:
+++ return open(*args, **kwargs)
+++ kwargs['encoding'] = system_encoding
+++ return codecs.open(*args, **kwargs)
+++
+++ wrapped_six_moves_builtins['open'] = wrapped_open
+++ wrapped_six_moves['builtins'] = ReadOnlyNamespace(
+++ **wrapped_six_moves_builtins)
+++ wrapped_six['moves'] = ReadOnlyNamespace(**wrapped_six_moves)
++
++- def wrapped_open(name, mode=None, buffering=None):
++- args = (name,)
++- kwargs = {}
++- if buffering is not None:
++- kwargs['buffering'] = buffering
++- if mode is not None:
++- args += (mode,)
++- if 'b' in mode:
++- return open(*args, **kwargs)
++- kwargs['encoding'] = system_encoding
++- return codecs.open(*args, **kwargs)
++- return wrapped_open
++- # Special case os and os.environ so that os.environ is our copy of
++- # the environment.
++- if what == 'os.environ':
++- return self._environ
++- if what == 'os':
++- return self._wrapped_os
++- # And subprocess, so that its functions use our os.environ
++- if what == 'subprocess':
++- return self._wrapped_subprocess
++- if what in ('subprocess.call', 'subprocess.check_call',
++- 'subprocess.check_output', 'subprocess.Popen'):
++- return getattr(self._wrapped_subprocess, what[len('subprocess.'):])
+++ return ReadOnlyNamespace(**wrapped_six)
+++
+++ def _get_one_import(self, _from, _import, _as, glob):
+++ """Perform the given import, placing the result into the dict glob."""
+++ if not _from and _import == '__builtin__':
+++ glob[_as or '__builtin__'] = __builtin__
+++ return
+++ if _from == '__builtin__':
+++ _from = 'six.moves.builtins'
+++ # The special `__sandbox__` module gives access to the sandbox
+++ # instance.
+++ if not _from and _import == '__sandbox__':
+++ glob[_as or _import] = self
+++ return
+++ if self._handle_wrapped_import(_from, _import, _as, glob):
+++ return
+++ # If we've gotten this far, we should just do a normal import.
++ # Until this proves to be a performance problem, just construct an
++ # import statement and execute it.
++- import_line = ''
++- if '.' in what:
++- _from, what = what.rsplit('.', 1)
++- if _from == '__builtin__' or _from.startswith('__builtin__.'):
++- _from = _from.replace('__builtin__', 'six.moves.builtins')
++- import_line += 'from %s ' % _from
++- if what == '__builtin__':
++- what = 'six.moves.builtins'
++- import_line += 'import %s as imported' % what
++- glob = {}
+++ import_line = '%simport %s%s' % (
+++ ('from %s ' % _from) if _from else '', _import,
+++ (' as %s' % _as) if _as else '')
++ exec_(import_line, {}, glob)
++- return glob['imported']
++
++ def _resolve_and_set(self, data, name, value, when=None):
++ # Don't set anything when --help was on the command line
+
diff --git a/games-strategy/0ad/files/0ad-0.0.25b_alpha-python3.10.patch b/games-strategy/0ad/files/0ad-0.0.25b_alpha-python3.10.patch
new file mode 100644
index 00000000000..80991e3c7a6
--- /dev/null
+++ b/games-strategy/0ad/files/0ad-0.0.25b_alpha-python3.10.patch
@@ -0,0 +1,156 @@
+https://github.com/0ad/0ad/commit/c2ec217eea6952c4877095969e11900b70c7cda3
+https://bugs.gentoo.org/845987
+
+From: s0600204 <s0600204@3db68df2-c116-0410-a063-a993310a9797>
+Date: Wed, 23 Feb 2022 20:30:38 +0000
+Subject: [PATCH] Fix building spidermonkey on systems with python 3.10
+
+Tested by:
+* Langbart - macOS 10.15.7: `homebrew`ed python 3.9.9 & 3.10.1
+* andy5995 - Manjaro 21.2.3: python 3.10.2
+* s0600204 - ArchLinux: python 3.10.2
+
+Differential Revision: https://code.wildfiregames.com/D4437
+
+
+
+git-svn-id: https://svn.wildfiregames.com/public/ps/trunk@26475 3db68df2-c116-0410-a063-a993310a9797
+--- /dev/null
++++ b/libraries/source/spidermonkey/FixPythonCollectionABC.diff
+@@ -0,0 +1,87 @@
++--- a/python/mach/mach/config.py
+++++ b/python/mach/mach/config.py
++@@ -144,7 +144,7 @@
++ return _
++
++
++-class ConfigSettings(collections.Mapping):
+++class ConfigSettings(collections.abc.Mapping):
++ """Interface for configuration settings.
++
++ This is the main interface to the configuration.
++@@ -190,7 +190,7 @@
++ will result in exceptions being raised.
++ """
++
++- class ConfigSection(collections.MutableMapping, object):
+++ class ConfigSection(collections.abc.MutableMapping, object):
++ """Represents an individual config section."""
++ def __init__(self, config, name, settings):
++ object.__setattr__(self, '_config', config)
++--- a/python/mach/mach/decorators.py
+++++ b/python/mach/mach/decorators.py
++@@ -159,7 +159,7 @@
++ 'Conditions argument must take a list ' + \
++ 'of functions. Found %s instead.'
++
++- if not isinstance(command.conditions, collections.Iterable):
+++ if not isinstance(command.conditions, collections.abc.Iterable):
++ msg = msg % (command.name, type(command.conditions))
++ raise MachError(msg)
++
++--- a/python/mach/mach/main.py
+++++ b/python/mach/mach/main.py
++@@ -16,7 +16,7 @@
++ import sys
++ import traceback
++ import uuid
++-from collections import Iterable
+++from collections.abc import Iterable
++
++ from six import string_types
++
++--- a/python/mozbuild/mozbuild/backend/configenvironment.py
+++++ b/python/mozbuild/mozbuild/backend/configenvironment.py
++@@ -9,7 +9,8 @@
++ import sys
++ import json
++
++-from collections import Iterable, OrderedDict
+++from collections import OrderedDict
+++from collections.abc import Iterable
++ from types import ModuleType
++
++ import mozpack.path as mozpath
++--- a/python/mozbuild/mozbuild/makeutil.py
+++++ b/python/mozbuild/mozbuild/makeutil.py
++@@ -7,7 +7,7 @@
++ import os
++ import re
++ import six
++-from collections import Iterable
+++from collections.abc import Iterable
++
++
++ class Makefile(object):
++--- a/python/mozbuild/mozbuild/util.py
+++++ b/python/mozbuild/mozbuild/util.py
++@@ -782,7 +782,7 @@
++ self._strings = StrictOrderingOnAppendList()
++ self._children = {}
++
++- class StringListAdaptor(collections.Sequence):
+++ class StringListAdaptor(collections.abc.Sequence):
++ def __init__(self, hsl):
++ self._hsl = hsl
++
++--- a/testing/mozbase/manifestparser/manifestparser/filters.py
+++++ b/testing/mozbase/manifestparser/manifestparser/filters.py
++@@ -15,1 +15,2 @@
++-from collections import defaultdict, MutableSequence
+++from collections import defaultdict
+++from collections.abc import MutableSequence
++--- a/third_party/python/pipenv/pipenv/vendor/jinja2/sandbox.py
+++++ b/third_party/python/pipenv/pipenv/vendor/jinja2/sandbox.py
++@@ -82,1 +82,1 @@
++-from collections import MutableSet, MutableMapping, MutableSequence
+++from collections.abc import MutableSet, MutableMapping, MutableSequence
+--- /dev/null
++++ b/libraries/source/spidermonkey/FixVirtualenvForPython310.diff
+@@ -0,0 +1,15 @@
++--- a/third_party/python/virtualenv/virtualenv.py
+++++ b/third_party/python/virtualenv/virtualenv.py
++@@ -1804,7 +1804,11 @@
++ pass
++ else:
++ # noinspection PyProtectedMember
++- if sysconfig._get_default_scheme() == "posix_local":
+++ try: # Python >= 3.10
+++ default_scheme = sysconfig.get_default_scheme()
+++ except: # Python < 3.10
+++ default_scheme = sysconfig._get_default_scheme()
+++ if default_scheme == "posix_local":
++ local_path = os.path.join(home_dir, "local")
++ if not os.path.exists(local_path):
++ os.mkdir(local_path)
+--- a/libraries/source/spidermonkey/patch.sh
++++ b/libraries/source/spidermonkey/patch.sh
+@@ -52,6 +60,11 @@ patch -p1 < ../FixMSVCRootedVoid.diff
+ # so this patches it to an arbitrarily high Mac OS 11
+ patch -p1 < ../FixMacBuild.diff
+
++# In python 3.3, the Collections' Abstract Base Classes were moved from `collections` to
++# `collections.abc`, and aliases were set up for backwards compatibility.
++# In python 3.10, these aliases were removed, requiring all code that used them to update.
++patch -p1 < ../FixPythonCollectionABC.diff
++
+ # Fix FP access breaking compilation on RPI3+
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1526653
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1536491
+
+diff --git a/libraries/source/spidermonkey/patch.sh b/libraries/source/spidermonkey/patch.sh
+index 2a3e165..5dde46f 100644
+--- a/libraries/source/spidermonkey/patch.sh
++++ b/libraries/source/spidermonkey/patch.sh
+@@ -2,6 +2,11 @@
+ # Apply patches if needed
+ # This script gets called from build.sh.
+
++# In python 3.10 `sysconfig._get_default_scheme()` was renamed to
++# `sysconfig.get_default_scheme()`. This breaks the version of
++# `virtualenv` bundled with the spidermonkey source code.
++patch -p1 < ../FixVirtualenvForPython310.diff
++
+ # Mozglue symbols need to be linked against static builds.
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1588340
+ patch -p1 < ../FixMozglue.diff
diff --git a/games-strategy/0ad/metadata.xml b/games-strategy/0ad/metadata.xml
index bc03cc2afd5..c47c262ab26 100644
--- a/games-strategy/0ad/metadata.xml
+++ b/games-strategy/0ad/metadata.xml
@@ -10,7 +10,6 @@
<flag name="lobby">Enable the use of <pkg>net-libs/gloox</pkg>
and the multiplayer lobby</flag>
<flag name="nvtt">Support for some uncompressed data formats
- via <pkg>media-gfx/nvidia-texture-tools</pkg>
(might be needed for some mods)</flag>
</use>
<upstream>
diff --git a/games-strategy/augustus/augustus-3.0.1.ebuild b/games-strategy/augustus/augustus-3.0.1.ebuild
index b14ad8923ee..1adb27ab870 100644
--- a/games-strategy/augustus/augustus-3.0.1.ebuild
+++ b/games-strategy/augustus/augustus-3.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/Keriew/augustus/archive/refs/tags/v${PV}.tar.gz -> $
LICENSE="AGPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
IUSE="uncapped"
DEPEND="
diff --git a/games-strategy/endless-sky/metadata.xml b/games-strategy/endless-sky/metadata.xml
index 6f9e5ee62db..3426d4b5720 100644
--- a/games-strategy/endless-sky/metadata.xml
+++ b/games-strategy/endless-sky/metadata.xml
@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>games@gentoo.org</email>
diff --git a/games-strategy/freeciv/Manifest b/games-strategy/freeciv/Manifest
index d843e0eb465..68270362a7d 100644
--- a/games-strategy/freeciv/Manifest
+++ b/games-strategy/freeciv/Manifest
@@ -1 +1 @@
-DIST freeciv-2.6.4.tar.bz2 52087948 BLAKE2B 00392974707d9a11e626ac7855fcb27780492b7bead020f6849726ad39833d9ada288bad7245664f8446d0905f027dccc205ee6c943361ba9ba455c55c52cd04 SHA512 4dca3a09f4538ce865f5bfef2fa0cdd00b21e30d80bd24343a6d77564bb5239101254155295ccc18593af6f9a32b77ecb8d50c38d0710a37960372e9b1227221
+DIST freeciv-3.0.1.tar.xz 33528292 BLAKE2B e19cae8a02aa4b9afc2895560aa7a8d6135a63a0e757c348a75e72522448a026874f8f0120448b38ca2fee0ecc42dd04d80345d9877554168ad07ca2a20e5dcc SHA512 0f28aa7eb6adc2c4fe2af31265965ec30b4ea4f12121c4240ca896070f4ea574db58f02240e74822b9d498e112bcdb7036bb69f3d0b33cea5fec724e9e47da34
diff --git a/games-strategy/freeciv/freeciv-2.6.4.ebuild b/games-strategy/freeciv/freeciv-3.0.1-r1.ebuild
index e95f07c0ace..01f0ad879e6 100644
--- a/games-strategy/freeciv/freeciv-2.6.4.ebuild
+++ b/games-strategy/freeciv/freeciv-3.0.1-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
LUA_COMPAT=( lua5-3 )
@@ -15,7 +15,7 @@ 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.bz2"
+ SRC_URI="mirror://sourceforge/freeciv/${MY_P}.tar.xz"
KEYWORDS="~amd64 ~ppc64 ~x86"
fi
@@ -25,19 +25,21 @@ IUSE="aimodules auth dedicated +gtk ipv6 mapimg modpack mysql nls qt5 readline s
REQUIRED_USE="system-lua? ( ${LUA_REQUIRED_USE} )"
+# postgres isn't yet really supported by upstream
RDEPEND="
app-arch/bzip2
app-arch/xz-utils
net-misc/curl
+ dev-libs/icu:=
sys-libs/zlib
auth? (
- !mysql? ( ( !sqlite? ( dev-db/mysql-connector-c:0= ) ) )
- mysql? ( dev-db/mysql-connector-c:0= )
+ !mysql? ( ( !sqlite? ( dev-db/mysql-connector-c:= ) ) )
+ mysql? ( dev-db/mysql-connector-c:= )
sqlite? ( dev-db/sqlite:3 )
)
- dedicated? ( aimodules? ( dev-libs/libltdl:0 ) )
+ dedicated? ( aimodules? ( dev-libs/libltdl ) )
!dedicated? (
- media-libs/libpng:0
+ media-libs/libpng
gtk? ( x11-libs/gtk+:3 )
mapimg? ( media-gfx/imagemagick:= )
modpack? ( x11-libs/gtk+:3 )
@@ -54,20 +56,21 @@ RDEPEND="
media-libs/sdl2-image[png]
media-libs/sdl2-ttf
)
- server? ( aimodules? ( sys-devel/libtool:2 ) )
+ server? ( aimodules? ( sys-devel/libtool ) )
sound? (
media-libs/libsdl2[sound]
media-libs/sdl2-mixer[vorbis]
)
)
- readline? ( sys-libs/readline:0= )
+ readline? ( sys-libs/readline:= )
system-lua? ( ${LUA_DEPS} )
"
DEPEND="${RDEPEND}
!dedicated? ( x11-base/xorg-proto )
"
-# postgres isn't yet really supported by upstream
+# Calls gzip during build
BDEPEND="
+ app-arch/gzip
virtual/pkgconfig
!dedicated? ( nls? ( sys-devel/gettext ) )
"
@@ -170,9 +173,13 @@ src_install() {
# 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 classic*.html
+ # 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
diff --git a/games-strategy/freeorion/Manifest b/games-strategy/freeorion/Manifest
index 649be95583b..44124c4f61b 100644
--- a/games-strategy/freeorion/Manifest
+++ b/games-strategy/freeorion/Manifest
@@ -1,2 +1,3 @@
DIST freeorion-0.4.10.1.tar.gz 124693099 BLAKE2B d24c481e7be6f718897bb095209673f24cb7d43842f148cf1e8665254970d22449bf7a4ee4ba7a8cb3b5b515d6bed38a24e2862810959a63b29ba9d3c054e6c4 SHA512 b28a8bdc2428778480ff8404ad7d84153939f4f8b4a75f51775354e3e563f7f309d479e499ea1be8b57822d725cc57ece8dd14f2e40360ab6c07d70c917bc256
DIST freeorion-0.4.10.1_p20200629.tar.gz 142041599 BLAKE2B a9c14409f31f5ad4d8db95fa33e8f1adb35f7b2a74ea7f173365c7d09979b9a3aa7981ee9deec0427c64844da14ecc323ee54e3331217e2978b49eb86a7a18fb SHA512 b2d4f52e968852569d549c03eca2545b7adac560e5716a21da612dc363b23d790c4481fbd5762f1f1f8da9a8e04894e247ce19363cd96cc2001728912e027d9a
+DIST freeorion-0.4.10.2.tar.gz 124720711 BLAKE2B 4f707b5296bdbc05b2b775b62f0393d1770bcf64c48f08d3332fbbb4b78e1bdc3e8111a1e421a8d0f0e03ca7454bba981809b9486d3d803e39faf042f1145059 SHA512 13832992efe17fe48615ccdf284d1e9f391c35ed518abd15276992128a02894f4b30c8fe3d950e41935efb823cf834dc430330f0bcc6c9e91f13a3dea9812628
diff --git a/games-strategy/freeorion/freeorion-0.4.10.2.ebuild b/games-strategy/freeorion/freeorion-0.4.10.2.ebuild
new file mode 100644
index 00000000000..8931083dbe8
--- /dev/null
+++ b/games-strategy/freeorion/freeorion-0.4.10.2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit cmake python-single-r1 xdg
+
+DESCRIPTION="A free turn-based space empire and galactic conquest game"
+HOMEPAGE="https://www.freeorion.org"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/freeorion/freeorion.git"
+else
+ KEYWORDS="~amd64"
+ if [[ ${PV} = *_p* ]]; then
+ COMMIT=""
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${COMMIT}"
+ else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV/_/-}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${PV/_/-}"
+ fi
+fi
+
+LICENSE="GPL-2 LGPL-2.1 CC-BY-SA-3.0"
+SLOT="0"
+IUSE="dedicated"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-libs/boost-1.60:=[nls,python,threads(+),${PYTHON_USEDEP}]
+ ')
+ !dedicated? (
+ media-libs/freealut
+ >=media-libs/freetype-2.5.5
+ media-libs/glew:=
+ >=media-libs/libogg-1.1.3
+ media-libs/libpng:0=
+ media-libs/libsdl2[X,opengl,video]
+ >=media-libs/libvorbis-1.1.2
+ media-libs/openal
+ sci-physics/bullet:=
+ virtual/opengl
+ )
+ sys-libs/zlib
+ ${PYTHON_DEPS}
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ sed -e "s/-O3//" -i CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_BUILD_TYPE=Release
+ -DCMAKE_SKIP_RPATH=ON
+ -DBUILD_HEADLESS="$(usex dedicated)"
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ newenvd "${FILESDIR}/${PN}.envd" 99${PN}
+}
diff --git a/games-strategy/freeorion/freeorion-9999.ebuild b/games-strategy/freeorion/freeorion-9999.ebuild
index 46bf4ce29f6..8931083dbe8 100644
--- a/games-strategy/freeorion/freeorion-9999.ebuild
+++ b/games-strategy/freeorion/freeorion-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python{3_8,3_9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake python-single-r1 xdg
DESCRIPTION="A free turn-based space empire and galactic conquest game"
diff --git a/games-strategy/julius/julius-1.6.0.ebuild b/games-strategy/julius/julius-1.6.0.ebuild
index 31fae63d429..5730e843db2 100644
--- a/games-strategy/julius/julius-1.6.0.ebuild
+++ b/games-strategy/julius/julius-1.6.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/bvschaik/julius/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="AGPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
DEPEND="
media-libs/libpng:=
diff --git a/games-strategy/naev/Manifest b/games-strategy/naev/Manifest
index aaee3d650f8..609d3dd7ae6 100644
--- a/games-strategy/naev/Manifest
+++ b/games-strategy/naev/Manifest
@@ -1,3 +1 @@
-DIST naev-0.8.2-source.tar.gz 394232958 BLAKE2B 2e109636cb1d282bc8236c84ee40b9b96224baf70bf315677b6a02bf9c4c0059d34c5225c31b925a8c66c5995fd9ab8fc022816b66a7e1c174e017e3ebf5e956 SHA512 2ad120639efc13635370bb498d0a4100b2306779cf593e6aecffd331e0f4dec1b8af4729b2c4d484af1be9069d2ac7e47e17ebdc8ce65af878fcff9484f810b0
-DIST naev-0.9.1-source.tar.xz 394715556 BLAKE2B d90cbbc19f10a00060b3ca5ad3f62ef4291e352c7546c11141bd065ebc20efc0f676fb64af1d3dcf43957c62e59819445a5aa0babde579cdb936af136dd538a4 SHA512 d822eb2e22bcb564a0aec38c33205eedacf8399450725fc9709809e0c19a5c426b9a739f9c004691da8bf7b5393d1ed719a36a256a9e3e29d5a0917c9f72bd0f
-DIST naev-0.9.2-source.tar.xz 394764972 BLAKE2B 003a82cfc1fcfb6b597732d2e6691efb0f11867be6d82f7c18bc6c943e9a48dbaa5c126a39740a8d5f7a6e6ac0d3ff2f0b5f6c7c0504787c4d6872543fe99f3d SHA512 2bc31b78ee069d5d5b983e41b456a077101688dee31ad12d54016aa517d6cc3c970c7ff3b4a89b80ab04315e2e227a397c8202e7cbe3ee57cdac6c153032fc29
+DIST naev-0.9.3-source.tar.xz 394876456 BLAKE2B 9648ee9a93a02ec5ace552b25033cae16c38a48a869763bc381050f2724445fd5cf08708053ad4c939cdc99a27244126819e9416bc61d8d6148078eeea26e50e SHA512 150091f10ce05cbd5b2c4c434abe83124db56618b80f727994c135d1331c594406c9e8f03596feddb5739061c866e19b115fd0a86a19ea306cc811bb3dd944aa
diff --git a/games-strategy/naev/metadata.xml b/games-strategy/naev/metadata.xml
index a088fbbc391..9ba85e2d4d3 100644
--- a/games-strategy/naev/metadata.xml
+++ b/games-strategy/naev/metadata.xml
@@ -5,12 +5,6 @@
<email>games@gentoo.org</email>
<name>Gentoo Games Project</name>
</maintainer>
- <use>
- <flag name="mixer">
- Enables <pkg>media-libs/sdl-mixer</pkg> sound backend in addition to
- <pkg>media-libs/openal</pkg> one.
- </flag>
- </use>
<upstream>
<remote-id type="github">naev/naev</remote-id>
</upstream>
diff --git a/games-strategy/naev/naev-0.8.2.ebuild b/games-strategy/naev/naev-0.8.2.ebuild
deleted file mode 100644
index 7289b7904c5..00000000000
--- a/games-strategy/naev/naev-0.8.2.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-LUA_COMPAT=( lua5-1 luajit )
-PYTHON_COMPAT=( python3_{7..10} )
-inherit lua-single meson python-any-r1 virtualx xdg
-
-DESCRIPTION="A 2D space trading and combat game, in a similar vein to Escape Velocity"
-HOMEPAGE="https://naev.org/ https://github.com/naev/naev"
-SRC_URI="https://github.com/naev/naev/releases/download/v${PV}/${P}-source.tar.gz"
-
-LICENSE="GPL-3 public-domain CC-BY-3.0 CC-BY-SA-3.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc +mixer +openal"
-REQUIRED_USE="${LUA_REQUIRED_USE}"
-
-RDEPEND="
- ${LUA_DEPS}
- dev-libs/libzip
- dev-libs/libxml2
- media-libs/libsdl2[opengl,sound,video,X]
- media-libs/libpng:0=
- media-libs/freetype:2
- sci-libs/suitesparse
- virtual/glu
- virtual/libintl
- virtual/opengl
- mixer? ( media-libs/sdl2-mixer )
- openal? (
- media-libs/libvorbis
- media-libs/openal
- )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- ${PYTHON_DEPS}
- sys-devel/gettext
- doc? (
- app-doc/doxygen
- dev-lua/ldoc
- )"
-
-pkg_setup() {
- lua-single_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- default
- sed -i -e "s:lua51:lua5.1:g" meson.build || die
- # meson can't into docdir!
- sed -i -e "s:doc/naev:doc/${PF}:g" meson.build || die
- sed -i -e "s:'doc/naev':get_option('datadir') / 'doc/${PF}':g" docs/meson.build || die
- # remove license file from install
- sed -i -e "/'LICENSE'/d" meson.build || die
-}
-
-src_configure() {
- local emesonargs=(
- $(meson_feature doc docs_c)
- $(meson_feature doc docs_lua)
- $(meson_feature lua_single_target_luajit luajit)
- $(meson_feature openal)
- $(meson_feature mixer sdl_mixer)
- )
- meson_src_configure
-}
-
-src_test() {
- virtx meson_src_test
-}
diff --git a/games-strategy/naev/naev-0.9.1.ebuild b/games-strategy/naev/naev-0.9.1.ebuild
deleted file mode 100644
index e4bd429a52f..00000000000
--- a/games-strategy/naev/naev-0.9.1.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LUA_COMPAT=( lua5-1 luajit )
-PYTHON_COMPAT=( python3_{8..10} )
-inherit lua-single meson python-any-r1 virtualx xdg
-
-DESCRIPTION="2D space trading and combat game, in a similar vein to Escape Velocity"
-HOMEPAGE="https://naev.org/"
-SRC_URI="https://github.com/naev/naev/releases/download/v${PV}/${P}-source.tar.xz"
-
-LICENSE="
- GPL-3+ BSD BSD-2 CC-BY-2.0 CC-BY-3.0 CC-BY-4.0 CC-BY-SA-2.0
- CC-BY-SA-3.0 CC-BY-SA-4.0 CC0-1.0 MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc"
-REQUIRED_USE="${LUA_REQUIRED_USE}"
-
-RDEPEND="
- ${LUA_DEPS}
- dev-games/physfs
- dev-libs/libunibreak:=
- dev-libs/libxml2
- media-libs/freetype:2
- media-libs/libsdl2[X,joystick,opengl,video]
- media-libs/libvorbis
- media-libs/openal
- media-libs/sdl2-image[png,webp]
- sci-libs/cholmod
- sci-libs/cxsparse
- sci-libs/openblas
- sci-libs/suitesparse
- sci-mathematics/glpk:=
- virtual/libintl
- virtual/opengl"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-games/physfs[zip]
- media-libs/mesa[llvm]
- )"
-BDEPEND="
- $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
- sys-devel/gettext
- doc? (
- app-doc/doxygen[dot]
- dev-lua/ldoc
- )"
-
-python_check_deps() {
- has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- lua-single_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- default
-
- sed -i "s/'lua51'/'lua'/" meson.build || die
-}
-
-src_configure() {
- local emesonargs=(
- $(meson_feature doc docs_c)
- $(meson_feature doc docs_lua)
- $(meson_feature lua_single_target_luajit luajit)
- )
-
- meson_src_configure
-}
-
-src_test() {
- virtx meson_src_test
-}
-
-src_install() {
- local DOCS=( CHANGELOG Readme.md )
- meson_src_install
-
- if use doc; then
- mv "${ED}"/usr/{doc/naev/{c,lua},share/doc/${PF}} || die
- rm -r "${ED}"/usr/doc || die
- fi
- rm -r "${ED}"/usr/share/doc/naev || die
-}
diff --git a/games-strategy/naev/naev-0.9.2.ebuild b/games-strategy/naev/naev-0.9.3.ebuild
index 179f379d639..d13f7615980 100644
--- a/games-strategy/naev/naev-0.9.2.ebuild
+++ b/games-strategy/naev/naev-0.9.3.ebuild
@@ -10,6 +10,7 @@ inherit lua-single meson python-any-r1 virtualx xdg
DESCRIPTION="2D space trading and combat game, in a similar vein to Escape Velocity"
HOMEPAGE="https://naev.org/"
SRC_URI="https://github.com/naev/naev/releases/download/v${PV}/${P}-source.tar.xz"
+S="${WORKDIR}/${PN}-0.9.2" # 0.9.3 tarball uses wrong directory
LICENSE="
GPL-3+ BSD BSD-2 CC-BY-2.0 CC-BY-3.0 CC-BY-4.0 CC-BY-SA-2.0
@@ -52,7 +53,7 @@ BDEPEND="
)"
python_check_deps() {
- has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]"
+ python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
}
pkg_setup() {
@@ -85,7 +86,8 @@ src_install() {
meson_src_install
if use doc; then
- mv "${ED}"/usr/{doc/naev/{c,lua},share/doc/${PF}} || die
+ dodir /usr/share/doc/${PF}/html
+ mv "${ED}"/usr/{doc/naev/{c,lua},share/doc/${PF}/html} || die
rm -r "${ED}"/usr/doc || die
fi
rm -r "${ED}"/usr/share/doc/naev || die
diff --git a/games-strategy/s25rttr/Manifest b/games-strategy/s25rttr/Manifest
index 1ff5968c027..f479c8f7612 100644
--- a/games-strategy/s25rttr/Manifest
+++ b/games-strategy/s25rttr/Manifest
@@ -1 +1,2 @@
DIST s25client_src_v0.9.1.tar.gz 31042856 BLAKE2B 296e61467f5ba64f2a833e3f6627844db3757604d9b239d18f3a2b42afc7f46df09ff3b9e8d8a26865e5220f8996b6e78fd4d5fe6252510bbdf8fc238de40bfc SHA512 b7478f76e0246c52a219d9ef5293d56fe682dc87bcd1269d1647417d86c5174632bf05f1fe09e91a9bf9d6738f58e1cac51abdc54df47c00d228687767e19510
+DIST s25client_src_v0.9.5.tar.gz 30305585 BLAKE2B 77857743b5a1693ed373cb048c40fed150a4bf3d59f1314ffbb268f3e03ba8db2f44c20962c390f3a8c5b5b443ee0465d5c7bf726998ddf0334a861304211db8 SHA512 4926653075c7ba01e1e4ca516c52ad1694b46557c40c418e2a1f18d0a8fac9d4b73c20adc5403365ad6ba643823ed23dff5296717b3e057c42b17f1c20feb802
diff --git a/games-strategy/s25rttr/s25rttr-0.9.5.ebuild b/games-strategy/s25rttr/s25rttr-0.9.5.ebuild
new file mode 100644
index 00000000000..465e763ee22
--- /dev/null
+++ b/games-strategy/s25rttr/s25rttr-0.9.5.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-3 )
+
+inherit desktop flag-o-matic lua-single toolchain-funcs xdg cmake
+
+MY_PN="s25client"
+DESCRIPTION="Open source remake of The Settlers II: Gold Edition (needs original data files)"
+HOMEPAGE="https://www.siedler25.org/"
+SRC_URI="https://github.com/Return-To-The-Roots/${MY_PN}/releases/download/v${PV}/${MY_PN}_src_v${PV}.tar.gz"
+LICENSE="GPL-2+ GPL-3 Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+RDEPEND="${LUA_DEPS}
+ app-arch/bzip2
+ >=dev-libs/boost-1.73:0=[nls]
+ >=media-libs/libsamplerate-0.1.9
+ >=media-libs/libsdl2-2.0.10-r2[opengl,sound,video]
+ media-libs/libsndfile
+ media-libs/sdl2-mixer[vorbis,wav]
+ net-libs/miniupnpc
+ virtual/opengl
+"
+
+DEPEND="
+ ${RDEPEND}
+ test? ( >=sys-devel/clang-5 )
+"
+
+BDEPEND="
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.0_pre20200723-cmake_lua_version.patch
+)
+
+S="${WORKDIR}/${MY_PN}_v${PV}"
+
+# Build type is checked but blank is valid.
+CMAKE_BUILD_TYPE=
+
+src_prepare() {
+ cmake_src_prepare
+ rm -v external/{kaguya,libutil}/cmake/FindLua.cmake || die
+}
+
+src_configure() {
+ if [[ -f revision.txt ]]; then
+ local RTTR_REVISION="$(< revision.txt)"
+ elif [[ -n ${COMMIT} ]]; then
+ local RTTR_REVISION="${COMMIT}"
+ else
+ die "Could not determine RTTR_REVISION."
+ fi
+
+ local mycmakeargs=(
+ -DBUILD_TESTING=$(usex test)
+ -DCCACHE_PROGRAM=OFF
+ -DCMAKE_DISABLE_FIND_PACKAGE_ClangFormat=ON
+ -DCMAKE_SKIP_RPATH=ON
+ -DLUA_VERSION=$(lua_get_version)
+ -DRTTR_BUILD_UPDATER=OFF
+ -DRTTR_ENABLE_OPTIMIZATIONS=OFF
+ -DRTTR_ENABLE_SANITIZERS=$(usex test)
+ -DRTTR_ENABLE_WERROR=OFF
+ -DRTTR_INCLUDE_DEVTOOLS=OFF
+ -DRTTR_LIBDIR="$(get_libdir)"
+ -DRTTR_REVISION="${RTTR_REVISION}"
+ -DRTTR_USE_SYSTEM_LIBS=ON
+ -DRTTR_VERSION="${PV##*_pre}" # Tests expect a date for snapshots.
+ )
+
+ if use test && tc-is-gcc; then
+ # Work around libasan and libsandbox both wanting to be first.
+ append-ldflags -static-libasan
+ fi
+
+ cmake_src_configure
+}
+
+src_test() {
+ SDL_AUDIODRIVER=dummy \
+ SDL_VIDEODRIVER=dummy \
+ USER=$(whoami) \
+ cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ doicon -s 64 tools/release/debian/s25rttr.png
+ make_desktop_entry "${MY_PN}" "Return to the Roots"
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if ! has_version -r games-strategy/settlers-2-gold-data; then
+ elog "Install games-strategy/settlers-2-gold-data or manually copy the DATA"
+ elog "and GFX directories from original data files into"
+ elog "${EPREFIX}/usr/share/${PN}/S2."
+ fi
+}
diff --git a/games-strategy/seven-kingdoms/Manifest b/games-strategy/seven-kingdoms/Manifest
index abd9ab4abab..5da492798d5 100644
--- a/games-strategy/seven-kingdoms/Manifest
+++ b/games-strategy/seven-kingdoms/Manifest
@@ -1,2 +1,3 @@
DIST 7kaa-2.15.4p1.tar.xz 46927880 BLAKE2B b32b819bef5918f2de378893224dcb7a27af6afe4e09791d59a2208f92aa8b82f3d9936553734a8b1cdfec93a8cc5562c65a78a15734fa1457dc94a64a49ed93 SHA512 eac0ca91755f828cfc8b0ea07ad1d0c08030c60ac236473992cc7887f8da43a3246a1f375f569e4fc71afaf7c5797ae6911b8b617217077429e5f5c51af4f4b6
+DIST 7kaa-2.15.5.tar.xz 47501772 BLAKE2B 3ab52031d7426485c0ccdb3ae93fde37a97c3aa3ce4f1cb686cf57aca149223b7399cca1439a96e6540de31c126c1c91a42f6635428bd6ea9c1874a38a0538b1 SHA512 12ea1a9d49eb4c7759a34b462ae74dfb46dc4b976096653e122b91572664f50fdda17f3d6d58d700bd5ba28b385e5f9f48b72560f7560a36dfb24d76d5aa7881
DIST 7kaa.png 559 BLAKE2B 0379e60a5355c93cddf2a5f30b5e84711f77df073db4e85eee13d51654180572cd73dc96e8a9b954101e8b0ecacd879d6fa9e57feb70b66d1bdd043d07a40113 SHA512 0ec1ba67107a7823943704879efaf12297c5441c43b54f49684550927b10dc40c657fe93eb7c4cc85208d08194f179c9602fd8df6545776f3e1b4481803b16e6
diff --git a/games-strategy/seven-kingdoms/seven-kingdoms-2.15.5.ebuild b/games-strategy/seven-kingdoms/seven-kingdoms-2.15.5.ebuild
new file mode 100644
index 00000000000..a373d565385
--- /dev/null
+++ b/games-strategy/seven-kingdoms/seven-kingdoms-2.15.5.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs
+
+MY_PN="7kaa"
+MY_PV="$(ver_rs 3- '')"
+MY_P="${MY_PN}-${MY_PV}"
+
+DESCRIPTION="Seven Kingdoms: Ancient Adversaries"
+HOMEPAGE="https://7kfans.com/"
+SRC_URI="https://github.com/the3dfxdude/${MY_PN}/releases/download/v${MY_PV}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~pinkbyte/distfiles/${MY_PN}.png"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+DEPEND="net-libs/enet:1.3=
+ media-libs/libsdl2[X,video]
+ media-libs/openal
+ net-misc/curl"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+ unpack ${MY_P}.tar.xz
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+
+ doicon "${DISTDIR}/${MY_PN}.png"
+ make_desktop_entry "${MY_PN}" "Seven Kingdoms: Ancient Adversaries" "${MY_PN}" "Game;StrategyGame"
+}
diff --git a/games-strategy/triplea/Manifest b/games-strategy/triplea/Manifest
deleted file mode 100644
index 555c3e8aab1..00000000000
--- a/games-strategy/triplea/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST triplea_1_8_0_9_source_code_only.zip 378475905 BLAKE2B b9266467d7a919cc4d6e25d30604a21c738761f4b2a31076fd7e2c98c004c5d7b80c98231d388adae619ce29281eec4a9590c6be31fecdbf547d240f81c8951c SHA512 d117bb85d0136d85c76f091cf3b2a398ad1f8755df2cea02867be36d91c6cc98e0fc713a72a93dc74ec91c7b44959afdad5b136591a25a0080f4eabf3c8bff0d
diff --git a/games-strategy/triplea/files/mkdir.sh b/games-strategy/triplea/files/mkdir.sh
deleted file mode 100644
index f1bd04d125c..00000000000
--- a/games-strategy/triplea/files/mkdir.sh
+++ /dev/null
@@ -1 +0,0 @@
-mkdir -v "${HOME}/.triplea"
diff --git a/games-strategy/triplea/files/paths.patch b/games-strategy/triplea/files/paths.patch
deleted file mode 100644
index f0cd91e3abe..00000000000
--- a/games-strategy/triplea/files/paths.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-diff -Naur a/src/games/strategy/engine/framework/GameRunner2.java b/src/games/strategy/engine/framework/GameRunner2.java
---- a/src/games/strategy/engine/framework/GameRunner2.java 2015-09-02 20:30:04.000000000 +0100
-+++ b/src/games/strategy/engine/framework/GameRunner2.java 2016-10-11 23:08:50.296813567 +0100
-@@ -952,9 +952,9 @@
- // the default
- File rootDir;
- if (GameRunner.isMac()) {
-- rootDir = new File(new File(userHome, "Documents"), "triplea");
-+ rootDir = new File(new File(userHome, "Documents"), ".triplea");
- } else {
-- rootDir = new File(userHome, "triplea");
-+ rootDir = new File(userHome, ".triplea");
- }
- return rootDir;
- }
-diff -Naur a/src/games/strategy/engine/lobby/server/userDB/Database.java b/src/games/strategy/engine/lobby/server/userDB/Database.java
---- a/src/games/strategy/engine/lobby/server/userDB/Database.java 2015-08-19 16:35:06.000000000 +0100
-+++ b/src/games/strategy/engine/lobby/server/userDB/Database.java 2016-10-11 23:08:50.296813567 +0100
-@@ -54,7 +54,7 @@
- if (System.getProperties().containsKey(ServerLauncher.SERVER_ROOT_DIR_PROPERTY)) {
- root = new File(System.getProperties().getProperty(ServerLauncher.SERVER_ROOT_DIR_PROPERTY));
- } else {
-- root = GameRunner2.getRootFolder();
-+ root = GameRunner2.getUserRootFolder();
- }
- if (!root.exists()) {
- throw new IllegalStateException("Root dir does not exist");
-diff -Naur a/src/games/strategy/util/AccessLogFileHandler.java b/src/games/strategy/util/AccessLogFileHandler.java
---- a/src/games/strategy/util/AccessLogFileHandler.java 2015-08-19 16:35:06.000000000 +0100
-+++ b/src/games/strategy/util/AccessLogFileHandler.java 2016-10-11 23:10:31.219309604 +0100
-@@ -12,7 +12,7 @@
- private static final String logFile;
-
- static {
-- final File rootDir = new File(System.getProperty(ServerLauncher.SERVER_ROOT_DIR_PROPERTY, "."));
-+ final File rootDir = new File(System.getProperty(ServerLauncher.SERVER_ROOT_DIR_PROPERTY, games.strategy.engine.framework.GameRunner2.getUserRootFolder().getAbsolutePath()));
- if (!rootDir.exists()) {
- throw new IllegalStateException("no dir called:" + rootDir.getAbsolutePath());
- }
-diff -Naur a/src/games/strategy/util/RotatingLogFileHandlerForHeadlessGameServer.java b/src/games/strategy/util/RotatingLogFileHandlerForHeadlessGameServer.java
---- a/src/games/strategy/util/RotatingLogFileHandlerForHeadlessGameServer.java 2015-08-19 16:35:06.000000000 +0100
-+++ b/src/games/strategy/util/RotatingLogFileHandlerForHeadlessGameServer.java 2016-10-11 23:10:40.227175356 +0100
-@@ -13,7 +13,7 @@
- private static final String logFile;
-
- static {
-- final File rootDir = new File(System.getProperty(ServerLauncher.SERVER_ROOT_DIR_PROPERTY, "."));
-+ final File rootDir = new File(System.getProperty(ServerLauncher.SERVER_ROOT_DIR_PROPERTY, games.strategy.engine.framework.GameRunner2.getUserRootFolder().getAbsolutePath()));
- if (!rootDir.exists()) {
- throw new IllegalStateException("no dir called:" + rootDir.getAbsolutePath());
- }
-diff -Naur a/src/games/strategy/util/RotatingLogFileHandler.java b/src/games/strategy/util/RotatingLogFileHandler.java
---- a/src/games/strategy/util/RotatingLogFileHandler.java 2015-08-19 16:35:06.000000000 +0100
-+++ b/src/games/strategy/util/RotatingLogFileHandler.java 2016-10-11 23:10:46.851076636 +0100
-@@ -12,7 +12,7 @@
- private static final String logFile;
-
- static {
-- final File rootDir = new File(System.getProperty(ServerLauncher.SERVER_ROOT_DIR_PROPERTY, "."));
-+ final File rootDir = new File(System.getProperty(ServerLauncher.SERVER_ROOT_DIR_PROPERTY, games.strategy.engine.framework.GameRunner2.getUserRootFolder().getAbsolutePath()));
- if (!rootDir.exists()) {
- throw new IllegalStateException("no dir called:" + rootDir.getAbsolutePath());
- }
diff --git a/games-strategy/triplea/files/triplea-1.8.0.9-drop-ant-check.patch b/games-strategy/triplea/files/triplea-1.8.0.9-drop-ant-check.patch
deleted file mode 100644
index 2a41521c4ae..00000000000
--- a/games-strategy/triplea/files/triplea-1.8.0.9-drop-ant-check.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Fix version check failure with 1.10.9
---- a/build.xml
-+++ b/build.xml
-@@ -110,25 +110,6 @@
-
- <!--checkBuildEnv -->
- <target name="checkBuildEnv">
-- <!-- Check ant version first (pre-1.6.5 reports java version it was built
-- with, not what it's running under, so an ant built with 1.5 would report
-- that even if it's currently running under < 1.5). 1.6.5 was released in June
-- 2005, so it's fairly unlikely that anyone would be using an older version,
-- but checking it is still a good idea, and it only takes a tiny fraction of
-- a second. -->
-- <fail message="Ant version 1.6.5 or greater is required">
-- <condition>
-- <not>
-- <or>
-- <contains string="${ant.version}" substring="1.6.5" />
-- <contains string="${ant.version}" substring="1.7" />
-- <contains string="${ant.version}" substring="1.8" />
-- <contains string="${ant.version}" substring="1.9" />
-- </or>
-- </not>
-- </condition>
-- </fail>
-- <echo message="${ant.version}" />
- <!-- we require jdk 1.6 or greater -->
- <fail
- message="jdk 1.6 or greater required, you are currently using: ${ant.java.version}">
diff --git a/games-strategy/triplea/files/upnplib.patch b/games-strategy/triplea/files/upnplib.patch
deleted file mode 100644
index f17b7891302..00000000000
--- a/games-strategy/triplea/files/upnplib.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -Naur a/src/games/strategy/net/UniversalPlugAndPlayHelper.java b/src/games/strategy/net/UniversalPlugAndPlayHelper.java
---- a/src/games/strategy/net/UniversalPlugAndPlayHelper.java 2015-08-19 16:35:06.000000000 +0100
-+++ b/src/games/strategy/net/UniversalPlugAndPlayHelper.java 2016-10-11 22:10:37.287834187 +0100
-@@ -166,8 +166,8 @@
- System.out.println("To " + m_local.getHostAddress() + ":" + internalPort);
- boolean mapped = false;
- try {
-- mapped = m_device.addPortMapping("TripleA Game Hosting", "TCP", null, externalPort, m_local.getHostAddress(),
-- internalPort, 0);
-+ mapped = m_device.addPortMapping("TripleA Game Hosting", null, internalPort, externalPort,
-+ m_local.getHostAddress(), 0, "TCP");
- } catch (final IOException e) {
- System.out.println("Port Mapping Failed! Please try to Forward Ports manually! \r\n " + e.getMessage());
- return "Port Mapping Failed! Please try to Forward Ports manually! \r\n " + e.getMessage();
diff --git a/games-strategy/triplea/metadata.xml b/games-strategy/triplea/metadata.xml
deleted file mode 100644
index 65f298ee5bb..00000000000
--- a/games-strategy/triplea/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>games@gentoo.org</email>
- <name>Gentoo Games Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">triplea</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/games-strategy/triplea/triplea-1.8.0.9-r2.ebuild b/games-strategy/triplea/triplea-1.8.0.9-r2.ebuild
deleted file mode 100644
index 32eb7c5cbf3..00000000000
--- a/games-strategy/triplea/triplea-1.8.0.9-r2.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="apple-java-extensions-bin,commons-httpclient-3,oracle-javamail,osgi-core-api,upnplib"
-inherit desktop java-pkg-2 java-ant-2
-
-MY_PV=$(ver_rs 1- _)
-DESCRIPTION="An open source clone of the popular Axis and Allies boardgame"
-HOMEPAGE="http://triplea.sourceforge.net/"
-SRC_URI="mirror://sourceforge/triplea/${PN}_${MY_PV}_source_code_only.zip"
-S="${WORKDIR}"/${PN}_${MY_PV}
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="test" # Needs X11 maybe use virtualx.eclass
-
-DEPEND="
- dev-java/apple-java-extensions-bin:0
- dev-java/commons-httpclient:3
- dev-java/oracle-javamail:0
- dev-java/osgi-core-api:0
- dev-java/upnplib:0
-"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-DEPEND+=" >=virtual/jdk-1.8:*"
-BDEPEND="
- app-arch/unzip
- test? ( dev-java/ant-junit:0 )
-"
-
-PATCHES=(
- # Use ~/.triplea, not ~/triplea.
- # Don't write server files under /usr/share or ${PWD}.
- # Fix to build against our packaged upnplib.
- "${FILESDIR}"/{paths,upnplib}.patch
- # Fix build with newer Ant
- "${FILESDIR}"/${PN}-1.8.0.9-drop-ant-check.patch
-)
-
-src_prepare() {
- default
-
- java-pkg-2_src_prepare
-
- # Remove packaged or unneeded libs. Unfortunately Apache Derby was
- # last-rited due to packaging issues. See bug #561410.
- find lib/* ! -name "derby-*.jar" -delete || die
- rm -r old/ || die
-}
-
-src_compile() {
- eant
- echo "triplea.saveGamesInHomeDir=true" > data/triplea.properties || die
- # The only target creating this is zip which does unjar etc
- jar cf ${PN}.jar -C classes . || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- insinto /usr/share/${PN}
- doins -r assets data dice_servers maps
-
- java-pkg_dojar ${PN}.jar
- java-pkg_newjar lib/derby-*.jar derby.jar
-
- java-pkg_dolauncher ${PN} \
- --main games.strategy.engine.framework.GameRunner \
- --java_args "-Xmx256m"
- java-pkg_dolauncher ${PN}-server -pre "${FILESDIR}"/mkdir.sh \
- --main games.strategy.engine.lobby.server.LobbyServer \
- --java_args "-server -Xmx64m -Dtriplea.lobby.port=3303 -Dtriplea.lobby.console=true"
-
- newicon icons/triplea_icon.png ${PN}.png
- newicon icons/triplea_icon.png ${PN}-server.png
- make_desktop_entry ${PN} TripleA
- make_desktop_entry ${PN}-server TripleA-server
-
- dodoc changelog.txt TripleA_RuleBook.pdf
- docinto html
- dodoc -r doc/* readme.html
-}
diff --git a/games-strategy/ufoai/ufoai-2.5.0_p20180603-r1.ebuild b/games-strategy/ufoai/ufoai-2.5.0_p20180603-r1.ebuild
index dea50098a4c..cd7b93cf6ac 100644
--- a/games-strategy/ufoai/ufoai-2.5.0_p20180603-r1.ebuild
+++ b/games-strategy/ufoai/ufoai-2.5.0_p20180603-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -113,7 +113,7 @@ src_configure() {
echo ./configure "${config[@]}"
- CC=$(tc-getCC) CXX=$(tc-getCXX) \
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
./configure "${config[@]}" || die "configure failed"
}
diff --git a/games-strategy/warzone2100/Manifest b/games-strategy/warzone2100/Manifest
index 8ee4930b788..219d47d7c64 100644
--- a/games-strategy/warzone2100/Manifest
+++ b/games-strategy/warzone2100/Manifest
@@ -1,3 +1,4 @@
DIST warzone2100-4.2.2.tar.xz 338585896 BLAKE2B e90ff6f5843a1750971a2cb7e77aac1e7c03ebeae90ea112d1eb735ea4a9cfee35de860e52f81824cde69543af6172ee630b6451ea39c141c188e4469f9200b9 SHA512 ea02207a27a01114daaf0819a98a63a5189570844dd69f50f493a1caafab7c05d85fb0d5c8a8b1b061ee3a050081e9786a1c090f4490134e93e8bbfa1903bd1b
DIST warzone2100-4.2.4.tar.xz 338685080 BLAKE2B d83fc41d7bb7ff062ca6d3ce924c5e50560737b309db5a31e9fa81ed4dd5c079cf53aed472d1686daaa2e758583e79c3310575191e95d0b01d0f692786ff015f SHA512 26f470c137d9f53b759d182058080a07b7a505aa900fc0e6ff8349783564e0e298216f162032ff43c15f1e5811a8192e161498f87d8cc624a1a653a4044fcfb7
+DIST warzone2100-4.2.6.tar.xz 338691628 BLAKE2B 234d78feb1fceb0eff23c2c1b8d85a5fd9e5ef8912b324ae159ffdb43be728d6e4aa78bdf01561e60c64826083936bc36c2dfd1cee443aed06a52eaa047e8517 SHA512 5cddeff5b66d9e710b0c4d6d2863100106a901c17815220b7a97633a3980be41eaa192921d39bffff60f547fb5f5358fa1e63a54f41b5083203916314bb3d2a1
DIST warzone2100-videos-2.2.wz 571937134 BLAKE2B 60b70a71bd920e2d72ded5d519b17db2f3db4b0289edadeb58059a21aba7038b95219dc44cb807754461d1a9bdca60f0d7698be68622b8bd64a55efa949622d3 SHA512 ca1a1af51296afdaca137114821508c5783f077090e665eae0f6df895855f57c43f84434706309e819417f5f35d1c649bd14e96dc9fbbb1252d30a4f9a223cf6
diff --git a/games-strategy/warzone2100/warzone2100-4.2.6.ebuild b/games-strategy/warzone2100/warzone2100-4.2.6.ebuild
new file mode 100644
index 00000000000..c52979b6546
--- /dev/null
+++ b/games-strategy/warzone2100/warzone2100-4.2.6.ebuild
@@ -0,0 +1,116 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="af_ZA bg_BG ca_ES cs da de el en_GB eo es et_EE fa_IR fi fr fy ga he_IL hr hu id_ID id it ko la lt nb nl pl pt_BR pt ro ru sk sl tr tt_RU uk_UA zh_CN zh_TW"
+inherit cmake plocale xdg
+
+MY_PV=$(ver_cut 1-2)
+VIDEOS_PV=2.2
+VIDEOS_P=${PN}-videos-${VIDEOS_PV}.wz
+DESCRIPTION="3D real-time strategy game"
+HOMEPAGE="https://wz2100.net/"
+SRC_URI="mirror://sourceforge/warzone2100/releases/${PV}/${PN}_src.tar.xz -> ${P}.tar.xz
+ videos? ( mirror://sourceforge/warzone2100/warzone2100/Videos/${VIDEOS_PV}/high-quality-en/sequences.wz -> ${VIDEOS_P} )"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-2+ CC-BY-SA-3.0 public-domain vulkan? ( GPL-3 )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# Upstream requested debug support
+IUSE="debug discord nls videos vulkan"
+
+CDEPEND="
+ >=dev-games/physfs-2[zip]
+ dev-db/sqlite:3
+ >=dev-libs/libsodium-1.0.14:=
+ media-libs/freetype:2
+ media-libs/harfbuzz:=
+ media-libs/libogg
+ media-libs/libpng:=
+ media-libs/libsdl2[opengl,video,X]
+ media-libs/libtheora
+ media-libs/libvorbis
+ media-libs/openal
+ net-libs/miniupnpc:=
+ net-misc/curl
+ sys-libs/zlib
+ nls? ( virtual/libintl )
+ vulkan? ( media-libs/libsdl2:=[vulkan] )
+"
+DEPEND="
+ ${CDEPEND}
+ dev-libs/fribidi
+ media-libs/fontconfig
+"
+RDEPEND="
+ ${CDEPEND}
+ media-fonts/dejavu
+"
+BDEPEND="
+ app-arch/zip
+ app-text/asciidoc
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+"
+
+HTML_DOCS=( doc/quickstartguide.html doc/docbook-xsl.css doc/ScriptingManual.htm )
+DOCS=( README.md doc/images doc/Scripting.md doc/js-globals.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.1.3-no-compress-manpages.patch
+)
+
+src_unpack() {
+ unpack ${P}.tar.xz
+}
+
+src_prepare() {
+ sed -i -e 's/#top_builddir/top_builddir/' po/Makevars || die
+
+ # Delete translations we're not using
+ cleanup_po() {
+ local locale=${1}
+ einfo "Cleaning up disabled locale: ${locale}"
+ rm po/${locale}.po || die
+ }
+
+ plocale_for_each_disabled_locale cleanup_po
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DWZ_DISTRIBUTOR="Gentoo Linux"
+ -DWZ_ENABLE_WARNINGS_AS_ERRORS=OFF
+ -DWZ_ENABLE_BACKEND_VULKAN=$(usex vulkan)
+ -DBUILD_SHARED_LIBS=OFF
+ -DENABLE_NLS=$(usex nls)
+ -DENABLE_DISCORD=$(usex discord)
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ asciidoc -b html5 doc/quickstartguide.asciidoc || die
+}
+
+src_install() {
+ cmake_src_install
+
+ rm "${ED}"/usr/bin/.portable || die
+
+ # We cover licencing within the ebuild itself
+ rm "${ED}"/usr/share/doc/${PF}/COPYING* \
+ "${ED}"/usr/share/doc/${PF}/copyright || die
+
+ if use videos ; then
+ insinto /usr/share/${PN}
+ newins "${DISTDIR}"/${VIDEOS_P} sequences.wz
+ fi
+}
diff --git a/games-strategy/wesnoth/Manifest b/games-strategy/wesnoth/Manifest
index 088b5bb879d..a2c77539980 100644
--- a/games-strategy/wesnoth/Manifest
+++ b/games-strategy/wesnoth/Manifest
@@ -1,3 +1,3 @@
-DIST wesnoth-1.14.14.tar.gz 502931191 BLAKE2B 25bbead74d74bbce9c47b5ac9339fd5b4d996cb9f80137f0b1d9a600c71c82b732ed66937419a4dd59995311685960630415daf3fd3f51e8cf891f29a16ec024 SHA512 3924aa26b59445568472a10c5fe0e1ddf87eb0a878faf2bcc52d4618f5743dfeda103d1f4025f4a129628e6a25f4c16407e968d594769a0751ada2c9a733e2e4
-DIST wesnoth-1.15.15.tar.gz 512968280 BLAKE2B 2b5c979244fb168e674d120a5eeef3905560992a7ca50735ef30918144ad7b21a9d57bef8cf19d564e02226955fb1c6922b27151fef36825a9b06cbe3d9e40ee SHA512 7f59ac11223e6ca93f926ca978638828e366ea2fd75530b317656e5edd8b0f042f86beb57fd17b8cc9b2d3d093d60580cd3449e1c3bf53b8ee37f656df7198a2
-DIST wesnoth-1.16.0.tar.gz 515780018 BLAKE2B 1a9d6aa9b294b9919d3b51528928f43d786f30fda739f0af2e62ebbb210b8f071945fe6130c00e2055d3726ae7eabf63b57fd2f1d5d8981a4cd0feedbfbffbfb SHA512 6d999a99e140916ef2070c524898ef69c7b45b3240f208aa380e81a1d1822a02c05a7fc9c5049a05a230e5126d8ff8723e16b6a62ba532b81c031f78ad8c85fe
+DIST wesnoth-1.16.2.tar.gz 517313669 BLAKE2B b1b9a2795a7a298edd1d952547db518a31f217f983aaf39cdde7a14773f2538485c980205e9242d4a1c8f933011a09a7e858de128c7d17c16c552e34b2a59bf3 SHA512 19cb4c64d9cce780ffbb54e357bf88c3cf2eedc835fab7162bd9caa62485a60ab2a1ba68ab0c4b98dc05bab4fb22889f4a8237b9542baa5478fbda08034d9f66
+DIST wesnoth-1.16.3.tar.gz 518049863 BLAKE2B e862de2e6f71a1dfe11b0cb6343ea1da78c0eb035893d7bd16ca86586b689b21f39b5266ba86476829c1c9005f7abc37058c2f0ac8ea1ae2970d609880e0da20 SHA512 7f37a1a16ed51ffa935a457553b1a3890398b928bb5893720b746080b37a121a86e21ae402bdddfe30572adccf71a985bf1e3223a0eb443bf7a696ee213d9bf0
+DIST wesnoth-1.17.5.tar.bz2 418959651 BLAKE2B 3b6e015192a4050e5d16b25b0e67f91894eeae772125e4bbbefa81082b17fc9c479cf0f4c68d3b74afc5e656c8680319d336d1c14f421f875a64df9b6adbd830 SHA512 7033673f058f3114fcaf9e9b0f5f457c4ed2243fdf04cf80775815d2661bead73d7323c00f4aa678ff82f3d2c23000d81aca97c58f33635060341368ef8c4377
diff --git a/games-strategy/wesnoth/files/wesnoth-1.14.14-ar.patch b/games-strategy/wesnoth/files/wesnoth-1.14.14-ar.patch
deleted file mode 100644
index 4a7c8cf41e7..00000000000
--- a/games-strategy/wesnoth/files/wesnoth-1.14.14-ar.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Leave default AR as is, https://bugs.gentoo.org/732096
-
-diff -r 419bf3de54e5 CMakeLists.txt
---- a/CMakeLists.txt Sat Oct 24 19:50:25 2020 +0000
-+++ b/CMakeLists.txt Sat Oct 24 19:50:53 2020 +0000
-@@ -390,8 +390,6 @@
- MESSAGE("Using ar, ranlib, and default linker")
- find_program(NON_LTO_AR NAMES ar)
- find_program(NON_LTO_RANLIB NAMES ranlib)
-- set(CMAKE_AR "${NON_LTO_AR}" CACHE STRING "Does not support LTO" FORCE)
-- set(CMAKE_RANLIB "${NON_LTO_RANLIB}" CACHE STRING "Does not support LTO" FORCE)
- endif()
- MARK_AS_ADVANCED(LTO_AR LTO_RANLIB NON_LTO_AR NON_LTO_RANLIB)
-
diff --git a/games-strategy/wesnoth/metadata.xml b/games-strategy/wesnoth/metadata.xml
index 55f36d0dfad..42cfc467021 100644
--- a/games-strategy/wesnoth/metadata.xml
+++ b/games-strategy/wesnoth/metadata.xml
@@ -7,7 +7,6 @@
</maintainer>
<use>
<flag name="server">Enable compilation of server</flag>
- <flag name="fribidi">Support for right-to-left languages</flag>
</use>
<upstream>
<remote-id type="sourceforge">wesnoth</remote-id>
diff --git a/games-strategy/wesnoth/wesnoth-1.16.0-r1.ebuild b/games-strategy/wesnoth/wesnoth-1.16.2.ebuild
index 0d53e174d56..17cdd9a055f 100644
--- a/games-strategy/wesnoth/wesnoth-1.16.0-r1.ebuild
+++ b/games-strategy/wesnoth/wesnoth-1.16.2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit cmake flag-o-matic toolchain-funcs xdg
+inherit cmake flag-o-matic xdg
DESCRIPTION="Battle for Wesnoth - A fantasy turn-based strategy game"
HOMEPAGE="http://www.wesnoth.org
@@ -14,7 +14,7 @@ LICENSE="GPL-2"
SLOT="0"
# uneven minor versions are development versions
if [[ $(( $(ver_cut 2) % 2 )) == 0 ]] ; then
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
fi
IUSE="dbus dedicated doc nls server"
@@ -64,10 +64,6 @@ src_prepare() {
src_configure() {
filter-flags -ftracer -fomit-frame-pointer
- if [[ $(gcc-major-version) -eq 3 ]] ; then
- filter-flags -fstack-protector
- append-flags -fno-stack-protector
- fi
if use dedicated || use server ; then
mycmakeargs=(
@@ -97,7 +93,7 @@ src_configure() {
src_install() {
local DOCS=( README.md changelog.md )
cmake_src_install
- if use dedicated || use server; then
+ if use dedicated || use server ; then
rmdir "${ED}"/run{/wesnothd,} || die
newinitd "${FILESDIR}"/wesnothd.rc-r1 wesnothd
fi
diff --git a/games-strategy/wesnoth/wesnoth-1.15.15.ebuild b/games-strategy/wesnoth/wesnoth-1.16.3.ebuild
index c9a69554f39..17cdd9a055f 100644
--- a/games-strategy/wesnoth/wesnoth-1.15.15.ebuild
+++ b/games-strategy/wesnoth/wesnoth-1.16.3.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit cmake flag-o-matic toolchain-funcs xdg
+inherit cmake flag-o-matic xdg
DESCRIPTION="Battle for Wesnoth - A fantasy turn-based strategy game"
HOMEPAGE="http://www.wesnoth.org
@@ -14,14 +14,14 @@ LICENSE="GPL-2"
SLOT="0"
# uneven minor versions are development versions
if [[ $(( $(ver_cut 2) % 2 )) == 0 ]] ; then
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
fi
IUSE="dbus dedicated doc nls server"
RDEPEND="
acct-group/wesnoth
acct-user/wesnoth
- >=dev-libs/boost-1.50:=[nls,threads(+),icu]
+ dev-libs/boost:=[bzip2,context,icu,nls,threads(+)]
>=media-libs/libsdl2-2.0.4:0[joystick,video,X]
!dedicated? (
dev-libs/glib:2
@@ -46,8 +46,6 @@ BDEPEND="
src_prepare() {
cmake_src_prepare
- sed 's@ coroutine@@' -i CMakeLists.txt || die
- sed '/Boost::coroutine/d' -i src/CMakeLists.txt || die
if ! use doc ; then
sed -i \
-e '/manual/d' \
@@ -66,10 +64,6 @@ src_prepare() {
src_configure() {
filter-flags -ftracer -fomit-frame-pointer
- if [[ $(gcc-major-version) -eq 3 ]] ; then
- filter-flags -fstack-protector
- append-flags -fno-stack-protector
- fi
if use dedicated || use server ; then
mycmakeargs=(
@@ -99,8 +93,8 @@ src_configure() {
src_install() {
local DOCS=( README.md changelog.md )
cmake_src_install
- if use dedicated || use server; then
- rmdir "${ED}/run/wesnothd" || die
+ if use dedicated || use server ; then
+ rmdir "${ED}"/run{/wesnothd,} || die
newinitd "${FILESDIR}"/wesnothd.rc-r1 wesnothd
fi
}
diff --git a/games-strategy/wesnoth/wesnoth-1.14.14-r1.ebuild b/games-strategy/wesnoth/wesnoth-1.17.5.ebuild
index 4350dcbc1a9..764fb71cac2 100644
--- a/games-strategy/wesnoth/wesnoth-1.14.14-r1.ebuild
+++ b/games-strategy/wesnoth/wesnoth-1.17.5.ebuild
@@ -1,14 +1,14 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit cmake flag-o-matic toolchain-funcs xdg
+inherit cmake flag-o-matic xdg
DESCRIPTION="Battle for Wesnoth - A fantasy turn-based strategy game"
HOMEPAGE="http://www.wesnoth.org
https://github.com/wesnoth/wesnoth"
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
@@ -16,12 +16,12 @@ SLOT="0"
if [[ $(( $(ver_cut 2) % 2 )) == 0 ]] ; then
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
fi
-IUSE="dbus dedicated doc fribidi nls server"
+IUSE="dbus dedicated doc nls server"
RDEPEND="
acct-group/wesnoth
acct-user/wesnoth
- >=dev-libs/boost-1.50:=[nls,threads(+),icu]
+ dev-libs/boost:=[bzip2,context,icu,nls,threads(+)]
>=media-libs/libsdl2-2.0.4:0[joystick,video,X]
!dedicated? (
dev-libs/glib:2
@@ -29,13 +29,11 @@ RDEPEND="
>=media-libs/fontconfig-2.4.1
>=media-libs/sdl2-image-2.0.0[jpeg,png]
>=media-libs/sdl2-mixer-2.0.0[vorbis]
- >=media-libs/sdl2-ttf-2.0.12
media-libs/libvorbis
>=x11-libs/pango-1.22.0
>=x11-libs/cairo-1.10.0
sys-libs/readline:0=
dbus? ( sys-apps/dbus )
- fribidi? ( dev-libs/fribidi )
)"
DEPEND="${RDEPEND}
x11-libs/libX11
@@ -45,10 +43,6 @@ BDEPEND="
virtual/pkgconfig
"
-PATCHES=(
- "${FILESDIR}/wesnoth-1.14.14-ar.patch"
-)
-
src_prepare() {
cmake_src_prepare
@@ -70,10 +64,6 @@ src_prepare() {
src_configure() {
filter-flags -ftracer -fomit-frame-pointer
- if [[ $(gcc-major-version) -eq 3 ]] ; then
- filter-flags -fstack-protector
- append-flags -fno-stack-protector
- fi
if use dedicated || use server ; then
mycmakeargs=(
@@ -95,7 +85,6 @@ src_configure() {
-DENABLE_DESKTOP_ENTRY="$(usex !dedicated)"
-DENABLE_NLS="$(usex nls)"
-DENABLE_NOTIFICATIONS="$(usex dbus)"
- -DENABLE_FRIBIDI="$(usex fribidi)"
-DENABLE_STRICT_COMPILATION="OFF"
)
cmake_src_configure
@@ -104,8 +93,8 @@ src_configure() {
src_install() {
local DOCS=( README.md changelog.md )
cmake_src_install
- if use dedicated || use server; then
- rmdir "${ED}/run/wesnothd" || die
+ if use dedicated || use server ; then
+ rmdir "${ED}"/run{/wesnothd,} || die
newinitd "${FILESDIR}"/wesnothd.rc-r1 wesnothd
fi
}
diff --git a/games-strategy/widelands/widelands-1.0.ebuild b/games-strategy/widelands/widelands-1.0.ebuild
index 1c8af8b6ba6..6d14e5f8e93 100644
--- a/games-strategy/widelands/widelands-1.0.ebuild
+++ b/games-strategy/widelands/widelands-1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/widelands/widelands.git"
else
SRC_URI="https://github.com/widelands/widelands/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
fi
LICENSE="|| ( Apache-2.0 GPL-3 ) BitstreamVera CC-BY-SA-3.0 GPL-2 GPL-2+ MIT OFL-1.1 ZLIB"