1
0
Fork 0
forked from rpms/0ad

Compare commits

...
Sign in to create a new pull request.

20 commits

Author SHA1 Message Date
Fedora Release Engineering
70ffd6836a Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-16 02:24:58 +00:00
Jonathan Wakely
8ad766b522 Rebuilt for Boost 1.90 2026-01-12 11:57:57 +00:00
Gwyn Ciesla
d8b682c1ba Re-enable ppc64le 2025-10-22 21:56:03 -05:00
František Zatloukal
8bef6214a5 Rebuild for mozjs115 rebuilt with icu 77.1 2025-08-08 09:57:23 +02:00
František Zatloukal
229b20b062 Rebuilt for icu 77.1 2025-08-06 09:52:14 +02:00
Fedora Release Engineering
621e4ab83c Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 15:38:34 +00:00
Gwyn Ciesla
51ba1bc1cb 0.27.1 2025-07-17 13:19:52 -05:00
Gwyn Ciesla
a0cfa8cdd2 0.27.0 2025-07-15 11:56:59 -05:00
Gwyn Ciesla
577118927b miniupnp rebuild 2025-07-14 14:02:22 -05:00
Dennis Gilmore
1585751d94 add patch for audio device crash
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2025-03-14 09:44:55 -05:00
Dennis Gilmore
4a17a1c9bc add patch for audio device crash
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2025-03-14 09:42:39 -05:00
Dennis Gilmore
91751be5d4 Rebuild for updated dependencies.
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2025-02-18 20:25:55 -06:00
Simone Caronni
47e413530f Rebuild for updated dependencies 2025-01-28 12:57:50 +01:00
Fedora Release Engineering
972fb25847 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-20 07:13:16 +00:00
Fedora Release Engineering
3bad16f71b Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 08:18:42 +00:00
Pete Walter
65d0d3464f Rebuild for ICU 76 2024-12-09 13:27:18 +00:00
Simone Caronni
8de28c7253 Add miniupnp 2.2.8 patch from upstream 2024-10-09 00:06:06 +02:00
Simone Caronni
e32d63972d Rebuild for updated miniupnpc 2024-10-08 18:47:53 +02:00
Miroslav Suchý
916aa2aa1f convert license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
2024-09-04 23:03:30 +02:00
Fedora Release Engineering
c42872b73f Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 14:38:47 +00:00
8 changed files with 461 additions and 30 deletions

3
.gitignore vendored
View file

@ -11,3 +11,6 @@
/0ad-0.0.25b-alpha-unix-build.tar.xz
/0ad-0.0.26-alpha-unix-build.tar.xz
/0001-Bug-1654457-Update-virtualenv-to-20.0.31.-r-mhentges.patch
/0ad-0.27.0-unix-build.tar.xz
/0ad-0.27.1-unix-build.tar.xz
/premake-core-5.0.0-beta7.tar.gz

33
0ad-icu76.patch Normal file
View file

@ -0,0 +1,33 @@
From 5643e90b19ea443d69b3d83dab5b79bd2c7ca8db Mon Sep 17 00:00:00 2001
From: Heiko Becker <mail@heiko-becker.de>
Date: Sat, 9 Nov 2024 13:25:52 +0100
Subject: [PATCH] Fix building with ICU >= 76
Since version 76 ICU wants to prevent overlinking [1] and icu-i18n
doesn't add icu-uc to the link interface anymore.
[1] https://github.com/unicode-org/icu/commit/199bc827021ffdb43b6579d68e5eecf54c7f6f56
---
build/premake/extern_libs5.lua | 2 ++
1 file changed, 2 insertions(+)
diff --git a/build/premake/extern_libs5.lua b/build/premake/extern_libs5.lua
index 8bbf808912..de84a8272e 100644
--- a/build/premake/extern_libs5.lua
+++ b/build/premake/extern_libs5.lua
@@ -432,6 +432,7 @@ extern_lib_defs = {
add_default_include_paths("icu")
else
pkgconfig.add_includes("icu-i18n")
+ pkgconfig.add_includes("icu-uc")
end
end,
link_settings = function()
@@ -444,6 +445,7 @@ extern_lib_defs = {
})
else
pkgconfig.add_links("icu-i18n")
+ pkgconfig.add_links("icu-uc")
end
end,
},

