commit:     1393d91fc66fd5afad091e408fbadf5bab514678
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Jan  3 18:36:29 2019 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Jan  3 18:37:12 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1393d91f

sys-devel/clang: Backport atomic detection fix

Closes: https://bugs.gentoo.org/667016
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-devel/clang/clang-7.0.1.ebuild                 |  4 +++
 ...x-detecting-atomics-in-stand-alone-builds.patch | 38 ++++++++++++++++++++++
 2 files changed, 42 insertions(+)

diff --git a/sys-devel/clang/clang-7.0.1.ebuild 
b/sys-devel/clang/clang-7.0.1.ebuild
index 628a17f3f48..e48ada0998b 100644
--- a/sys-devel/clang/clang-7.0.1.ebuild
+++ b/sys-devel/clang/clang-7.0.1.ebuild
@@ -71,6 +71,10 @@ CMAKE_BUILD_TYPE=RelWithDebInfo
 PATCHES=(
        # add Prefix include paths for Darwin
        "${FILESDIR}"/6.0.1/darwin_prefix-include-paths.patch
+
+       # fix detecting atomics library in clangd
+       # https://bugs.gentoo.org/667016
+       
"${FILESDIR}"/7.0.1/0001-clangd-Fix-detecting-atomics-in-stand-alone-builds.patch
 )
 
 # Multilib notes:

diff --git 
a/sys-devel/clang/files/7.0.1/0001-clangd-Fix-detecting-atomics-in-stand-alone-builds.patch
 
b/sys-devel/clang/files/7.0.1/0001-clangd-Fix-detecting-atomics-in-stand-alone-builds.patch
new file mode 100644
index 00000000000..151c2b5e8e8
--- /dev/null
+++ 
b/sys-devel/clang/files/7.0.1/0001-clangd-Fix-detecting-atomics-in-stand-alone-builds.patch
@@ -0,0 +1,38 @@
+From 74aa5bb20b3d8e1ed2b590053fdd665e9dde8462 Mon Sep 17 00:00:00 2001
+From: Michal Gorny <mgo...@gentoo.org>
+Date: Thu, 3 Jan 2019 16:43:27 +0000
+Subject: [PATCH] [clangd] Fix detecting atomics in stand-alone builds
+
+Include CheckAtomic CMake module from LLVM in order to detect support
+for atomics when building stand-alone.  Otherwise,
+the HAVE_CXX_ATOMICS64_WITHOUT_LIB variable is undefined and clangd
+wrongly attempts to link -latomic on systems not using the library.
+
+Original bug report: https://bugs.gentoo.org/667016
+
+Differential Revision: https://reviews.llvm.org/D56061
+
+git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@350329 
91177308-0d34-0410-b5e6-96231b3b80d8
+---
+ clangd/CMakeLists.txt | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/clangd/CMakeLists.txt b/clangd/CMakeLists.txt
+index 39467bd5..251ee7fc 100644
+--- a/tools/extra/clangd/CMakeLists.txt
++++ b/tools/extra/clangd/CMakeLists.txt
+@@ -2,6 +2,11 @@ set(LLVM_LINK_COMPONENTS
+   Support
+   )
+ 
++if(CLANG_BUILT_STANDALONE)
++  # needed to get HAVE_CXX_ATOMICS64_WITHOUT_LIB defined
++  include(CheckAtomic)
++endif()
++
+ set(CLANGD_ATOMIC_LIB "")
+ if(NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB)
+   list(APPEND CLANGD_ATOMIC_LIB "atomic")
+-- 
+2.20.1
+

Reply via email to