summaryrefslogblamecommitdiff
path: root/user/clang/0001-Add-support-for-Ad-lie-Linux.patch
blob: 9f2612440ce5029a13187d7066ccc1cb6951a3c7 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

















                                                                          
                         






                                                                               
                           

    
                                                                  
 
                                                                  



                                                          

                               
                                                                     




                                                                       

                                                                                           
                     
 
                                     



                                                                                


                                


                                                                            


                                  
From 085ba75b10376fa55bb94cb6fa6c54526957732f Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Thu, 13 Sep 2018 11:42:28 -0500
Subject: [PATCH] =?UTF-8?q?Add=20support=20for=20Ad=C3=A9lie=20Linux?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 include/clang/Driver/Distro.h   | 5 +++++
 lib/Driver/Distro.cpp           | 3 +++
 lib/Driver/ToolChains/Linux.cpp | 6 ++++--
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/include/clang/Driver/Distro.h b/include/clang/Driver/Distro.h
index 7b34a09256..7a3774a4f1 100644
--- a/include/clang/Driver/Distro.h
+++ b/include/clang/Driver/Distro.h
@@ -28,6 +28,7 @@ public:
     // NB: Releases of a particular Linux distro should be kept together
     // in this enum, because some tests are done by integer comparison against
     // the first and last known member in the family, e.g. IsRedHat().
+    AdelieLinux,
     AlpineLinux,
     ArchLinux,
     DebianLenny,
@@ -134,3 +135,5 @@ public:
   }
 
+  bool IsAdelieLinux() const { return DistroVal == AdelieLinux; }
+
   bool IsAlpineLinux() const { return DistroVal == AlpineLinux; }
diff --git a/lib/Driver/Distro.cpp b/lib/Driver/Distro.cpp
index 2c4d44faf8..7ef35ab379 100644
--- a/lib/Driver/Distro.cpp
+++ b/lib/Driver/Distro.cpp
@@ -36,6 +36,7 @@
   for (StringRef Line : Lines)
     if (Version == Distro::UnknownDistro && Line.starts_with("ID="))
       Version = llvm::StringSwitch<Distro::DistroType>(Line.substr(3))
+                    .Case("adelie", Distro::AdelieLinux)
                     .Case("alpine", Distro::AlpineLinux)
                     .Case("fedora", Distro::Fedora)
                     .Case("gentoo", Distro::Gentoo)
--- cfe-8.0.0.src/lib/Driver/ToolChains/Linux.cpp.old	2018-11-29 18:52:22.000000000 +0000
+++ cfe-8.0.0.src/lib/Driver/ToolChains/Linux.cpp	2019-04-23 23:49:37.786181838 +0000
@@ -226,13 +226,13 @@
 
   Distro Distro(D.getVFS(), Triple);
 
-  if (Distro.IsAlpineLinux() || Triple.isAndroid()) {
+  if (Distro.IsAdelieLinux() || Distro.IsAlpineLinux() || Triple.isAndroid()) {
     ExtraOpts.push_back("-z");
     ExtraOpts.push_back("now");
   }
 
   if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux() ||
-      Triple.isAndroid()) {
+      Distro.IsAdelieLinux() || Triple.isAndroid()) {
     ExtraOpts.push_back("-z");
     ExtraOpts.push_back("relro");
   }