From f4aa4891947be7d11d52321af19d663a476be5d2 Mon Sep 17 00:00:00 2001 From: David Abdurachmanov Date: Mon, 3 Apr 2023 14:38:07 +0300 Subject: [PATCH] Disable LTO with Clang on riscv64 For LTO to work with Clang we need gold linker, which is not ported to riscv64. Signed-off-by: David Abdurachmanov --- macros | 5 +++++ redhat-rpm-config.spec | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/macros b/macros index b9dccf1..f431b6b 100644 --- a/macros +++ b/macros @@ -363,7 +363,12 @@ print(result) # 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 +%ifnarch riscv64 %_clang_lto_cflags -flto=thin +%else +# riscv64 does not have ld.gold support needed for LTO with Clang. +%_clang_lto_cflags %{nil} +%endif %_lto_cflags %{expand:%%{_%{toolchain}_lto_cflags}} # Default fortification level. diff --git a/redhat-rpm-config.spec b/redhat-rpm-config.spec index 9b791fd..c14e768 100644 --- a/redhat-rpm-config.spec +++ b/redhat-rpm-config.spec @@ -9,7 +9,7 @@ Summary: Red Hat specific rpm configuration files Name: redhat-rpm-config Version: %{baserelease} -Release: 1.0.riscv64%{?dist} +Release: 1.1.riscv64%{?dist} # No version specified. License: GPL+ URL: https://src.fedoraproject.org/rpms/redhat-rpm-config @@ -252,6 +252,9 @@ install -p -m 644 -t %{buildroot}%{_rpmluadir}/fedora/srpm forge.lua %doc buildflags.md %changelog +* Mon Apr 03 2023 David Abdurachmanov - 252-1.1.riscv64 +- Set %%_clang_lto_cflags to %%{nil} on riscv64 to disable LTO with Clang + * Wed Mar 15 2023 David Abdurachmanov - 252-1.0.riscv64 - Add riscv64 to gap supported arch list - Add riscv64 to nodejs supported arch list