From 07fc6b7b302a574a4d961dcab0183cd31a5ca613 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Thu, 7 Apr 2016 22:51:49 +0000 Subject: [PATCH] llvm: update git recipe. --- sys-devel/llvm/llvm-3.9.0~git.recipe | 12 ++-- .../llvm/patches/clang-3.9.0~git.patchset | 56 ++++++++++--------- .../llvm/patches/llvm-3.9.0~git.patchset | 4 +- 3 files changed, 37 insertions(+), 35 deletions(-) diff --git a/sys-devel/llvm/llvm-3.9.0~git.recipe b/sys-devel/llvm/llvm-3.9.0~git.recipe index e6b598928..25c7d81ec 100644 --- a/sys-devel/llvm/llvm-3.9.0~git.recipe +++ b/sys-devel/llvm/llvm-3.9.0~git.recipe @@ -32,18 +32,18 @@ HOMEPAGE="http://www.llvm.org/" COPYRIGHT="2003-2014 University of Illinois at Urbana-Champaign" LICENSE="UIUC" REVISION="1" -llvmSrcGitRev="2f3a50599195827ffa43496dea722a8d9b0192ef" -clangSrcGitRev="dc4b244bbdddbabdcdc66306a5fbb12470cbf4d8" -clangToolsExtraSrcGitRev="b0ef8495f2f94f22838cdfbfb093d2639d24415f" +llvmSrcGitRev="78886ec7e2107e36add101314798cf2e308cdc24" +clangSrcGitRev="020f6f6bdd62ba4c3be4c435bb223c3638339d1a" +clangToolsExtraSrcGitRev="56faca015513475b13b2784fb82d05563fe72cec" 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="e3b046c192a4abd8c86b0c172abb16d5c0a14d73f3d0db2e0f55eef4513e3e18" -CHECKSUM_SHA256_2="3b3dead2ae16fe991e2ace6cc2319d639b55c43713dda2ff202222b79507234e" -CHECKSUM_SHA256_3="294342b22e44f010f27cc9f40847edacf8cc9c0aaef44941985fcf603ab70d6f" +CHECKSUM_SHA256="9594308ff2a9f8f989f6835cdf98a11886564f169a984a33d0200c813b090ec8" +CHECKSUM_SHA256_2="77c8bef243614dc1bbf1760249ff6a48fbcfafa9d4d05074b7082a3fb85e8957" +CHECKSUM_SHA256_3="c7e91b48866d136245849dcd4a8e9d3ca2743cbc6582b634f57a06db098bc8fd" SOURCE_DIR="llvm-$llvmSrcGitRev" SOURCE_DIR_2="clang-$clangSrcGitRev" SOURCE_DIR_3="clang-tools-extra-$clangToolsExtraSrcGitRev" diff --git a/sys-devel/llvm/patches/clang-3.9.0~git.patchset b/sys-devel/llvm/patches/clang-3.9.0~git.patchset index 2ef7cbe02..ca453c01b 100644 --- a/sys-devel/llvm/patches/clang-3.9.0~git.patchset +++ b/sys-devel/llvm/patches/clang-3.9.0~git.patchset @@ -1,4 +1,4 @@ -From 047cd1961c57c4835faf0e6f5a783dd00b67b7fc Mon Sep 17 00:00:00 2001 +From beedec1421bd9f6b0b47c737cc8645c4ac846fc9 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Sun, 1 Feb 2015 15:13:57 +0000 Subject: haiku: fix header search paths @@ -88,7 +88,7 @@ index 26bab0d..6066d2b 100644 2.2.2 -From 0f4c75c113485546bea2b16bb7750297dec6e589 Mon Sep 17 00:00:00 2001 +From 4d40e94790e30c03090121b10e178d5f73598ecb Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Tue, 22 Dec 2015 22:07:06 +0000 Subject: don't include c++ headers in C include search paths. @@ -96,10 +96,10 @@ Subject: don't include c++ headers in C include search paths. * define a Haiku toolchain, and add c++ headers path. diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp -index 75dcfc9..27c8592 100644 +index 64903de..25a07b4 100644 --- a/lib/Driver/Driver.cpp +++ b/lib/Driver/Driver.cpp -@@ -2375,6 +2375,9 @@ const ToolChain &Driver::getToolChain(const ArgList &Args, +@@ -2384,6 +2384,9 @@ const ToolChain &Driver::getToolChain(const ArgList &Args, ToolChain *&TC = ToolChains[Target.str()]; if (!TC) { switch (Target.getOS()) { @@ -110,11 +110,11 @@ index 75dcfc9..27c8592 100644 TC = new toolchains::CloudABI(*this, Target, Args); break; diff --git a/lib/Driver/ToolChains.cpp b/lib/Driver/ToolChains.cpp -index 8be0684..a627b2e 100644 +index 902338b..a9a11dc 100644 --- a/lib/Driver/ToolChains.cpp +++ b/lib/Driver/ToolChains.cpp -@@ -2987,6 +2987,34 @@ SanitizerMask CloudABI::getSupportedSanitizers() const { - return Res; +@@ -2992,6 +2992,34 @@ SanitizerMask CloudABI::getDefaultSanitizers() const { + return SanitizerKind::SafeStack; } +/// Haiku - Haiku tool chain which can call as(1) and ld(1) directly. @@ -149,10 +149,10 @@ index 8be0684..a627b2e 100644 OpenBSD::OpenBSD(const Driver &D, const llvm::Triple &Triple, diff --git a/lib/Driver/ToolChains.h b/lib/Driver/ToolChains.h -index 458fd03..60752dd 100644 +index e799217..6c4f03b 100644 --- a/lib/Driver/ToolChains.h +++ b/lib/Driver/ToolChains.h -@@ -677,6 +677,18 @@ private: +@@ -678,6 +678,18 @@ private: void findGccLibDir(); }; @@ -188,18 +188,18 @@ index 6066d2b..d8f0881 100644 2.2.2 -From 34348a206e9f0cb3c81df6d845db9c1881651994 Mon Sep 17 00:00:00 2001 +From 3129de52da2ecdc2fe014e0d2240d81fe6b05d7c Mon Sep 17 00:00:00 2001 From: Jerome Duval 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 797d052..8f3079d 100644 +index be1afce..fd3c0ba 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp -@@ -365,6 +365,29 @@ public: - : OSTargetInfo(Triple) {} +@@ -377,6 +377,29 @@ public: + : OSTargetInfo(Triple, CGOpts) {} }; +// Haiku Target @@ -214,8 +214,8 @@ index 797d052..8f3079d 100644 + DefineStd(Builder, "unix", Opts); + } +public: -+ HaikuTargetInfo(const llvm::Triple &Triple) -+ : OSTargetInfo(Triple) { ++ HaikuTargetInfo(const llvm::Triple &Triple, const CodeGenOptions &CGOpts) ++ : OSTargetInfo(Triple, CGOpts) { + this->SizeType = TargetInfo::UnsignedLong; + this->IntPtrType = TargetInfo::SignedLong; + this->PtrDiffType = TargetInfo::SignedLong; @@ -228,21 +228,23 @@ index 797d052..8f3079d 100644 // Minix Target template class MinixTargetInfo : public OSTargetInfo { -@@ -3946,20 +3969,15 @@ public: +@@ -3993,22 +4016,15 @@ public: }; // x86-32 Haiku target -class HaikuX86_32TargetInfo : public X86_32TargetInfo { +class HaikuX86_32TargetInfo : public HaikuTargetInfo { public: -- HaikuX86_32TargetInfo(const llvm::Triple &Triple) : X86_32TargetInfo(Triple) { +- HaikuX86_32TargetInfo(const llvm::Triple &Triple, +- const CodeGenOptions &CGOpts) +- : X86_32TargetInfo(Triple, CGOpts) { - SizeType = UnsignedLong; - IntPtrType = SignedLong; - PtrDiffType = SignedLong; - ProcessIDType = SignedLong; - this->TLSSupported = false; -+ HaikuX86_32TargetInfo(const llvm::Triple &Triple) -+ : HaikuTargetInfo(Triple) { ++ HaikuX86_32TargetInfo(const llvm::Triple &Triple, const CodeGenOptions &CGOpts) ++ : HaikuTargetInfo(Triple, CGOpts) { } void getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const override { @@ -253,7 +255,7 @@ index 797d052..8f3079d 100644 } }; -@@ -4719,7 +4737,7 @@ public: +@@ -4783,7 +4799,7 @@ public: } else if (Feature == "+dsp") { DSP = 1; } else if (Feature == "+fp-only-sp") { @@ -262,20 +264,20 @@ index 797d052..8f3079d 100644 } else if (Feature == "+strict-align") { Unaligned = 0; } else if (Feature == "+fp16") { -@@ -8040,6 +8058,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple) { - return new MicrosoftX86_64TargetInfo(Triple); +@@ -8238,6 +8254,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, + return new MicrosoftX86_64TargetInfo(Triple, CGOpts); } } + case llvm::Triple::Haiku: -+ return new HaikuTargetInfo(Triple); ++ return new HaikuTargetInfo(Triple, CGOpts); case llvm::Triple::NaCl: - return new NaClTargetInfo(Triple); + return new NaClTargetInfo(Triple, CGOpts); case llvm::Triple::PS4: -- 2.2.2 -From 12f4c109677420d6cdab60f390df73764d3b7080 Mon Sep 17 00:00:00 2001 +From fb95b90fc6392ab2fdeffdf6920d2105731a98e9 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Thu, 7 Apr 2016 18:30:52 +0000 Subject: add a test for haiku driver. @@ -283,10 +285,10 @@ Subject: add a test for haiku driver. * upstream wants a case for libcxx in ToolChains.cpp, so add it. diff --git a/lib/Driver/ToolChains.cpp b/lib/Driver/ToolChains.cpp -index a627b2e..c7add48 100644 +index a9a11dc..0bd3251 100644 --- a/lib/Driver/ToolChains.cpp +++ b/lib/Driver/ToolChains.cpp -@@ -3001,6 +3001,10 @@ void Haiku::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, +@@ -3006,6 +3006,10 @@ void Haiku::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, return; switch (GetCXXStdlibType(DriverArgs)) { diff --git a/sys-devel/llvm/patches/llvm-3.9.0~git.patchset b/sys-devel/llvm/patches/llvm-3.9.0~git.patchset index fec2223d2..1a43b5ac6 100644 --- a/sys-devel/llvm/patches/llvm-3.9.0~git.patchset +++ b/sys-devel/llvm/patches/llvm-3.9.0~git.patchset @@ -1,4 +1,4 @@ -From 74b6d3f190e884ce14eabeda1b75c4aed053c2fd Mon Sep 17 00:00:00 2001 +From 20048e8134f8b14aa1ebed173990600476a31706 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Wed, 20 Jan 2016 21:13:28 +0000 Subject: llvm-config: use /develop/headers instead of /include @@ -46,7 +46,7 @@ index 94d426b..2942242 100644 2.2.2 -From 6132df5a243de6f167b96ceeb5026f7ada20e1a0 Mon Sep 17 00:00:00 2001 +From c7c19a37f2c7bac448f2a9c290e8104090e3b171 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Wed, 24 Feb 2016 22:46:03 +0000 Subject: patch cmake build for Haiku.