37
0ad-miniupnp228.patch Normal file
View file

@ -0,0 +1,37 @@
diff -Naur 0ad-0.0.26-alpha.old/source/network/NetServer.cpp 0ad-0.0.26-alpha/source/network/NetServer.cpp
--- 0ad-0.0.26-alpha.old/source/network/NetServer.cpp 2024-10-08 23:50:11.583206377 +0200
+++ 0ad-0.0.26-alpha/source/network/NetServer.cpp 2024-10-08 23:53:47.161712553 +0200
@@ -302,7 +302,11 @@
else if ((devlist = upnpDiscover(10000, 0, 0, 0, 0, 0)) != NULL)
#endif
{
+#if defined(MINIUPNPC_API_VERSION) && MINIUPNPC_API_VERSION >= 18
+ ret = UPNP_GetValidIGD(devlist, &urls, &data, internalIPAddress, sizeof(internalIPAddress), nullptr, 0);
+#else
ret = UPNP_GetValidIGD(devlist, &urls, &data, internalIPAddress, sizeof(internalIPAddress));
+#endif
allocatedUrls = ret != 0; // urls is allocated on non-zero return values
}
else
@@ -320,10 +324,21 @@
case 1:
LOGMESSAGE("Net server: found valid IGD = %s", urls.controlURL);
break;
+#if defined(MINIUPNPC_API_VERSION) && MINIUPNPC_API_VERSION >= 18
+ case 2:
+ LOGMESSAGE("Net server: found IGD with reserved IP = %s, will try to continue anyway", urls.controlURL);
+ break;
+ case 3:
+#else
case 2:
+#endif
LOGMESSAGE("Net server: found a valid, not connected IGD = %s, will try to continue anyway", urls.controlURL);
break;
+#if defined(MINIUPNPC_API_VERSION) && MINIUPNPC_API_VERSION >= 18
+ case 4:
+#else
case 3:
+#endif
LOGMESSAGE("Net server: found a UPnP device unrecognized as IGD = %s, will try to continue anyway", urls.controlURL);
break;
default:

139
0ad.spec
View file

