Compare commits

..

6 commits

Author SHA1 Message Date
Jan200101
57f3a79ce3
refactor: add changelog file and revert minisign macro
Add the changelog file to preserve historical package changes for
rpmautospec migration, as expected by packaging guidelines.
Revert the minisign macro usage back to plain minisign, as macros should
only refer to files installed by the current spec.

Co-developed-by: Gemini AI <renich+gemini@woralelandia.com>
Signed-off-by: Rénich Bon Ćirić <renich@woralelandia.com>
2026-08-08 18:51:30 +02:00
Rénich Bon Ćirić
99107eeb74
style: remove redundant comment from zig.spec
Co-developed-by: Gemini AI <renich+gemini@woralelandia.com>
Signed-off-by: Rénich Bon Ćirić <renich@woralelandia.com>
2026-08-08 18:51:06 +02:00
Rénich Bon Ćirić
dc01a78c50
refactor: migrate to rpmautospec and clean up spec headers
Migrated zig.spec to utilize %autorelease and %autochangelog, removing the
manual changelog section. Restructured and cleaned up the global variable
and macro definitions using minimalist section headers. Replaced hardcoded
/usr/bin/minisign with the guidelines-compliant %{_bindir}/minisign macro.

Co-developed-by: Gemini AI <renich+gemini@woralelandia.com>
Signed-off-by: Rénich Bon Ćirić <renich@woralelandia.com>
2026-08-08 18:51:03 +02:00
Fedora Release Engineering
373fd58fba Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 09:40:29 +00:00
Jan200101
1ffefc4662
Update to 0.16.0 2026-04-25 14:34:50 +02:00
Fedora Release Engineering
b5b6b37ec0 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-17 21:08:07 +00:00
6 changed files with 307 additions and 262 deletions

View file

