mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 12:10:06 +02:00
llvm: update git recipe.
* remove libatomic workaround.
This commit is contained in:
@@ -32,18 +32,18 @@ HOMEPAGE="http://www.llvm.org/"
|
||||
COPYRIGHT="2003-2014 University of Illinois at Urbana-Champaign"
|
||||
LICENSE="UIUC"
|
||||
REVISION="1"
|
||||
llvmSrcGitRev="78886ec7e2107e36add101314798cf2e308cdc24"
|
||||
clangSrcGitRev="020f6f6bdd62ba4c3be4c435bb223c3638339d1a"
|
||||
clangToolsExtraSrcGitRev="56faca015513475b13b2784fb82d05563fe72cec"
|
||||
llvmSrcGitRev="4bd700523785848b3ee9c50da1b9fde52057be74"
|
||||
clangSrcGitRev="37b403d7009e66f7f040faffd979122acabaa693"
|
||||
clangToolsExtraSrcGitRev="75181d5ed02edc05452fd849bfdb52b3a132872f"
|
||||
SOURCE_URI="https://github.com/llvm-mirror/llvm/archive/$llvmSrcGitRev.tar.gz"
|
||||
SOURCE_URI_2="https://github.com/llvm-mirror/clang/archive/$clangSrcGitRev.tar.gz"
|
||||
SOURCE_URI_3="https://github.com/llvm-mirror/clang-tools-extra/archive/$clangToolsExtraSrcGitRev.tar.gz"
|
||||
SOURCE_FILENAME="llvm-${llvmSrcGitRev}.tar.gz"
|
||||
SOURCE_FILENAME_2="clang-${clangSrcGitRev}.tar.gz"
|
||||
SOURCE_FILENAME_3="clang-tools-extra-${clangToolsExtraSrcGitRev}.tar.gz"
|
||||
CHECKSUM_SHA256="9594308ff2a9f8f989f6835cdf98a11886564f169a984a33d0200c813b090ec8"
|
||||
CHECKSUM_SHA256_2="77c8bef243614dc1bbf1760249ff6a48fbcfafa9d4d05074b7082a3fb85e8957"
|
||||
CHECKSUM_SHA256_3="c7e91b48866d136245849dcd4a8e9d3ca2743cbc6582b634f57a06db098bc8fd"
|
||||
CHECKSUM_SHA256="2baf3ef1ce752bc10d806f53302c0cb73a47bcd38f06d81c70a8b97c76852fe5"
|
||||
CHECKSUM_SHA256_2="3ee7b50ca756bea61de6f23905da04a4865d28829053a274daa013990187b245"
|
||||
CHECKSUM_SHA256_3="5dbf67dbb0720056ea29f6b585ee6fa18c1d2f2632437f4f75e6a5a93791dc18"
|
||||
SOURCE_DIR="llvm-$llvmSrcGitRev"
|
||||
SOURCE_DIR_2="clang-$clangSrcGitRev"
|
||||
SOURCE_DIR_3="clang-tools-extra-$clangToolsExtraSrcGitRev"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From beedec1421bd9f6b0b47c737cc8645c4ac846fc9 Mon Sep 17 00:00:00 2001
|
||||
From 459637c4df935cb42b44a2c2ba2588f1cc1aedc8 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander von Gluck IV <kallisti5@unixzen.com>
|
||||
Date: Sun, 1 Feb 2015 15:13:57 +0000
|
||||
Subject: haiku: fix header search paths
|
||||
@@ -12,7 +12,7 @@ index 26bab0d..6066d2b 100644
|
||||
+++ b/lib/Frontend/InitHeaderSearch.cpp
|
||||
@@ -267,38 +267,41 @@ void InitHeaderSearch::AddDefaultCIncludePaths(const llvm::Triple &triple,
|
||||
}
|
||||
|
||||
|
||||
case llvm::Triple::Haiku:
|
||||
- AddPath("/boot/common/include", System, false);
|
||||
- AddPath("/boot/develop/headers/os", System, false);
|
||||
@@ -84,11 +84,11 @@ index 26bab0d..6066d2b 100644
|
||||
break;
|
||||
case llvm::Triple::RTEMS:
|
||||
break;
|
||||
--
|
||||
--
|
||||
2.2.2
|
||||
|
||||
|
||||
From 4d40e94790e30c03090121b10e178d5f73598ecb Mon Sep 17 00:00:00 2001
|
||||
From 0115888596994260188bcb7cfe46ac43bc2fb138 Mon Sep 17 00:00:00 2001
|
||||
From: Jerome Duval <jerome.duval@gmail.com>
|
||||
Date: Tue, 22 Dec 2015 22:07:06 +0000
|
||||
Subject: don't include c++ headers in C include search paths.
|
||||
@@ -116,7 +116,7 @@ index 902338b..a9a11dc 100644
|
||||
@@ -2992,6 +2992,34 @@ SanitizerMask CloudABI::getDefaultSanitizers() const {
|
||||
return SanitizerKind::SafeStack;
|
||||
}
|
||||
|
||||
|
||||
+/// Haiku - Haiku tool chain which can call as(1) and ld(1) directly.
|
||||
+
|
||||
+Haiku::Haiku(const Driver &D, const llvm::Triple& Triple, const ArgList &Args)
|
||||
@@ -146,7 +146,7 @@ index 902338b..a9a11dc 100644
|
||||
+}
|
||||
+
|
||||
/// OpenBSD - OpenBSD tool chain which can call as(1) and ld(1) directly.
|
||||
|
||||
|
||||
OpenBSD::OpenBSD(const Driver &D, const llvm::Triple &Triple,
|
||||
diff --git a/lib/Driver/ToolChains.h b/lib/Driver/ToolChains.h
|
||||
index e799217..6c4f03b 100644
|
||||
@@ -155,7 +155,7 @@ index e799217..6c4f03b 100644
|
||||
@@ -678,6 +678,18 @@ private:
|
||||
void findGccLibDir();
|
||||
};
|
||||
|
||||
|
||||
+class LLVM_LIBRARY_VISIBILITY Haiku : public Generic_ELF {
|
||||
+public:
|
||||
+ Haiku(const Driver &D, const llvm::Triple &Triple,
|
||||
@@ -184,24 +184,24 @@ index 6066d2b..d8f0881 100644
|
||||
AddPath("/boot/system/develop/headers/3rdparty", System, false);
|
||||
AddPath("/boot/system/develop/headers/bsd", System, false);
|
||||
AddPath("/boot/system/develop/headers/glibc", System, false);
|
||||
--
|
||||
--
|
||||
2.2.2
|
||||
|
||||
|
||||
From 3129de52da2ecdc2fe014e0d2240d81fe6b05d7c Mon Sep 17 00:00:00 2001
|
||||
From 8467d9e526766e7d41215ea2880fa79418798c3c Mon Sep 17 00:00:00 2001
|
||||
From: Jerome Duval <jerome.duval@gmail.com>
|
||||
Date: Thu, 14 Jan 2016 19:19:14 +0000
|
||||
Subject: add Haiku target info for x86_64
|
||||
|
||||
|
||||
diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp
|
||||
index be1afce..fd3c0ba 100644
|
||||
index 7639b04..1713133 100644
|
||||
--- a/lib/Basic/Targets.cpp
|
||||
+++ b/lib/Basic/Targets.cpp
|
||||
@@ -377,6 +377,29 @@ public:
|
||||
: OSTargetInfo<Target>(Triple, CGOpts) {}
|
||||
@@ -375,6 +375,29 @@ public:
|
||||
: OSTargetInfo<Target>(Triple, Opts) {}
|
||||
};
|
||||
|
||||
|
||||
+// Haiku Target
|
||||
+template<typename Target>
|
||||
+class HaikuTargetInfo : public OSTargetInfo<Target> {
|
||||
@@ -214,8 +214,8 @@ index be1afce..fd3c0ba 100644
|
||||
+ DefineStd(Builder, "unix", Opts);
|
||||
+ }
|
||||
+public:
|
||||
+ HaikuTargetInfo(const llvm::Triple &Triple, const CodeGenOptions &CGOpts)
|
||||
+ : OSTargetInfo<Target>(Triple, CGOpts) {
|
||||
+ HaikuTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts)
|
||||
+ : OSTargetInfo<Target>(Triple, Opts) {
|
||||
+ this->SizeType = TargetInfo::UnsignedLong;
|
||||
+ this->IntPtrType = TargetInfo::SignedLong;
|
||||
+ this->PtrDiffType = TargetInfo::SignedLong;
|
||||
@@ -228,23 +228,21 @@ index be1afce..fd3c0ba 100644
|
||||
// Minix Target
|
||||
template<typename Target>
|
||||
class MinixTargetInfo : public OSTargetInfo<Target> {
|
||||
@@ -3993,22 +4016,15 @@ public:
|
||||
@@ -3983,21 +4006,15 @@ public:
|
||||
};
|
||||
|
||||
|
||||
// x86-32 Haiku target
|
||||
-class HaikuX86_32TargetInfo : public X86_32TargetInfo {
|
||||
+class HaikuX86_32TargetInfo : public HaikuTargetInfo<X86_32TargetInfo> {
|
||||
public:
|
||||
- HaikuX86_32TargetInfo(const llvm::Triple &Triple,
|
||||
- const CodeGenOptions &CGOpts)
|
||||
- : X86_32TargetInfo(Triple, CGOpts) {
|
||||
HaikuX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts)
|
||||
- : X86_32TargetInfo(Triple, Opts) {
|
||||
- SizeType = UnsignedLong;
|
||||
- IntPtrType = SignedLong;
|
||||
- PtrDiffType = SignedLong;
|
||||
- ProcessIDType = SignedLong;
|
||||
- this->TLSSupported = false;
|
||||
+ HaikuX86_32TargetInfo(const llvm::Triple &Triple, const CodeGenOptions &CGOpts)
|
||||
+ : HaikuTargetInfo<X86_32TargetInfo>(Triple, CGOpts) {
|
||||
+ : HaikuTargetInfo<X86_32TargetInfo>(Triple, Opts) {
|
||||
}
|
||||
void getTargetDefines(const LangOptions &Opts,
|
||||
MacroBuilder &Builder) const override {
|
||||
@@ -254,30 +252,30 @@ index be1afce..fd3c0ba 100644
|
||||
- Builder.defineMacro("__HAIKU__");
|
||||
}
|
||||
};
|
||||
|
||||
@@ -4783,7 +4799,7 @@ public:
|
||||
|
||||
@@ -4770,7 +4787,7 @@ public:
|
||||
} else if (Feature == "+dsp") {
|
||||
DSP = 1;
|
||||
} else if (Feature == "+fp-only-sp") {
|
||||
- HW_FP_remove |= HW_FP_DP;
|
||||
- HW_FP_remove |= HW_FP_DP;
|
||||
+ HW_FP_remove |= HW_FP_DP;
|
||||
} else if (Feature == "+strict-align") {
|
||||
Unaligned = 0;
|
||||
} else if (Feature == "+fp16") {
|
||||
@@ -8238,6 +8254,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple,
|
||||
return new MicrosoftX86_64TargetInfo(Triple, CGOpts);
|
||||
@@ -8225,6 +8242,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple,
|
||||
return new MicrosoftX86_64TargetInfo(Triple, Opts);
|
||||
}
|
||||
}
|
||||
+ case llvm::Triple::Haiku:
|
||||
+ return new HaikuTargetInfo<X86_64TargetInfo>(Triple, CGOpts);
|
||||
+ return new HaikuTargetInfo<X86_64TargetInfo>(Triple, Opts);
|
||||
case llvm::Triple::NaCl:
|
||||
return new NaClTargetInfo<X86_64TargetInfo>(Triple, CGOpts);
|
||||
return new NaClTargetInfo<X86_64TargetInfo>(Triple, Opts);
|
||||
case llvm::Triple::PS4:
|
||||
--
|
||||
--
|
||||
2.2.2
|
||||
|
||||
|
||||
From fb95b90fc6392ab2fdeffdf6920d2105731a98e9 Mon Sep 17 00:00:00 2001
|
||||
From 7e065cba77bf166d2dfabf15943e65f408922fe0 Mon Sep 17 00:00:00 2001
|
||||
From: Jerome Duval <jerome.duval@gmail.com>
|
||||
Date: Thu, 7 Apr 2016 18:30:52 +0000
|
||||
Subject: add a test for haiku driver.
|
||||
@@ -290,7 +288,7 @@ index a9a11dc..0bd3251 100644
|
||||
+++ b/lib/Driver/ToolChains.cpp
|
||||
@@ -3006,6 +3006,10 @@ void Haiku::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs,
|
||||
return;
|
||||
|
||||
|
||||
switch (GetCXXStdlibType(DriverArgs)) {
|
||||
+ case ToolChain::CST_Libcxx:
|
||||
+ addSystemInclude(DriverArgs, CC1Args,
|
||||
@@ -317,6 +315,6 @@ index 0000000..9591739
|
||||
+// CHECK-X86: clang{{.*}}" "-cc1" "-triple" "i586-pc-haiku"
|
||||
+// CHECK-X86: gcc{{.*}}" "-o" "a.out" "{{.*}}.o"
|
||||
+
|
||||
--
|
||||
--
|
||||
2.2.2
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 20048e8134f8b14aa1ebed173990600476a31706 Mon Sep 17 00:00:00 2001
|
||||
From 2f0a97bebdd47be657fd459e09ab632fc1d4d141 Mon Sep 17 00:00:00 2001
|
||||
From: Jerome Duval <jerome.duval@gmail.com>
|
||||
Date: Wed, 20 Jan 2016 21:13:28 +0000
|
||||
Subject: llvm-config: use /develop/headers instead of /include
|
||||
@@ -45,26 +45,3 @@ index 94d426b..2942242 100644
|
||||
--
|
||||
2.2.2
|
||||
|
||||
|
||||
From c7c19a37f2c7bac448f2a9c290e8104090e3b171 Mon Sep 17 00:00:00 2001
|
||||
From: Jerome Duval <jerome.duval@gmail.com>
|
||||
Date: Wed, 24 Feb 2016 22:46:03 +0000
|
||||
Subject: patch cmake build for Haiku.
|
||||
|
||||
|
||||
diff --git a/cmake/modules/CheckAtomic.cmake b/cmake/modules/CheckAtomic.cmake
|
||||
index 551de6a..d43fd7b 100644
|
||||
--- a/cmake/modules/CheckAtomic.cmake
|
||||
+++ b/cmake/modules/CheckAtomic.cmake
|
||||
@@ -32,8 +32,6 @@ if (LLVM_COMPILER_IS_GCC_COMPATIBLE)
|
||||
if (NOT HAVE_CXX_ATOMICS_WITH_LIB)
|
||||
message(FATAL_ERROR "Host compiler must support std::atomic!")
|
||||
endif()
|
||||
- else()
|
||||
- message(FATAL_ERROR "Host compiler appears to require libatomic, but cannot find it.")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
--
|
||||
2.2.2
|
||||
|
||||
|
||||
Reference in New Issue
Block a user