@ -12,7 +12,7 @@
# Does not build with mozjs-78
# source/scriptinterface/ScriptTypes.h:85:2: error: #error Your compiler is trying to use an untested minor version of the SpiderMonkey library. If you are a package maintainer, please make sure to check very carefully that this version does not change the behaviour of the code executed by SpiderMonkey. Different parts of the game (e.g. the multiplayer mode) rely on deterministic behaviour of the JavaScript engine. A simple way for testing this would be playing a network game with one player using the old version and one player using the new version. Another way for testing is running replays and comparing the final hash (check trac.wildfiregames.com/wiki/Debugging#Replaymode). For more information check this link: trac.wildfiregames.com/wiki/Debugging#Outofsync
%bcond_with system_mozjs78
%bcond_without system_mozjs115
# Remember to rerun licensecheck after every update:
# https://bugzilla.redhat.com/show_bug.cgi?id=818401#c46
@ -26,8 +26,8 @@
%global __requires_exclude ^(libAtlasUI.*\.so|libCollada.*\.so|libmozjs78.*\.so)
Name: 0ad
Version: 0.0.26
Release: 21%{?dist}
Version: 0.27.1
Release: 7%{?dist}
# BSD License:
# build/premake/*
# libraries/source/miniupnpc/* (not built/used)
@ -44,7 +44,8 @@ Release: 21%{?dist}
# source/tools/fontbuilder2/Packer.py
# MPL-2.0
# libraries/source/spidermonkey/* (not built/used)
License: GPLv2+ and BSD and MIT and IBM and MPLv2.0
# Automatically converted from old format: GPLv2+ and BSD and MIT and IBM and MPLv2.0 - review is highly recommended.
License: GPL-2.0-or-later AND LicenseRef-Callaway-BSD AND LicenseRef-Callaway-MIT AND IPL-1.0 AND MPL-2.0
Summary: Cross-Platform RTS Game of Ancient Warfare
Url: http://play0ad.com
@ -56,7 +57,7 @@ Url: http://play0ad.com
# tar Jcf %%{name}-%%{version}-alpha-unix-build.tar.xz %%{name}-%%{version}-alpha
Source0: %{name}-%{version}-alpha-unix-build.tar.xz
%else
Source0: http://releases.wildfiregames.com/%{name}-%{version}-alpha-unix-build.tar.xz
Source0: http://releases.wildfiregames.com/%{name}-%{version}-unix-build.tar.xz
%endif
# Simplify checking differences when updating the package
@ -76,11 +77,14 @@ Source2: %{name}.6
Source3: 0001-Bug-1654457-Update-virtualenv-to-20.0.31.-r-mhentges.patch
Source4: 0001-Python-Build-Use-r-instead-of-rU-file-read-modes.patch
Source5: premake-core-5.0.0-beta7.tar.gz
Requires: %{name}-data = %{version}
Requires: hicolor-icon-theme
BuildRequires: boost-devel
BuildRequires: cmake
BuildRequires: cxxtest
BuildRequires: desktop-file-utils
BuildRequires: enet-devel
BuildRequires: gcc-c++
@ -94,6 +98,7 @@ BuildRequires: libpng-devel
BuildRequires: libsodium-devel
BuildRequires: libvorbis-devel
BuildRequires: libxml2-devel
BuilDrequires: libuuid-devel
BuildRequires: libzip-devel
BuildRequires: make
BuildRequires: miniupnpc-devel
@ -108,7 +113,7 @@ BuildRequires: valgrind-devel
BuildRequires: wxGTK-devel
BuildRequires: /usr/bin/appstream-util
%if %{without system_mozjs78}
%if %{without system_mozjs115}
# bundled mozjs
BuildRequires: pkgconfig(nspr)
BuildRequires: pkgconfig(libffi)
@ -120,7 +125,7 @@ BuildRequires: /usr/bin/zip
# for patching bundled mozjs
BuildRequires: git-core
%else
BuildRequires: pkgconfig(mozjs-78)
BuildRequires: pkgconfig(mozjs-115)
%endif
# bundled mozjs: For build time tests only
@ -129,8 +134,8 @@ BuildRequires: perl-devel
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
%if %{without system_mozjs78}
Provides: bundled(mozjs) = 78
%if %{without system_mozjs115}
Provides: bundled(mozjs) = 115
%endif
# Only do fcollada debug build with enabling debug maintainer mode
@ -143,6 +148,17 @@ Patch5: 0001-Fix-compilation-with-GCC-13.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=2255223
Patch6: 0ad-gcc-14.patch
Patch7: 0001-Fix-build-with-libxml2-v2.12.1.patch
# https://gitea.wildfiregames.com/0ad/0ad/commit/38e3f5cec04f29f747515248ca3f002bd1cc52a8
Patch8: %{name}-miniupnp228.patch
# https://gitea.wildfiregames.com/0ad/0ad/commit/5643e90b19ea443d69b3d83dab5b79bd2c7ca8db
Patch9: 0ad-icu76.patch
# https://gitea.wildfiregames.com/0ad/0ad/pulls/7234
# pulled from https://gitlab.archlinux.org/archlinux/packaging/packages/0ad/-/blob/a26-20/49507c04e027b0d48e050bfc38ae2b631d7403c7.patch
# due to 500 errors upstream
Patch10: 49507c04e027b0d48e050bfc38ae2b631d7403c7.patch
# Re-enable ppc64le
Patch11: 638c04987ef134edea2b87d5f97996219206cebb.patch
Patch12: 59cb3cd67b2b51a5bcc9d052d8d77e2f2a4b89b7.patch
%description
0 A.D. (pronounced "zero ey-dee") is a free, open-source, cross-platform
@ -158,24 +174,31 @@ hobbyist game developers, since 2001.
#-----------------------------------------------------------------------
%prep
%setup -q -n %{name}-%{version}-alpha
%setup -q -n %{name}-%{version}
%if ! %{with debug}
# disable debug build, and "int 0x3" to trap to debugger (x86 only)
%patch -P1 -p0
#%%patch -P1 -p0
%endif
%patch -P2 -p0
#%%patch -P2 -p0
# Patch bundled mozjs for Python 3.11 and setuptools 60+ compatibility
%patch -P3 -p1
sed -e 's|__SOURCE3__|%{SOURCE3}|' \
-e 's|__SOURCE4__|%{SOURCE4}|' \
-i libraries/source/spidermonkey/patch.sh
#%%patch -P3 -p1
#sed -e 's|__SOURCE3__|%{SOURCE3}|' \
# -e 's|__SOURCE4__|%{SOURCE4}|' \
# -i libraries/source/spidermonkey/patch.sh
%patch -P4 -p1
%patch -P5 -p1
%patch -P6 -p1
%patch -P7 -p1
#%%patch -P4 -p1
#%%patch -P5 -p1
#%%patch -P6 -p1
#%%patch -P7 -p1
#%%patch -P8 -p1
#%%patch -P9 -p1
#%%patch -P10 -p1
%patch -P11 -p1
%patch -P12 -p1
cp %{SOURCE5} libraries/source/premake-core/
%if %{with system_nvtt}
rm -fr libraries/source/nvtt
@ -195,11 +218,15 @@ rm -fr libraries/source/valgrind
# https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/243#comment-134252
unset RUSTFLAGS
./libraries/source/premake-core/build.sh
./libraries/source/cxxtest-4.4/build.sh
./libraries/source/fcollada/build.sh
build/workspaces/update-workspaces.sh \
--bindir=%{_bindir} \
--datadir=%{_datadir}/%{name} \
--libdir=%{_libdir}/%{name} \
%if %{with system_mozjs78}
%if %{with system_mozjs115}
--with-system-mozjs \
%endif
%if %{with system_nvtt}
@ -229,11 +256,11 @@ for name in nvcore nvimage nvmath nvtt; do
done
%endif
%if %{without system_mozjs78}
%if %{without system_mozjs115}
%if %{with debug}
name=mozjs78-ps-debug
name=mozjs115-ps-debug
%else
name=mozjs78-ps-release
name=mozjs115-ps-release
%endif
install -p -m 755 binaries/system/lib${name}.so %{buildroot}%{_libdir}/%{name}/lib${name}.so
%endif
@ -261,17 +288,17 @@ export STRIP=/bin/true
#-----------------------------------------------------------------------
%check
# Depends on availablity of nvtt
%if %{with nvtt}
LD_LIBRARY_PATH=binaries/system binaries/system/test%{dbg} -libdir binaries/system
%endif
#%%if %{with nvtt}
#LD_LIBRARY_PATH=binaries/system binaries/system/test%{dbg} -libdir binaries/system
#%%endif
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/0ad.appdata.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop
#-----------------------------------------------------------------------
%files
%doc README.txt
%license LICENSE.txt
%doc README.md
%license LICENSE.md
%license license_gpl-2.0.txt license_lgpl-2.1.txt license_mit.txt
%{_bindir}/0ad
%{_bindir}/pyrogenesis%{dbg}
@ -283,6 +310,60 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop
%{_mandir}/man6/*.6*
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Mon Jan 12 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 0.27.1-6
- Rebuilt for Boost 1.90
* Tue Sep 23 2025 Gwyn Ciesla <gwync@protonmail.com> - 0.27.1-5
- Re-enable ppc64le
* Fri Aug 08 2025 František Zatloukal <fzatlouk@redhat.com> - 0.27.1-4
- Rebuild for mozjs115 rebuilt with icu 77.1
* Wed Aug 06 2025 František Zatloukal <fzatlouk@redhat.com> - 0.27.1-3
- Rebuilt for icu 77.1
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jul 17 2025 Gwyn Ciesla <gwync@protonmail.com> - 0.27.1-1
- 0.27.1
* Mon Jul 14 2025 Gwyn Ciesla <gwync@protonmail.com> - 0.27.0-1
- 0.27.0, drop ppc64le, unsupported by premake.
* Mon Jul 14 2025 Gwyn Ciesla <gwync@protonmail.com> - 0.0.26-31
- miniupnp rebuild.
* Thu Mar 13 2025 Dennis Gilmore <dennis@ausil.us> - 0.0.26-30
- add patch for audio device crash
* Tue Feb 18 2025 Dennis Gilmore <dennis@ausil.us> - 0.0.26-29
- Rebuild for updated dependencies.
* Tue Jan 28 2025 Simone Caronni <negativo17@gmail.com> - 0.0.26-28
- Rebuild for updated dependencies.
* Mon Jan 20 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.26-27
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.26-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Dec 09 2024 Pete Walter <pwalter@fedoraproject.org> - 0.0.26-25
- Rebuild for ICU 76
* Tue Oct 08 2024 Simone Caronni <negativo17@gmail.com> - 0.0.26-24
- Rebuild for updated miniupnpc.
* Wed Sep 04 2024 Miroslav Suchý <msuchy@redhat.com> - 0.0.26-23
- convert license to SPDX
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.26-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Mar 19 2024 Dominik Mierzejewski <dominik@greysector.net> - 0.0.26-21
- Rebuild for gloox 1.0.28

View file

@ -0,0 +1,48 @@
From 49507c04e027b0d48e050bfc38ae2b631d7403c7 Mon Sep 17 00:00:00 2001
From: Ralph Sennhauser <ralph.sennhauser@gmail.com>
Date: Wed, 20 Nov 2024 20:19:36 +0100
Subject: [PATCH] Make failed audio device query non fatal
Querring the audio device name may fail. The name is only used for the
sake of logging it for debugging. Avoid querry failure to be fatal and
insted just log the issue.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
---
source/soundmanager/SoundManager.cpp | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/source/soundmanager/SoundManager.cpp b/source/soundmanager/SoundManager.cpp
index 6cd34f19ac..ed045d8efd 100644
--- a/source/soundmanager/SoundManager.cpp
+++ b/source/soundmanager/SoundManager.cpp
@@ -838,15 +838,23 @@ void CSoundManager::RunHardwareDetection()
else
devices = alcGetString(nullptr, ALC_DEVICE_SPECIFIER);
}
- WARN_IF_FALSE(devices);
m_SoundCardNames.clear();
- do
+ if (devices)
{
- m_SoundCardNames += devices;
- devices += strlen(devices) + 1;
- m_SoundCardNames += "; ";
- } while (*devices);
+ do
+ {
+ m_SoundCardNames += devices;
+ devices += strlen(devices) + 1;
+ m_SoundCardNames += "; ";
+ } while (*devices);
+ }
+ else
+ {
+ const char* failMsg = "Failed to query audio device names";
+ LOGERROR(failMsg);
+ m_SoundCardNames = failMsg;
+ }
// Driver version
const ALCchar* al_version = alGetString(AL_VERSION);

View file

@ -0,0 +1,11 @@
--- 0ad-0.27.1/libraries/source/premake-core/build.sh~ 2025-07-14 09:31:46.000000000 -0500
+++ 0ad-0.27.1/libraries/source/premake-core/build.sh 2025-10-22 13:12:20.324058370 -0500
@@ -8,7 +8,7 @@
cd "$(dirname "$0")"
-PV=5.0.0-beta4
+PV=5.0.0-beta7
LIB_VERSION=${PV}+wfg0
fetch()

View file

@ -0,0 +1,217 @@
From 638c04987ef134edea2b87d5f97996219206cebb Mon Sep 17 00:00:00 2001
From: Ralph Sennhauser <ralph.sennhauser@gmail.com>
Date: Wed, 19 Feb 2025 20:07:09 +0100
Subject: [PATCH] Bump premake to version 5.0.0-beta6
This makes 5.0.0-beta5 the minimally supported version as the gmake2
action was renamed to gmake while gmake was renamed to gmakelegacy. So
from now on gmake action is to be used.
Clear out all old version dependent code.
Fixes: #7789
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
---
build/premake/cxxtest/cxxtest.lua | 6 ++--
build/premake/extern_libs5.lua | 48 ++++----------------------
build/premake/pkgconfig/pkgconfig.lua | 26 +++-----------
build/premake/premake5.lua | 24 ++++++-------
build/workspaces/update-workspaces.sh | 4 +--
libraries/get-windows-libs.bat | 2 +-
libraries/source/premake-core/build.sh | 4 +--
7 files changed, 31 insertions(+), 83 deletions(-)
diff --git a/build/premake/cxxtest/cxxtest.lua b/build/premake/cxxtest/cxxtest.lua
index 70840b70a2..c9e35d5c26 100644
--- a/build/premake/cxxtest/cxxtest.lua
+++ b/build/premake/cxxtest/cxxtest.lua
@@ -41,7 +41,7 @@ function m.init(have_std, have_eh, runner, includes, root_includes)
-- With gmake, create a Utility project that generates the test root file
-- This is a workaround for https://github.com/premake/premake-core/issues/286
- if _ACTION == "gmake2" then
+ if _ACTION == "gmake" then
project "cxxtestroot"
kind "Makefile"
@@ -64,7 +64,7 @@ function m.configure_project(hdrfiles)
-- Generate the root file, or make sure the utility for generating
-- it is a dependancy with gmake.
- if _ACTION == "gmake2" then
+ if _ACTION == "gmake" then
dependson { "cxxtestroot" }
else
prebuildmessage 'Generating test root file'
@@ -92,7 +92,7 @@ function m.configure_project(hdrfiles)
-- Add source files
files { "%{wks.location}/generated/test_root.cpp" }
- if not (_ACTION == "gmake2") then
+ if not (_ACTION == "gmake") then
for _,hdrfile in ipairs(hdrfiles) do
local srcfile = "%{wks.location}/generated/".. path.getbasename(hdrfile) .. ".cpp"
files { srcfile }
diff --git a/build/premake/extern_libs5.lua b/build/premake/extern_libs5.lua
index 575b7f1dc0..b70df7d620 100644
--- a/build/premake/extern_libs5.lua
+++ b/build/premake/extern_libs5.lua
@@ -38,33 +38,15 @@ local function add_source_lib_paths(extern_lib)
end
local function add_default_include_paths(extern_lib)
- -- As of premake5-beta2, `sysincludedirs` has been deprecated in favour of
- -- `externalincludedirs`, and continuing to use it causes warnings to be emitted.
- --
- -- We use `externalincludedirs` when available to prevent the warnings, falling back
- -- to `sysincludedirs` when not to prevent breakage of the `--with-system-premake5`
- -- build argument.
- if externalincludedirs then
- externalincludedirs { libraries_dir .. extern_lib .. "/include" }
- else
- sysincludedirs { libraries_dir .. extern_lib .. "/include" }
- end
+ externalincludedirs { libraries_dir .. extern_lib .. "/include" }
end
local function add_source_include_paths(extern_lib)
- if externalincludedirs then
- externalincludedirs { libraries_source_dir .. extern_lib .. "/include" }
- else
- sysincludedirs { libraries_source_dir .. extern_lib .. "/include" }
- end
+ externalincludedirs { libraries_source_dir .. extern_lib .. "/include" }
end
local function add_third_party_include_paths(extern_lib)
- if externalincludedirs then
- externalincludedirs { third_party_source_dir .. extern_lib .. "/include" }
- else
- sysincludedirs { third_party_source_dir .. extern_lib .. "/include" }
- end
+ externalincludedirs { third_party_source_dir .. extern_lib .. "/include" }
end
local function wx_config_path()
@@ -239,11 +221,7 @@ extern_lib_defs = {
end
-- TODO: This actually applies to most libraries we use on BSDs, make this a global setting.
if os.istarget("bsd") then
- if externalincludedirs then
- externalincludedirs { "/usr/local/include" }
- else
- sysincludedirs { "/usr/local/include" }
- end
+ externalincludedirs { "/usr/local/include" }
end
end,
link_settings = function()
@@ -274,11 +252,7 @@ extern_lib_defs = {
cxxtest = {
compile_settings = function()
if not _OPTIONS["with-system-cxxtest"] then
- if externalincludedirs then
- externalincludedirs { libraries_source_dir .. "cxxtest-4.4" }
- else
- sysincludedirs { libraries_source_dir .. "cxxtest-4.4" }
- end
+ externalincludedirs { libraries_source_dir .. "cxxtest-4.4" }
-- Upstream uses WIN32 instead of _WIN32 define
if os.istarget("windows") then
defines { "WIN32" }
@@ -658,18 +632,10 @@ extern_lib_defs = {
end
else
filter "Debug"
- if externalincludedirs then
- externalincludedirs { libraries_source_dir.."spidermonkey/include-debug" }
- else
- sysincludedirs { libraries_source_dir.."spidermonkey/include-debug" }
- end
+ externalincludedirs { libraries_source_dir.."spidermonkey/include-debug" }
defines { "DEBUG" }
filter "Release"
- if externalincludedirs then
- externalincludedirs { libraries_source_dir.."spidermonkey/include-release" }
- else
- sysincludedirs { libraries_source_dir.."spidermonkey/include-release" }
- end
+ externalincludedirs { libraries_source_dir.."spidermonkey/include-release" }
filter { }
end
end,
diff --git a/build/premake/pkgconfig/pkgconfig.lua b/build/premake/pkgconfig/pkgconfig.lua
index 28d20490bd..1f06c8b0ad 100644
--- a/build/premake/pkgconfig/pkgconfig.lua
+++ b/build/premake/pkgconfig/pkgconfig.lua
@@ -47,33 +47,17 @@ end
function m.add_includes(lib, alternative_cmd, alternative_flags)
local dirs, files, options = parse_pkg_config_includes(lib, alternative_cmd, alternative_flags)
- -- As of premake5-beta2, `sysincludedirs` has been deprecated in favour of
- -- `externalincludedirs`, and continuing to use it causes warnings to be emitted.
- -- We use `externalincludedirs` when available to prevent the warnings, falling back
- -- to `sysincludedirs` when not to prevent breakage of the `--with-system-premake5`
- -- build argument.
- if externalincludedirs then
- externalincludedirs(dirs)
- else
- sysincludedirs(dirs)
- end
-
+ externalincludedirs(dirs)
forceincludes(files)
buildoptions(options)
end
function m.add_includes_after(lib, alternative_cmd, alternative_flags)
- -- Support for includedirsafter was added after the 5.0.0-beta2 release.
- -- Fall back if unavailable to support `--with-system-premake5`
- if includedirsafter then
- local dirs, files, options = parse_pkg_config_includes(lib, alternative_cmd, alternative_flags)
+ local dirs, files, options = parse_pkg_config_includes(lib, alternative_cmd, alternative_flags)
- includedirsafter(dirs)
- forceincludes(files)
- buildoptions(options)
- else
- m.add_includes(lib, alternative_cmd, alternative_flags)
- end
+ includedirsafter(dirs)
+ forceincludes(files)
+ buildoptions(options)
end
function m.add_links(lib, alternative_cmd, alternative_flags)
diff --git a/build/workspaces/update-workspaces.sh b/build/workspaces/update-workspaces.sh
index 566546e344..c5a5fb89cd 100755
--- a/build/workspaces/update-workspaces.sh
+++ b/build/workspaces/update-workspaces.sh
@@ -48,10 +48,10 @@ export HOSTTYPE="$HOSTTYPE"
echo "Premake args: ${premake_args}"
if [ "$OS" != "Darwin" ]; then
# shellcheck disable=SC2086
- ${premake_command} --file="premake5.lua" --outpath="../workspaces/gcc/" ${premake_args} gmake2 || die "Premake failed"
+ ${premake_command} --file="premake5.lua" --outpath="../workspaces/gcc/" ${premake_args} gmake || die "Premake failed"
else
# shellcheck disable=SC2086
- ${premake_command} --file="premake5.lua" --outpath="../workspaces/gcc/" --macosx-version-min="${MIN_OSX_VERSION}" ${premake_args} gmake2 || die "Premake failed"
+ ${premake_command} --file="premake5.lua" --outpath="../workspaces/gcc/" --macosx-version-min="${MIN_OSX_VERSION}" ${premake_args} gmake || die "Premake failed"
# Also generate xcode workspaces if on OS X
# shellcheck disable=SC2086
${premake_command} --file="premake5.lua" --outpath="../workspaces/xcode4" --macosx-version-min="${MIN_OSX_VERSION}" ${premake_args} xcode4 || die "Premake failed"
--- 0ad-0.27.1/build/premake/premake5.lua~ 2025-07-14 09:31:46.000000000 -0500
+++ 0ad-0.27.1/build/premake/premake5.lua 2025-10-22 15:09:46.033963492 -0500
@@ -28,12 +28,6 @@
newoption { trigger = "datadir", description = "Directory for data files (typically '/usr/share/games/0ad'); default is ../data/ relative to executable" }
newoption { trigger = "libdir", description = "Directory for libraries (typically '/usr/lib/games/0ad'); default is ./ relative to executable" }
-if _ACTION == "gmake" then
- print("Premake action 'gmake' is no longer supported by pyrogenesis, use 'gmake2'")
- print("Example: 'premake5 --file=build/premake/premake5.lua gmake2'")
- os.exit(1)
-end
-
-- On Windows check if wxWidgets is available, if not disable atlas and emit warning.
-- This is because there are currently not prebuilt binaries provided.
if not _OPTIONS["without-atlas"] and os.istarget("windows") then

View file

@ -1,2 +1,3 @@
SHA512 (0ad-0.0.26-alpha-unix-build.tar.xz) = aaf647d5d8454c244015d2a198beeaaebc571a5bc96446f3acff8dbd05f9843029c500bf4162651a5e1fcdb42bd5fb5b4f5c512c78372479fbd8565dd093f272
SHA512 (0ad-0.27.1-unix-build.tar.xz) = 7ddc355afed44511f3c62bb4119e308f921fc9624980a3171853d923042777eeb248a1ce326d3768f23596d75e8346025321d7d72d6fa3b1106a5818ca62b40d
SHA512 (0001-Bug-1654457-Update-virtualenv-to-20.0.31.-r-mhentges.patch) = 0b9107cc6d5abc57f1a63dec435e1e5e836caeb0a27e32e77c2d60f67fd598c195e93540139ebf1a9bbaabf84b9ece2986282c829a7c056384e54e2dece2532d
SHA512 (premake-core-5.0.0-beta7.tar.gz) = b6ed480c85db82d749b22b1b97537da525d8eb062514766393c1ff4fc8077289c0037200b7bc260754f320fd5d9c109cb56adbaeec59d485cd95728564927499