summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2017-06-07 21:45:36 -0700
committerKhem Raj <raj.khem@gmail.com>2017-06-07 21:45:36 -0700
commit36ab7027d63850c53423460b3df6f66ca6ac6e40 (patch)
tree119b1c0f1bb080ecd910022b5a43792bacdaed8d
parent0299667f1952e4d6fdef352ea7bf4acf8b9c9f18 (diff)
downloadmeta-clang-36ab7027d63850c53423460b3df6f66ca6ac6e40.tar.gz
clang/llvm: Update to latest master
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--recipes-devtools/clang/clang.inc14
-rw-r--r--recipes-devtools/clang/clang/0001-libcxx-use-constexpr-when-using-glibc.patch25
-rw-r--r--recipes-devtools/clang/clang/0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch6
-rw-r--r--recipes-devtools/clang/clang/0002-llvm-Differentiate-between-glibc-and-linux.patch26
-rw-r--r--recipes-devtools/clang/clang/0002-llvm-allow-env-override-of-exe-path.patch (renamed from recipes-devtools/clang/clang/0003-llvm-allow-env-override-of-exe-path.patch)8
-rw-r--r--recipes-devtools/clang/common.inc3
6 files changed, 29 insertions, 53 deletions
diff --git a/recipes-devtools/clang/clang.inc b/recipes-devtools/clang/clang.inc
index ea7f89d..0e80bbc 100644
--- a/recipes-devtools/clang/clang.inc
+++ b/recipes-devtools/clang/clang.inc
@@ -12,14 +12,14 @@ MINOR_VER="0"
12PATCH_VER="0" 12PATCH_VER="0"
13PV = "${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}" 13PV = "${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}"
14BRANCH = "master" 14BRANCH = "master"
15SRCREV_llvm = "6680feb0be2a858969f05b906bbdc4ac48160af0" 15SRCREV_llvm = "5db707b0ff5ce707a78082219658a999b6b6eaa3"
16SRCREV_clang = "40ed16ee38828a60d1eb11122170d8ac8611422c" 16SRCREV_clang = "5cfaf047c277163a75b7bab2fd58c812e7a13424"
17SRCREV_compiler-rt = "6b09b9e2f0d280aa933c522066f5c68299f40833" 17SRCREV_compiler-rt = "4906f471eeabb1ffd1edb2c6cef5b5a5d790ddd7"
18SRCREV_cxxabi = "4072e8fd76febee37f60aeda76d6d9f5e3791daa" 18SRCREV_cxxabi = "35b048cf8b3be1a4171f26ca87504bdb10a9f2e9"
19SRCREV_libcxx = "efae8792d80314d9d884d76187795db7a1f9346b" 19SRCREV_libcxx = "1cf5591af9f5f7d8a97ae069bc736c1250a35a33"
20SRCREV_libunwind = "86219d8c6a73f95e694b4e1594e1a8a0a33613b6" 20SRCREV_libunwind = "86219d8c6a73f95e694b4e1594e1a8a0a33613b6"
21SRCREV_lld = "1478859ee649213f37529a0cebc6d2fedb04b091" 21SRCREV_lld = "3372b8f0e7438bb3486abde6aa0c41ac17ba6688"
22SRCREV_lldb = "b9fb6e957cf16d34b0f44e21911e44a34468c9d5" 22SRCREV_lldb = "50a43fd42566d6ab17f3c84ec1116a8bfd9c58f4"
23 23
24LLVMMD5SUM = "e825e017edc35cfd58e26116e5251771" 24LLVMMD5SUM = "e825e017edc35cfd58e26116e5251771"
25CLANGMD5SUM = "a77eac638a3aae44a2d604217d6f0f01" 25CLANGMD5SUM = "a77eac638a3aae44a2d604217d6f0f01"
diff --git a/recipes-devtools/clang/clang/0001-libcxx-use-constexpr-when-using-glibc.patch b/recipes-devtools/clang/clang/0001-libcxx-use-constexpr-when-using-glibc.patch
index 43387a3..c295276 100644
--- a/recipes-devtools/clang/clang/0001-libcxx-use-constexpr-when-using-glibc.patch
+++ b/recipes-devtools/clang/clang/0001-libcxx-use-constexpr-when-using-glibc.patch
@@ -1,4 +1,4 @@
1From 7eef5975d0c68e8b34505a334061610efe50df3b Mon Sep 17 00:00:00 2001 1From e57d8fcd1d70c4be85f8f07722d1c1d61fe51d2a Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 19 May 2016 23:22:52 -0700 3Date: Thu, 19 May 2016 23:22:52 -0700
4Subject: [PATCH] libcxx: use constexpr when using glibc 4Subject: [PATCH] libcxx: use constexpr when using glibc
@@ -12,26 +12,26 @@ code is invalid
12 12
13Signed-off-by: Khem Raj <raj.khem@gmail.com> 13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14--- 14---
15 include/__mutex_base | 13 ++++++++++++- 15 include/__mutex_base | 10 ++++++++--
16 1 file changed, 12 insertions(+), 1 deletion(-) 16 1 file changed, 8 insertions(+), 2 deletions(-)
17 17
18Index: libcxx/include/__mutex_base 18diff --git a/include/__mutex_base b/include/__mutex_base
19=================================================================== 19index 3b2453f1b..08f35434f 100644
20--- libcxx.orig/include/__mutex_base 20--- a/include/__mutex_base
21+++ libcxx/include/__mutex_base 21+++ b/include/__mutex_base
22@@ -44,7 +44,10 @@ class _LIBCPP_TYPE_VIS _LIBCPP_THREAD_SA 22@@ -48,7 +48,10 @@ class _LIBCPP_TYPE_VIS _LIBCPP_THREAD_SAFETY_ANNOTATION(capability("mutex")) mut
23 public: 23 public:
24 _LIBCPP_INLINE_VISIBILITY 24 _LIBCPP_INLINE_VISIBILITY
25 #ifndef _LIBCPP_CXX03_LANG 25 #ifndef _LIBCPP_CXX03_LANG
26- constexpr mutex() _NOEXCEPT = default; 26- constexpr mutex() = default;
27+#ifdef __GLIBC__ 27+#ifdef __GLIBC__
28+ constexpr 28+ constexpr
29+#endif 29+#endif
30+ mutex() _NOEXCEPT = default; 30+ mutex() = default;
31 #else 31 #else
32 mutex() _NOEXCEPT {__m_ = (__libcpp_mutex_t)_LIBCPP_MUTEX_INITIALIZER;} 32 mutex() _NOEXCEPT {__m_ = (__libcpp_mutex_t)_LIBCPP_MUTEX_INITIALIZER;}
33 #endif 33 #endif
34@@ -289,7 +292,10 @@ class _LIBCPP_TYPE_VIS condition_variabl 34@@ -296,7 +299,10 @@ class _LIBCPP_TYPE_VIS condition_variable
35 public: 35 public:
36 _LIBCPP_INLINE_VISIBILITY 36 _LIBCPP_INLINE_VISIBILITY
37 #ifndef _LIBCPP_CXX03_LANG 37 #ifndef _LIBCPP_CXX03_LANG
@@ -43,3 +43,6 @@ Index: libcxx/include/__mutex_base
43 #else 43 #else
44 condition_variable() _NOEXCEPT {__cv_ = (__libcpp_condvar_t)_LIBCPP_CONDVAR_INITIALIZER;} 44 condition_variable() _NOEXCEPT {__cv_ = (__libcpp_condvar_t)_LIBCPP_CONDVAR_INITIALIZER;}
45 #endif 45 #endif
46--
472.13.1
48
diff --git a/recipes-devtools/clang/clang/0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch b/recipes-devtools/clang/clang/0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch
index fff2179..cb047ea 100644
--- a/recipes-devtools/clang/clang/0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch
+++ b/recipes-devtools/clang/clang/0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch
@@ -1,7 +1,7 @@
1From f5c30ecd374aae4bef7a13084c8254894748e7f5 Mon Sep 17 00:00:00 2001 1From 28293e48cf1a52004c6a78de448718441f9e05f9 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 21 May 2016 00:33:20 +0000 3Date: Sat, 21 May 2016 00:33:20 +0000
4Subject: [PATCH 1/3] llvm: TargetLibraryInfo: Undefine libc functions if they 4Subject: [PATCH 1/2] llvm: TargetLibraryInfo: Undefine libc functions if they
5 are macros 5 are macros
6 6
7musl defines some functions as macros and not inline functions 7musl defines some functions as macros and not inline functions
@@ -87,5 +87,5 @@ index 9cbe917c146..aff8419cf54 100644
87 TLI_DEFINE_STRING_INTERNAL("tmpfile64") 87 TLI_DEFINE_STRING_INTERNAL("tmpfile64")
88 /// int toascii(int c); 88 /// int toascii(int c);
89-- 89--
902.13.0 902.13.1
91 91
diff --git a/recipes-devtools/clang/clang/0002-llvm-Differentiate-between-glibc-and-linux.patch b/recipes-devtools/clang/clang/0002-llvm-Differentiate-between-glibc-and-linux.patch
deleted file mode 100644
index a4cc474..0000000
--- a/recipes-devtools/clang/clang/0002-llvm-Differentiate-between-glibc-and-linux.patch
+++ /dev/null
@@ -1,26 +0,0 @@
1From c838ab629c64a98e194520f10b391f174fbccc96 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 9 May 2017 15:16:45 -0700
4Subject: [PATCH 2/3] llvm: Differentiate between glibc and linux
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 lib/Support/Unix/DynamicLibrary.inc | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-)
10
11diff --git a/lib/Support/Unix/DynamicLibrary.inc b/lib/Support/Unix/DynamicLibrary.inc
12index a0526fa2c1b..aca85c62e54 100644
13--- a/lib/Support/Unix/DynamicLibrary.inc
14+++ b/lib/Support/Unix/DynamicLibrary.inc
15@@ -104,7 +104,7 @@ static void *DoSearch(const char* SymbolName) {
16 // On linux we have a weird situation. The stderr/out/in symbols are both
17 // macros and global variables because of standards requirements. So, we
18 // boldly use the EXPLICIT_SYMBOL macro without checking for a #define first.
19-#if defined(__linux__) and !defined(__ANDROID__)
20+#if defined(__linux__) and !defined(__ANDROID__) and defined(__GLIBC__)
21 {
22 EXPLICIT_SYMBOL(stderr);
23 EXPLICIT_SYMBOL(stdout);
24--
252.13.0
26
diff --git a/recipes-devtools/clang/clang/0003-llvm-allow-env-override-of-exe-path.patch b/recipes-devtools/clang/clang/0002-llvm-allow-env-override-of-exe-path.patch
index 8e9ac23..6864bcd 100644
--- a/recipes-devtools/clang/clang/0003-llvm-allow-env-override-of-exe-path.patch
+++ b/recipes-devtools/clang/clang/0002-llvm-allow-env-override-of-exe-path.patch
@@ -1,7 +1,7 @@
1From 31fd46a8b262b67c143b10c72c01d7289468fc8f Mon Sep 17 00:00:00 2001 1From d776487bac17650704614248d19d1e6b35775001 Mon Sep 17 00:00:00 2001
2From: Martin Kelly <mkelly@xevo.com> 2From: Martin Kelly <mkelly@xevo.com>
3Date: Fri, 19 May 2017 00:22:57 -0700 3Date: Fri, 19 May 2017 00:22:57 -0700
4Subject: [PATCH 3/3] llvm: allow env override of exe path 4Subject: [PATCH 2/2] llvm: allow env override of exe path
5 5
6When using a native llvm-config from inside a sysroot, we need llvm-config to 6When using a native llvm-config from inside a sysroot, we need llvm-config to
7return the libraries, include directories, etc. from inside the sysroot rather 7return the libraries, include directories, etc. from inside the sysroot rather
@@ -15,7 +15,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
15 1 file changed, 7 insertions(+) 15 1 file changed, 7 insertions(+)
16 16
17diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp 17diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
18index 25344e4cd01..26724c1b825 100644 18index 08b096afb05..d8d7742744e 100644
19--- a/tools/llvm-config/llvm-config.cpp 19--- a/tools/llvm-config/llvm-config.cpp
20+++ b/tools/llvm-config/llvm-config.cpp 20+++ b/tools/llvm-config/llvm-config.cpp
21@@ -225,6 +225,13 @@ Typical components:\n\ 21@@ -225,6 +225,13 @@ Typical components:\n\
@@ -33,5 +33,5 @@ index 25344e4cd01..26724c1b825 100644
33 // allow taking the address of ::main however. 33 // allow taking the address of ::main however.
34 void *P = (void *)(intptr_t)GetExecutablePath; 34 void *P = (void *)(intptr_t)GetExecutablePath;
35-- 35--
362.13.0 362.13.1
37 37
diff --git a/recipes-devtools/clang/common.inc b/recipes-devtools/clang/common.inc
index 847c290..0f01131 100644
--- a/recipes-devtools/clang/common.inc
+++ b/recipes-devtools/clang/common.inc
@@ -5,8 +5,7 @@ FILESEXTRAPATHS =. "${FILE_DIRNAME}/clang:"
5# 5#
6LLVMPATCHES = "\ 6LLVMPATCHES = "\
7 file://0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch \ 7 file://0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch \
8 file://0002-llvm-Differentiate-between-glibc-and-linux.patch \ 8 file://0002-llvm-allow-env-override-of-exe-path.patch \
9 file://0003-llvm-allow-env-override-of-exe-path.patch \
10" 9"
11 10
12# Clang patches 11# Clang patches