@ -1,6 +1,6 @@
From 776181c3f8b3d3e34758f376979eb11acd3317e6 Mon Sep 17 00:00:00 2001
From a865b3569ace118cc1c1cd8d5d130ec316b0307d Mon Sep 17 00:00:00 2001
From: Jan200101 <sentrycraft123@gmail.com>
Date: Tue, 11 Jun 2024 13:35:37 +0200
Date: Tue, 14 Apr 2026 19:04:40 +0200
Subject: [PATCH 1/2] remove native lib directories from rpath
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
@ -9,13 +9,13 @@ Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
1 file changed, 9 insertions(+)
diff --git a/src/main.zig b/src/main.zig
index 036adbf852..8410c05576 100644
index 0395a21a5f..86b6d9f86b 100644
--- a/src/main.zig
+++ b/src/main.zig
@@ -3945,6 +3945,15 @@ fn createModule(
@@ -4102,6 +4102,15 @@ fn createModule(
try create_module.lib_directories.ensureUnusedCapacity(arena, paths.lib_dirs.items.len);
for (paths.lib_dirs.items) |path| addLibDirectoryWarn2(&create_module.lib_directories, path, true);
for (paths.lib_dirs.items) |path| addLibDirectoryWarn2(io, &create_module.lib_directories, path, true);
+
+ for (paths.lib_dirs.items) |native_lib_dir| {
+ for (0.., create_module.rpath_list.items) |i, rpath_dir| {
@ -29,5 +29,5 @@ index 036adbf852..8410c05576 100644
if (create_module.libc_paths_file) |paths_file| {
--
2.52.0
2.53.0

View file

@ -1,6 +1,6 @@
From ab92fe5f0be7a49fa2c97957bebf6278a1b69aaf Mon Sep 17 00:00:00 2001
From 803935baf6a4730426afbb746adfd00c0ffc0f39 Mon Sep 17 00:00:00 2001
From: Jan200101 <sentrycraft123@gmail.com>
Date: Sun, 4 Jan 2026 12:41:39 +0100
Date: Tue, 14 Apr 2026 19:20:26 +0200
Subject: [PATCH 2/2] Remove unsupported LLVM targets for RHEL
LLVM for RHEL is only build with a subset of targets
@ -16,130 +16,130 @@ Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
3 files changed, 45 insertions(+), 97 deletions(-)
diff --git a/cmake/Findllvm.cmake b/cmake/Findllvm.cmake
index 5ff5de869c..5430ef9d59 100644
index 0c08d4f0ac..ed4da12044 100644
--- a/cmake/Findllvm.cmake
+++ b/cmake/Findllvm.cmake
@@ -83,7 +83,7 @@ if(ZIG_USE_LLVM_CONFIG)
OUTPUT_STRIP_TRAILING_WHITESPACE)
string(REPLACE " " ";" LLVM_TARGETS_BUILT "${LLVM_TARGETS_BUILT_SPACES}")
- set(ZIG_LLVM_REQUIRED_TARGETS "AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;Mips;MSP430;NVPTX;PowerPC;RISCV;Sparc;SystemZ;VE;WebAssembly;X86;XCore")
- set(ZIG_LLVM_REQUIRED_TARGETS "AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;LoongArch;Mips;MSP430;NVPTX;PowerPC;RISCV;SPIRV;Sparc;SystemZ;VE;WebAssembly;X86;XCore")
+ set(ZIG_LLVM_REQUIRED_TARGETS "X86;AMDGPU;PowerPC;NVPTX;SystemZ;AArch64;BPF;WebAssembly;RISCV")
set(ZIG_LLVM_REQUIRED_TARGETS_ENABLED TRUE)
foreach(TARGET_NAME IN LISTS ZIG_LLVM_REQUIRED_TARGETS)
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig
index bd2c7bd022..a98fbab47e 100644
index 1ba3b272da..1ac1f6adc8 100644
--- a/src/codegen/llvm.zig
+++ b/src/codegen/llvm.zig
@@ -13016,20 +13016,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
llvm.LLVMInitializeAMDGPUAsmPrinter();
llvm.LLVMInitializeAMDGPUAsmParser();
@@ -4736,20 +4736,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
bindings.LLVMInitializeAMDGPUAsmPrinter();
bindings.LLVMInitializeAMDGPUAsmParser();
},
- .thumb, .thumbeb, .arm, .armeb => {
- llvm.LLVMInitializeARMTarget();
- llvm.LLVMInitializeARMTargetInfo();
- llvm.LLVMInitializeARMTargetMC();
- llvm.LLVMInitializeARMAsmPrinter();
- llvm.LLVMInitializeARMAsmParser();
- bindings.LLVMInitializeARMTarget();
- bindings.LLVMInitializeARMTargetInfo();
- bindings.LLVMInitializeARMTargetMC();
- bindings.LLVMInitializeARMAsmPrinter();
- bindings.LLVMInitializeARMAsmParser();
- },
- .avr => {
- llvm.LLVMInitializeAVRTarget();
- llvm.LLVMInitializeAVRTargetInfo();
- llvm.LLVMInitializeAVRTargetMC();
- llvm.LLVMInitializeAVRAsmPrinter();
- llvm.LLVMInitializeAVRAsmParser();
- bindings.LLVMInitializeAVRTarget();
- bindings.LLVMInitializeAVRTargetInfo();
- bindings.LLVMInitializeAVRTargetMC();
- bindings.LLVMInitializeAVRAsmPrinter();
- bindings.LLVMInitializeAVRAsmParser();
- },
.bpfel, .bpfeb => {
llvm.LLVMInitializeBPFTarget();
llvm.LLVMInitializeBPFTargetInfo();
@@ -13037,34 +13023,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
llvm.LLVMInitializeBPFAsmPrinter();
llvm.LLVMInitializeBPFAsmParser();
bindings.LLVMInitializeBPFTarget();
bindings.LLVMInitializeBPFTargetInfo();
@@ -4757,34 +4743,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
bindings.LLVMInitializeBPFAsmPrinter();
bindings.LLVMInitializeBPFAsmParser();
},
- .hexagon => {
- llvm.LLVMInitializeHexagonTarget();
- llvm.LLVMInitializeHexagonTargetInfo();
- llvm.LLVMInitializeHexagonTargetMC();
- llvm.LLVMInitializeHexagonAsmPrinter();
- llvm.LLVMInitializeHexagonAsmParser();
- bindings.LLVMInitializeHexagonTarget();
- bindings.LLVMInitializeHexagonTargetInfo();
- bindings.LLVMInitializeHexagonTargetMC();
- bindings.LLVMInitializeHexagonAsmPrinter();
- bindings.LLVMInitializeHexagonAsmParser();
- },
- .lanai => {
- llvm.LLVMInitializeLanaiTarget();
- llvm.LLVMInitializeLanaiTargetInfo();
- llvm.LLVMInitializeLanaiTargetMC();
- llvm.LLVMInitializeLanaiAsmPrinter();
- llvm.LLVMInitializeLanaiAsmParser();
- bindings.LLVMInitializeLanaiTarget();
- bindings.LLVMInitializeLanaiTargetInfo();
- bindings.LLVMInitializeLanaiTargetMC();
- bindings.LLVMInitializeLanaiAsmPrinter();
- bindings.LLVMInitializeLanaiAsmParser();
- },
- .mips, .mipsel, .mips64, .mips64el => {
- llvm.LLVMInitializeMipsTarget();
- llvm.LLVMInitializeMipsTargetInfo();
- llvm.LLVMInitializeMipsTargetMC();
- llvm.LLVMInitializeMipsAsmPrinter();
- llvm.LLVMInitializeMipsAsmParser();
- bindings.LLVMInitializeMipsTarget();
- bindings.LLVMInitializeMipsTargetInfo();
- bindings.LLVMInitializeMipsTargetMC();
- bindings.LLVMInitializeMipsAsmPrinter();
- bindings.LLVMInitializeMipsAsmParser();
- },
- .msp430 => {
- llvm.LLVMInitializeMSP430Target();
- llvm.LLVMInitializeMSP430TargetInfo();
- llvm.LLVMInitializeMSP430TargetMC();
- llvm.LLVMInitializeMSP430AsmPrinter();
- llvm.LLVMInitializeMSP430AsmParser();
- bindings.LLVMInitializeMSP430Target();
- bindings.LLVMInitializeMSP430TargetInfo();
- bindings.LLVMInitializeMSP430TargetMC();
- bindings.LLVMInitializeMSP430AsmPrinter();
- bindings.LLVMInitializeMSP430AsmParser();
- },
.nvptx, .nvptx64 => {
llvm.LLVMInitializeNVPTXTarget();
llvm.LLVMInitializeNVPTXTargetInfo();
@@ -13086,13 +13044,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
llvm.LLVMInitializeRISCVAsmPrinter();
llvm.LLVMInitializeRISCVAsmParser();
bindings.LLVMInitializeNVPTXTarget();
bindings.LLVMInitializeNVPTXTargetInfo();
@@ -4806,13 +4764,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
bindings.LLVMInitializeRISCVAsmPrinter();
bindings.LLVMInitializeRISCVAsmParser();
},
- .sparc, .sparc64 => {
- llvm.LLVMInitializeSparcTarget();
- llvm.LLVMInitializeSparcTargetInfo();
- llvm.LLVMInitializeSparcTargetMC();
- llvm.LLVMInitializeSparcAsmPrinter();
- llvm.LLVMInitializeSparcAsmParser();
- bindings.LLVMInitializeSparcTarget();
- bindings.LLVMInitializeSparcTargetInfo();
- bindings.LLVMInitializeSparcTargetMC();
- bindings.LLVMInitializeSparcAsmPrinter();
- bindings.LLVMInitializeSparcAsmParser();
- },
.s390x => {
llvm.LLVMInitializeSystemZTarget();
llvm.LLVMInitializeSystemZTargetInfo();
@@ -13123,13 +13074,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
llvm.LLVMInitializeXtensaAsmParser();
bindings.LLVMInitializeSystemZTarget();
bindings.LLVMInitializeSystemZTargetInfo();
@@ -4843,13 +4794,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
bindings.LLVMInitializeXtensaAsmParser();
}
},
- .xcore => {
- llvm.LLVMInitializeXCoreTarget();
- llvm.LLVMInitializeXCoreTargetInfo();
- llvm.LLVMInitializeXCoreTargetMC();
- llvm.LLVMInitializeXCoreAsmPrinter();
- bindings.LLVMInitializeXCoreTarget();
- bindings.LLVMInitializeXCoreTargetInfo();
- bindings.LLVMInitializeXCoreTargetMC();
- bindings.LLVMInitializeXCoreAsmPrinter();
- // There is no LLVMInitializeXCoreAsmParser function.
- },
.m68k => {
if (build_options.llvm_has_m68k) {
llvm.LLVMInitializeM68kTarget();
@@ -13148,13 +13092,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
llvm.LLVMInitializeCSKYAsmParser();
bindings.LLVMInitializeM68kTarget();
@@ -4868,13 +4812,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
bindings.LLVMInitializeCSKYAsmParser();
}
},
- .ve => {
- llvm.LLVMInitializeVETarget();
- llvm.LLVMInitializeVETargetInfo();
- llvm.LLVMInitializeVETargetMC();
- llvm.LLVMInitializeVEAsmPrinter();
- llvm.LLVMInitializeVEAsmParser();
- bindings.LLVMInitializeVETarget();
- bindings.LLVMInitializeVETargetInfo();
- bindings.LLVMInitializeVETargetMC();
- bindings.LLVMInitializeVEAsmPrinter();
- bindings.LLVMInitializeVEAsmParser();
- },
.arc => {
if (build_options.llvm_has_arc) {
llvm.LLVMInitializeARCTarget();
@@ -13164,21 +13101,29 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
bindings.LLVMInitializeARCTarget();
@@ -4884,21 +4821,29 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void {
// There is no LLVMInitializeARCAsmParser function.
}
},
- .loongarch32, .loongarch64 => {
- llvm.LLVMInitializeLoongArchTarget();
- llvm.LLVMInitializeLoongArchTargetInfo();
- llvm.LLVMInitializeLoongArchTargetMC();
- llvm.LLVMInitializeLoongArchAsmPrinter();
- llvm.LLVMInitializeLoongArchAsmParser();
- bindings.LLVMInitializeLoongArchTarget();
- bindings.LLVMInitializeLoongArchTargetInfo();
- bindings.LLVMInitializeLoongArchTargetMC();
- bindings.LLVMInitializeLoongArchAsmPrinter();
- bindings.LLVMInitializeLoongArchAsmParser();
- },
+
+ // Disabled LLVM targets
@ -164,20 +164,20 @@ index bd2c7bd022..a98fbab47e 100644
.spirv32,
.spirv64,
- => {
- llvm.LLVMInitializeSPIRVTarget();
- llvm.LLVMInitializeSPIRVTargetInfo();
- llvm.LLVMInitializeSPIRVTargetMC();
- llvm.LLVMInitializeSPIRVAsmPrinter();
- bindings.LLVMInitializeSPIRVTarget();
- bindings.LLVMInitializeSPIRVTargetInfo();
- bindings.LLVMInitializeSPIRVTargetMC();
- bindings.LLVMInitializeSPIRVAsmPrinter();
- },
+ => unreachable,
// LLVM does does not have a backend for these.
.kalimba,
.alpha,
diff --git a/src/target.zig b/src/target.zig
index f8201d691b..8491912bd5 100644
index 3d04c06f5e..9e19836815 100644
--- a/src/target.zig
+++ b/src/target.zig
@@ -166,23 +166,12 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat)
@@ -185,23 +185,12 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat)
}
return switch (target.cpu.arch) {
@ -201,10 +201,10 @@ index f8201d691b..8491912bd5 100644
.powerpc,
.powerpcle,
.powerpc64,
@@ -190,24 +179,38 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat)
.amdgcn,
.riscv32,
@@ -211,24 +200,38 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat)
.riscv32be,
.riscv64,
.riscv64be,
- .sparc,
- .sparc64,
- .spirv32,
@ -250,5 +250,5 @@ index f8201d691b..8491912bd5 100644
.csky,
.xtensa,
--
2.52.0
2.53.0

