From 621e4ab83cfaa8213855d0d476df47245033e29d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 15:38:34 +0000 Subject: [PATCH 1/6] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- 0ad.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/0ad.spec b/0ad.spec index 2deac95..d36da3a 100644 --- a/0ad.spec +++ b/0ad.spec @@ -27,7 +27,7 @@ Name: 0ad Version: 0.27.1 -Release: 1%{?dist} +Release: 2%{?dist} # BSD License: # build/premake/* # libraries/source/miniupnpc/* (not built/used) @@ -301,6 +301,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop %{_mandir}/man6/*.6* %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 0.27.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Jul 17 2025 Gwyn Ciesla - 0.27.1-1 - 0.27.1 From 229b20b062f7733558d1e43866ed8164531f4374 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= Date: Wed, 6 Aug 2025 09:52:14 +0200 Subject: [PATCH 2/6] Rebuilt for icu 77.1 --- 0ad.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/0ad.spec b/0ad.spec index d36da3a..cc5fcdf 100644 --- a/0ad.spec +++ b/0ad.spec @@ -27,7 +27,7 @@ Name: 0ad Version: 0.27.1 -Release: 2%{?dist} +Release: 3%{?dist} # BSD License: # build/premake/* # libraries/source/miniupnpc/* (not built/used) @@ -301,6 +301,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop %{_mandir}/man6/*.6* %changelog +* Wed Aug 06 2025 František Zatloukal - 0.27.1-3 +- Rebuilt for icu 77.1 + * Wed Jul 23 2025 Fedora Release Engineering - 0.27.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 8bef6214a556bb5759e7d24d4bd2f9c120aa4210 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= Date: Fri, 8 Aug 2025 09:57:23 +0200 Subject: [PATCH 3/6] Rebuild for mozjs115 rebuilt with icu 77.1 --- 0ad.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/0ad.spec b/0ad.spec index cc5fcdf..a21257c 100644 --- a/0ad.spec +++ b/0ad.spec @@ -27,7 +27,7 @@ Name: 0ad Version: 0.27.1 -Release: 3%{?dist} +Release: 4%{?dist} # BSD License: # build/premake/* # libraries/source/miniupnpc/* (not built/used) @@ -301,6 +301,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop %{_mandir}/man6/*.6* %changelog +* Fri Aug 08 2025 František Zatloukal - 0.27.1-4 +- Rebuild for mozjs115 rebuilt with icu 77.1 + * Wed Aug 06 2025 František Zatloukal - 0.27.1-3 - Rebuilt for icu 77.1 From d8b682c1bafb5a6d214fdff807007a51c0c9eaab Mon Sep 17 00:00:00 2001 From: Gwyn Ciesla Date: Wed, 22 Oct 2025 21:56:03 -0500 Subject: [PATCH 4/6] Re-enable ppc64le --- .gitignore | 1 + 0ad.spec | 16 +- ...3cd67b2b51a5bcc9d052d8d77e2f2a4b89b7.patch | 11 + ...04987ef134edea2b87d5f97996219206cebb.patch | 217 ++++++++++++++++++ sources | 1 + 5 files changed, 244 insertions(+), 2 deletions(-) create mode 100644 59cb3cd67b2b51a5bcc9d052d8d77e2f2a4b89b7.patch create mode 100644 638c04987ef134edea2b87d5f97996219206cebb.patch diff --git a/.gitignore b/.gitignore index 3b3d5d1..4c581ab 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ /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 diff --git a/0ad.spec b/0ad.spec index a21257c..2feb805 100644 --- a/0ad.spec +++ b/0ad.spec @@ -27,7 +27,7 @@ Name: 0ad Version: 0.27.1 -Release: 4%{?dist} +Release: 5%{?dist} # BSD License: # build/premake/* # libraries/source/miniupnpc/* (not built/used) @@ -77,6 +77,8 @@ 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 @@ -130,7 +132,7 @@ BuildRequires: pkgconfig(mozjs-115) BuildRequires: python3.11-devel BuildRequires: perl-devel -ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 +ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le %if %{without system_mozjs115} Provides: bundled(mozjs) = 115 @@ -154,6 +156,9 @@ Patch9: 0ad-icu76.patch # 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 @@ -190,6 +195,10 @@ hobbyist game developers, since 2001. #%%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 @@ -301,6 +310,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop %{_mandir}/man6/*.6* %changelog +* Tue Sep 23 2025 Gwyn Ciesla - 0.27.1-5 +- Re-enable ppc64le + * Fri Aug 08 2025 František Zatloukal - 0.27.1-4 - Rebuild for mozjs115 rebuilt with icu 77.1 diff --git a/59cb3cd67b2b51a5bcc9d052d8d77e2f2a4b89b7.patch b/59cb3cd67b2b51a5bcc9d052d8d77e2f2a4b89b7.patch new file mode 100644 index 0000000..bf61c03 --- /dev/null +++ b/59cb3cd67b2b51a5bcc9d052d8d77e2f2a4b89b7.patch @@ -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() diff --git a/638c04987ef134edea2b87d5f97996219206cebb.patch b/638c04987ef134edea2b87d5f97996219206cebb.patch new file mode 100644 index 0000000..945f9a8 --- /dev/null +++ b/638c04987ef134edea2b87d5f97996219206cebb.patch @@ -0,0 +1,217 @@ +From 638c04987ef134edea2b87d5f97996219206cebb Mon Sep 17 00:00:00 2001 +From: Ralph Sennhauser +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 +--- + 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 diff --git a/sources b/sources index 7b2c262..54bcdf6 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ 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 From 8ad766b5220366b5a363615ca249e857852699f6 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Mon, 12 Jan 2026 11:57:57 +0000 Subject: [PATCH 5/6] Rebuilt for Boost 1.90 --- 0ad.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/0ad.spec b/0ad.spec index 2feb805..2326c3e 100644 --- a/0ad.spec +++ b/0ad.spec @@ -27,7 +27,7 @@ Name: 0ad Version: 0.27.1 -Release: 5%{?dist} +Release: 6%{?dist} # BSD License: # build/premake/* # libraries/source/miniupnpc/* (not built/used) @@ -310,6 +310,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop %{_mandir}/man6/*.6* %changelog +* Mon Jan 12 2026 Jonathan Wakely - 0.27.1-6 +- Rebuilt for Boost 1.90 + * Tue Sep 23 2025 Gwyn Ciesla - 0.27.1-5 - Re-enable ppc64le From 70ffd6836a325c88756f52d4b03bfa8f9a0a0bf5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 16 Jan 2026 02:24:58 +0000 Subject: [PATCH 6/6] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild --- 0ad.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/0ad.spec b/0ad.spec index 2326c3e..1835a42 100644 --- a/0ad.spec +++ b/0ad.spec @@ -27,7 +27,7 @@ Name: 0ad Version: 0.27.1 -Release: 6%{?dist} +Release: 7%{?dist} # BSD License: # build/premake/* # libraries/source/miniupnpc/* (not built/used) @@ -310,6 +310,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/0ad.desktop %{_mandir}/man6/*.6* %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 0.27.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + * Mon Jan 12 2026 Jonathan Wakely - 0.27.1-6 - Rebuilt for Boost 1.90