Compare commits

...

5 Commits

Author SHA1 Message Date
David Abdurachmanov db66d1e06a
Disable LTO (GCC, Clang) globally for riscv64
While the change is not correct for upstream. We temporary disable LTO
to lower build times and thus increase general build throughput.

Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2023-11-30 10:33:37 +02:00
David Abdurachmanov 05712f91e2
Merge remote-tracking branch 'up/main' into main-riscv64
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2023-11-30 10:28:05 +02:00
Neal Gompa 9446afdb0a Bump release and add changelog entry 2023-11-03 17:44:18 -04:00
Stephen Gallagher a65dee421c ELN: Enable frame pointers for RHEL 11+
This will be active during the initial years of ELN development tracking
RHEL 11. It may be reverted in the final Fedora cycle prior to branching
if RHEL management decides to do so.

See
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/ODSVQKC2HHO5W3JD63DW3C53DG5WATUA/
for details.

Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
2023-11-03 14:49:49 -04:00
Miro Hrončok 3c3493dc40 Docs: Fix a typo in %global build_type_safety_c 2023-10-24 12:27:24 +02:00
3 changed files with 19 additions and 8 deletions

View File

@ -131,7 +131,7 @@ a construct like this to avoid *lowering* a future default:
```
%if %build_type_safety_c < 2
%global %build_type_safety_c 2
%global build_type_safety_c 2
%endif
```

12
macros
View File

@ -350,10 +350,12 @@ for k,_ in pairs(stripped_flags) do print(k .. " ") end
# to move the annobin notes into the separate debuginfo file.
%_find_debuginfo_extra_opts %{?_annotated_build:--remove-section .gnu.build.attributes}
# Include frame pointer information by default, except on RHEL
# Include frame pointer information by default, except on RHEL 10 and earlier
# On RHEL 11, we are enabling it for now, with the possibility of revoking it
# at a later date.
# https://fedoraproject.org/wiki/Changes/fno-omit-frame-pointer
# Use "%undefine _include_frame_pointers" to disable.
%_include_frame_pointers %{undefined rhel}
%_include_frame_pointers %{undefined rhel} || 0%{?rhel} >= 11
%_frame_pointers_cflags %{expr:0%{?_include_frame_pointers} ? "-fno-omit-frame-pointer" : ""}
%_frame_pointers_cflags_x86_64 %{expr:0%{?_include_frame_pointers} ? "-mno-omit-leaf-frame-pointer" : ""}
%_frame_pointers_cflags_aarch64 %{expr:0%{?_include_frame_pointers} ? "-mno-omit-leaf-frame-pointer" : ""}
@ -378,10 +380,12 @@ for k,_ in pairs(stripped_flags) do print(k .. " ") end
# to verify they have real sections/symbols after LTO stripping. That
# way we can detect installing an unusable .o/.a file. This is on the TODO
# list for F34.
%_gcc_lto_cflags -flto=auto -ffat-lto-objects
# LTO is slow on riscv64, we want to prioritize build speeds right starting
# Fedora 40.
%_gcc_lto_cflags %{nil}
# riscv64 does not have ld.gold support needed for LTO with Clang.
%_clang_lto_cflags %{nil}
%_lto_cflags %{expand:%%{_%{toolchain}_lto_cflags}}
%_lto_cflags %{nil}
# Default fortification level.
# "%define _fortify_level 2" to downgrade and

View File

@ -4,12 +4,12 @@
# 2) When making changes, increment the version (in baserelease) by 1.
# rpmdev-bumpspec and other tools update the macro below, which is used
# in Version: to get the desired effect.
%global baserelease 270
%global baserelease 271
Summary: Red Hat specific rpm configuration files
Name: redhat-rpm-config
Version: %{baserelease}
Release: 1.0.riscv64%{?dist}
Release: 1.1.riscv64%{?dist}
# config.guess, config.sub are GPL-3.0-or-later WITH Autoconf-exception-generic
License: GPL-1.0-or-later AND GPL-2.0-or-later AND GPL-3.0-or-later WITH Autoconf-exception-generic AND Boehm-GC
URL: https://src.fedoraproject.org/rpms/redhat-rpm-config
@ -255,11 +255,18 @@ install -p -m 644 -t %{buildroot}%{_rpmluadir}/fedora common.lua
%doc buildflags.md
%changelog
* Thu Oct 12 2023 David Abdurachmanov <davidlt@rivosinc.com> - 270-1.0.riscv64
* Thu Nov 30 2023 David Abdurachmanov <davidlt@rivosinc.com> - 271-1.1.riscv64
- Set all LTO macros (_lto_cflags, _gcc_lto_cflags, _clang_lto_cflags) to nil
as we want to increase build times for packages.
* Thu Nov 30 2023 David Abdurachmanov <davidlt@rivosinc.com> - 271-1.0.riscv64
- Add riscv64 to %%gap_arches, %%java_arches, and %%nodejs_arches
- Set %%_clang_lto_cflags to %%nil as ld.gold is not implemented for riscv64
and thus LTO with Clang doesn't work.
* Fri Nov 03 2023 Stephen Gallagher <sgallagh@redhat.com> - 271-1
- ELN: Enable frame pointers for RHEL 11+ (for now)
* Thu Oct 5 2023 Florian Weimer <fweimer@redhat.com> - 270-1
- Disable -fstack-clash-protection on riscv64 (#2242327)