154
changelog Normal file
View file

@ -0,0 +1,154 @@
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Wed Apr 15 2026 Jan200101 <sentrycraft123@gmail.com> - 0.16.0-1
- Update to 0.16.0
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Sun Jan 04 2026 Jan200101 <sentrycraft123@gmail.com> - 0.15.2-2
- Rebuilt for EPEL
* Sun Oct 12 2025 Jan200101 <sentrycraft123@gmail.com> - 0.15.2-1
- Update to 0.15.2
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jun 09 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.1-1
- Update to 0.14.1
* Tue May 27 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-4
- add patch to add library directories
* Fri May 09 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-3
- add gcc to runtime dependencies
* Thu Apr 24 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-2
- fix and re-enable documentation
* Thu Mar 06 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-1
- Update to 0.14.0
* Mon Jan 27 2025 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-8
- specify to build against local zig stdlib directory to ensure we are building against the newest stdlib
- use release fast instead of release safe to fix aarch64 builds from running out of memory
- enable position independent executable for the zig build
* Mon Jan 27 2025 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-7
- build stage 3 using zig build system
- add user provided options to the end of the build and install options
* Thu Jan 23 2025 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-6
- rebuild against fixed llvm
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sun Dec 29 2024 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-4
- correct macro variables
- set llvm_compat for F41
- update callaway licenses to follow SPDX
* Wed Sep 04 2024 Miroslav Suchý <msuchy@redhat.com> - 0.13.0-3
- convert license to SPDX
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Jun 11 2024 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-1
- Update to 0.13.0
* Sat Jun 08 2024 Jan200101 <sentrycraft123@gmail.com> - 0.12.1-1
- Update to 0.12.1
* Sat May 25 2024 Jan200101 <sentrycraft123@gmail.com> - 0.12.0-1
- Update to 0.12.0
* Wed Feb 21 2024 Jan Drögehoff <sentrycraft123@gmail.com> - 0.11.0-2
- Rebuilt for bootstrapping
* Sat Jan 27 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.11.0-1
- Update to 0.11.0
* Sat Jan 27 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.9.1-6
- Fix build with `--without macro`
- Skip %%check and test dependencies when tests are disabled
- Drop %%_zig_version macro
* Sat Jan 27 2024 Benson Muite <benson_muite@emailplus.org> - 0.9.1-6
- Verify source signature
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Feb 18 2022 Jan Drögehoff <sentrycraft123@gmail.com> - 0.9.1-1
- Update to 0.9.1
* Thu Jan 27 2022 Jan Drögehoff <sentrycraft123@gmail.com> - 0.9.0-3
- Jan: add rpath patch
- Aleksei Bavshin: rpm macros: set default build flags
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Dec 20 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.9.0-1
- Update to 0.9.0
* Wed Nov 17 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.1-5
- Enable documentation on Fedora 35
* Tue Nov 09 2021 Tom Stellard <tstellar@redhat.com> - 0.8.1-4
- Rebuild for llvm-13.0.0
* Sat Oct 30 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.1-3
- Update LLVM13 Patch
* Thu Oct 07 2021 Tom Stellard <tstellar@redhat.com> - 0.8.1-2
- Rebuild for llvm-13.0.0
* Sun Sep 12 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.1-1
- Update to Zig 0.8.1, add LLVM 13 patch
* Wed Aug 18 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-8
- Rebuilt for lld soname bump
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jul 19 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-6
- add native libc detection patch
* Sun Jul 04 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-5
- correct newline in macro that caused DESTDIR to be ignored
* Mon Jun 28 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-4
- correct macro once again to allow for proper packaging
* Thu Jun 24 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-3
- improve macro for using the zig binary
* Thu Jun 24 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-2
- Update patches, correct rpm macro
* Sat Jun 05 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-1
- Update to Zig 0.8.0
* Sun Dec 13 23:18:24 CET 2020 Jan Drögehoff <sentrycraft123@gmail.com> - 0.7.1-1
- Update to Zig 0.7.1
* Wed Nov 11 17:18:27 CET 2020 Jan Drögehoff <sentrycraft123@gmail.com> - 0.7.0-1
- Update to Zig 0.7.0
* Tue Aug 18 2020 Jan Drögehoff <sentrycraft123@gmail.com> - 0.6.0-1
- Initial zig spec

