musllvm

A pure LLVM/Clang cross compiler toolchain targeting musl C
git clone git://git.daat.foo/musllvm.git
Log | Files | Refs | README | LICENSE

0018-clang-switch-on-default-now-relro.patch (1089B)


      1 From 8ebc91e973af382fbb0ef837400433106e3cd825 Mon Sep 17 00:00:00 2001
      2 From: q66 <q66@chimera-linux.org>
      3 Date: Sat, 4 Nov 2023 09:11:37 +0100
      4 Subject: [PATCH 18/29] clang: switch on default now/relro
      5 
      6 ---
      7  clang/lib/Driver/ToolChains/Linux.cpp | 4 ++--
      8  1 file changed, 2 insertions(+), 2 deletions(-)
      9 
     10 diff --git a/clang/lib/Driver/ToolChains/Linux.cpp b/clang/lib/Driver/ToolChains/Linux.cpp
     11 index 9a9b40a25..57056ee2c 100644
     12 --- a/clang/lib/Driver/ToolChains/Linux.cpp
     13 +++ b/clang/lib/Driver/ToolChains/Linux.cpp
     14 @@ -228,12 +228,12 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
     15  
     16    Distro Distro(D.getVFS(), Triple);
     17  
     18 -  if (Distro.IsAlpineLinux() || Triple.isAndroid()) {
     19 +  if (Triple.isMusl() || Triple.isAndroid()) {
     20      ExtraOpts.push_back("-z");
     21      ExtraOpts.push_back("now");
     22    }
     23  
     24 -  if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux() ||
     25 +  if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Triple.isMusl() ||
     26        Triple.isAndroid()) {
     27      ExtraOpts.push_back("-z");
     28      ExtraOpts.push_back("relro");
     29 -- 
     30 2.49.0
     31