View file

@ -1,6 +1,6 @@
%zig_arches x86_64 aarch64 riscv64 %{mips64}
%zig %{_bindir}/zig
%__zig %{_bindir}/zig
%_zig_cache_dir %{_vpath_builddir}/zig-cache
%_zig_package_dir %{_zig_cache_dir}/p
@ -27,7 +27,10 @@
# seperated build options
%_zig_general_options --verbose --release=%{_zig_release_mode} --build-id=sha1 --summary all
%_zig_project_options -Dtarget=%{_zig_target} -Dcpu=%{_zig_cpu}
%_zig_system_integration --system "%{_zig_package_dir}"
# 0.16.0 introduced packaging changes which install packages into this relative directory
# Will be ovewritable in 0.17.0
# https://codeberg.org/ziglang/zig/pulls/31950
%_zig_system_integration --system "zig-pkg"
%_zig_advanced_options -fallow-so-scripts --cache-dir "%{_zig_cache_dir}" --global-cache-dir "%{_zig_cache_dir}"
%_zig_build_options %{?_zig_general_options} %{?_zig_project_options} %{?_zig_system_integration} %{?_zig_advanced_options} %{?zig_build_options}
@ -40,10 +43,11 @@
mkdir -p \
%{_zig_cache_dir} \
%{_zig_package_dir} \
"zig-pkg" \
}
%zig_build %{shrink: \
%zig \
%__zig \
build \
%{?_zig_build_options} \
}
@ -56,7 +60,7 @@
}
%zig_fetch %{shrink: \
%zig \
%__zig \
fetch \
%{?_zig_fetch_options} \
}

View file

@ -1,2 +1,2 @@
SHA512 (zig-0.15.2.tar.xz) = 56b0f2b14da8603bf86ab672fd1fe38c2b04d8d90512839104e85b0fbda94aaf07fecf76b238d7b17715f9fee24be46c1830a96a0b5993cff6adef91b83f3201
SHA512 (zig-0.15.2.tar.xz.minisig) = d951c167561599a11ac1881c0c12d17be5d8ea3d214b96403acaa5b40f62a6bee48602dcbf963046897481525b801023fe419daca6d6811b495c44a242777a13
SHA512 (zig-0.16.0.tar.xz) = 1404a939c6f233d5f328a4833543d7a2b2d9f0f5081babe6e3ad43daed25bbb0844b28c01c900f64b5bb63ac62b5586457c05380b10494dfefb56f49b58d4a0a
SHA512 (zig-0.16.0.tar.xz.minisig) = 44a2d57061cbe8bd4e9ad587c247883e2e9abefa148ab375617665fe51500a106f488ceaaeaf038c0ff5ce1a70f4eb3b519a44f3211769ea1ebae5ad49b2f1b9

215
zig.spec
View file

@ -1,27 +1,49 @@
# architecture and toolchain
%if 0%{?rhel}
# Zig depends on a C compiler (gcc) during bootstraping
# older versions of gcc fail to compile the transpiled source so we limit it to x86_64
# Zig depends on a C compiler (gcc) during bootstrapping.
# Older versions of gcc fail to compile the transpiled source, so limit to x86_64.
%global zig_arches x86_64
%else
# https://ziglang.org/download/VERSION/release-notes.html#Support-Table
# Supported architectures: https://ziglang.org/download/VERSION/release-notes.html#Support-Table
%global zig_arches x86_64 aarch64 riscv64 %{mips64}
%endif
# Signing key from https://ziglang.org/download/
%global public_key RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U
# note here at which Fedora or EL release we need to use compat LLVM packages
%if 0%{?fedora} >= 43 || 0%{?rhel} >= 11
%global llvm_compat 20
# GCC < 16.0 miscompiles on RISC-V; use Clang instead on older Fedora versions
%ifarch riscv64
%if 0%{?fedora} < 44
%bcond toolchain_clang 1
%endif
%endif
%global llvm_version 20.0.0
%if %{with toolchain_clang}
%global toolchain clang
%endif
# minisign public key for source verification (from https://ziglang.org/download/)
%global public_key RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U
# dependency versions and cache
# Compatible LLVM/Clang version definitions
%if 0%{?fedora} >= 44 || 0%{?rhel} >= 11
%global llvm_compat 21
%endif
%global llvm_version 21.1.8
%global zig_cache_dir %{_vpath_builddir}/zig-cache
# build conditionals
%bcond bootstrap 0
%bcond docs %{without bootstrap}
%bcond macro %{without bootstrap}
%bcond test 1
%global zig_cache_dir %{_vpath_builddir}/zig-cache
# build and install options
%global zig_build_options %{shrink: \
--verbose \
@ -36,7 +58,7 @@
--cache-dir "%{zig_cache_dir}" \
--global-cache-dir "%{zig_cache_dir}" \
\
-Dversion-string="%{version}" \
-Dversion-string="%{?dev_version}%{!?dev_version:%{version}}" \
-Dstatic-llvm=false \
-Denable-llvm=true \
-Dno-langref=true \
@ -44,14 +66,17 @@
-Dpie \
-Dconfig_h="%{__cmake_builddir}/config.h" \
}
%global zig_install_options %zig_build_options %{shrink: \
%global zig_install_options %{shrink: \
%zig_build_options \
--prefix "%{_prefix}" \
}
Name: zig
Version: 0.15.2
Release: 2%{?dist}
Version: 0.16.0
Release: %autorelease
Summary: Programming language for maintaining robust, optimal, and reusable software
# The minisign file references a specific archive name so we store for ease of use
%global archive_name %{name}-%{version}.tar.xz
@ -60,16 +85,22 @@ URL: https://ziglang.org
Source0: %{url}/download/%{version}/%{archive_name}
Source1: %{url}/download/%{version}/%{archive_name}.minisig
Source2: macros.%{name}
# Remove native lib directories from rpath
# this is unlikely to be upstreamed in its current state because upstream
# wants to work around the shortcomings of NixOS
Patch0: 0001-remove-native-lib-directories-from-rpath.patch
# LLVM on RHEL/EPEL only provides fewer targets so we patch the required targets down
# Targets come from https://src.fedoraproject.org/rpms/llvm/blob/rawhide/f/llvm.spec
Patch1: 0002-Remove-unsupported-LLVM-targets-for-EPEL.patch
%if %{without toolchain_clang}
BuildRequires: gcc
BuildRequires: gcc-c++
%else
BuildRequires: clang
%endif
BuildRequires: cmake
BuildRequires: llvm%{?llvm_compat}-devel
BuildRequires: clang%{?llvm_compat}-devel
@ -82,7 +113,7 @@ BuildRequires: help2man
BuildRequires: minisign
%if %{without bootstrap}
BuildRequires: (zig >= 0.15 with zig < 0.16)
BuildRequires: (zig >= 0.16 with zig < 0.17)
%endif
%if %{with test}
@ -98,7 +129,7 @@ Requires: %{name}-libs = %{version}
# Apache-2.0 WITH LLVM-exception OR NCSA OR MIT
Provides: bundled(compiler-rt) = %{llvm_version}
# LGPL-2.1-or-later AND SunPro AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND BSD-3-Clause AND GPL-2.0-or-later AND LGPL-2.1-or-later WITH GNU-compiler-exception AND GPL-2.0-only AND ISC AND LicenseRef-Fedora-Public-Domain AND HPND AND CMU-Mach AND LGPL-2.0-or-later AND Unicode-3.0 AND GFDL-1.1-or-later AND GPL-1.0-or-later AND FSFUL AND MIT AND Inner-Net-2.0 AND X11 AND GPL-2.0-or-later WITH GCC-exception-2.0 AND GFDL-1.3-only AND GFDL-1.1-only
Provides: bundled(glibc) = 2.41
Provides: bundled(glibc) = 2.43
# Apache-2.0 WITH LLVM-exception OR MIT OR NCSA
Provides: bundled(libcxx) = %{llvm_version}
# Apache-2.0 WITH LLVM-exception OR MIT OR NCSA
@ -147,7 +178,7 @@ This package contains common RPM macros for %{name}.
%endif
%prep
/usr/bin/minisign -V -m %{SOURCE0} -x %{SOURCE1} -P %{public_key} -Q | grep -F "file:%{archive_name}"
minisign -V -m %{SOURCE0} -x %{SOURCE1} -P %{public_key} -Q | grep -F "file:%{archive_name}"
%autosetup -N
%patch 0 -p1
@ -184,7 +215,7 @@ export CCACHE_DISABLE=1
-DZIG_TARGET_MCPU:STRING=baseline \
-DZIG_TARGET_TRIPLE:STRING=native \
\
-DZIG_VERSION:STRING="%{version}"
-DZIG_VERSION:STRING="%{?dev_version}%{!?dev_version:%{version}}"
%if %{with bootstrap}
%cmake_build --target stage3
@ -199,7 +230,7 @@ help2man --no-discard-stderr --no-info "./zig-out/bin/zig" --version-option=vers
%if %{with docs}
# Use the newly made stage 3 compiler to generate docs
# Use the newly made stage 3 compiler to generate docs
./zig-out/bin/zig build docs %{zig_build_options}
%endif
@ -246,148 +277,4 @@ install -D -pv -m 0644 %{SOURCE2} %{buildroot}%{_rpmmacrodir}/macros.%{name}
%endif
%changelog
* Sun Jan 04 2026 Jan200101 <sentrycraft123@gmail.com> - 0.15.2-2
- Rebuilt for EPEL
* Sun Oct 12 2025 Jan200101 <sentrycraft123@gmail.com> - 0.15.2-1
- Update to 0.15.2
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jun 09 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.1-1
- Update to 0.14.1
* Tue May 27 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-4
- add patch to add library directories
* Fri May 09 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-3
- add gcc to runtime dependencies
* Thu Apr 24 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-2
- fix and re-enable documentation
* Thu Mar 06 2025 Jan200101 <sentrycraft123@gmail.com> - 0.14.0-1
- Update to 0.14.0
* Mon Jan 27 2025 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-8
- specify to build against local zig stdlib directory to ensure we are building against the newest stdlib
- use release fast instead of release safe to fix aarch64 builds from running out of memory
- enable position independent executable for the zig build
* Mon Jan 27 2025 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-7
- build stage 3 using zig build system
- add user provided options to the end of the build and install options
* Thu Jan 23 2025 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-6
- rebuild against fixed llvm
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sun Dec 29 2024 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-4
- correct macro variables
- set llvm_compat for F41
- update callaway licenses to follow SPDX
* Wed Sep 04 2024 Miroslav Suchý <msuchy@redhat.com> - 0.13.0-3
- convert license to SPDX
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Jun 11 2024 Jan200101 <sentrycraft123@gmail.com> - 0.13.0-1
- Update to 0.13.0
* Sat Jun 08 2024 Jan200101 <sentrycraft123@gmail.com> - 0.12.1-1
- Update to 0.12.1
* Sat May 25 2024 Jan200101 <sentrycraft123@gmail.com> - 0.12.0-1
- Update to 0.12.0
* Wed Feb 21 2024 Jan Drögehoff <sentrycraft123@gmail.com> - 0.11.0-2
- Rebuilt for bootstrapping
* Sat Jan 27 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.11.0-1
- Update to 0.11.0
* Sat Jan 27 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.9.1-6
- Fix build with `--without macro`
- Skip %%check and test dependencies when tests are disabled
- Drop %%_zig_version macro
* Sat Jan 27 2024 Benson Muite <benson_muite@emailplus.org> - 0.9.1-6
- Verify source signature
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Feb 18 2022 Jan Drögehoff <sentrycraft123@gmail.com> - 0.9.1-1
- Update to 0.9.1
* Thu Jan 27 2022 Jan Drögehoff <sentrycraft123@gmail.com> - 0.9.0-3
- Jan: add rpath patch
- Aleksei Bavshin: rpm macros: set default build flags
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Dec 20 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.9.0-1
- Update to 0.9.0
* Wed Nov 17 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.1-5
- Enable documentation on Fedora 35
* Tue Nov 09 2021 Tom Stellard <tstellar@redhat.com> - 0.8.1-4
- Rebuild for llvm-13.0.0
* Sat Oct 30 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.1-3
- Update LLVM13 Patch
* Thu Oct 07 2021 Tom Stellard <tstellar@redhat.com> - 0.8.1-2
- Rebuild for llvm-13.0.0
* Sun Sep 12 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.1-1
- Update to Zig 0.8.1, add LLVM 13 patch
* Wed Aug 18 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-8
- Rebuilt for lld soname bump
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jul 19 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-6
- add native libc detection patch
* Sun Jul 04 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-5
- correct newline in macro that caused DESTDIR to be ignored
* Mon Jun 28 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-4
- correct macro once again to allow for proper packaging
* Thu Jun 24 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-3
- improve macro for using the zig binary
* Thu Jun 24 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-2
- Update patches, correct rpm macro
* Sat Jun 05 2021 Jan Drögehoff <sentrycraft123@gmail.com> - 0.8.0-1
- Update to Zig 0.8.0
* Sun Dec 13 23:18:24 CET 2020 Jan Drögehoff <sentrycraft123@gmail.com> - 0.7.1-1
- Update to Zig 0.7.1
* Wed Nov 11 17:18:27 CET 2020 Jan Drögehoff <sentrycraft123@gmail.com> - 0.7.0-1
- Update to Zig 0.7.0
* Tue Aug 18 2020 Jan Drögehoff <sentrycraft123@gmail.com> - 0.6.0-1
- Initial zig spec
%autochangelog