summaryrefslogtreecommitdiff
path: root/sys-devel/llvm
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-08-12 06:32:46 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-08-12 06:32:46 +0100
commit28e3d252dc8ac8a5635206dfefe1cfe05058d1db (patch)
treee75bce604750fb72e53ed3684059e2e5d2094509 /sys-devel/llvm
parentf625b9919a60a30f1bd860f7d1b2eac183ced593 (diff)
gentoo resync : 12.08.2018
Diffstat (limited to 'sys-devel/llvm')
-rw-r--r--sys-devel/llvm/Manifest2
-rw-r--r--sys-devel/llvm/llvm-9999.ebuild21
2 files changed, 22 insertions, 1 deletions
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
index dfffbfe83fe6..f99d03ec8b4a 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -50,5 +50,5 @@ EBUILD llvm-5.0.2.ebuild 7798 BLAKE2B 84f50248cd66e39bfe7aa2d8d097117876f28c8f4e
EBUILD llvm-6.0.1.ebuild 7823 BLAKE2B 79893c4ecb5294b159ad4f5becff50eebbda81ce89cc7341544eda33f62579ebadd5babb446a606148e55f7ea8bb2d33f1d564ffc48881cc1af3810454188755 SHA512 3c747ebea10e942709e8e5f7a9010946f70075cb168fe9dea1162650ad605b0a1badb557082ac27c864b9fa1fbd4ea13029a83cf84c5f4938bcc29402da36415
EBUILD llvm-6.0.9999.ebuild 7514 BLAKE2B 506aec86e9f4de12d00953a33e2cbd71a29bcfd57ec621d41da18aaceebfcc56b67b830d2d6fb60293651072447947c5851f5a9d1dee64a14ede9249e33b866d SHA512 2b11e3dfdd2eec988f01cde34c1dbaa9cdd0ab4aadddd7592f9e7d782201fb0dae564fd5e69942d8da5b674353e552c4f51d164305676daf871502bb05d88be9
EBUILD llvm-7.0.9999.ebuild 7361 BLAKE2B 68f585ebe345c0e010a90fc111d504f56321e8a250c1aba0f623dde4ed13e471c4cdd62f72bfca21631044840997e7e910469220068ef886b4c89a7183ee9953 SHA512 960ba38ee105a797b6c28fe4bb44e9c3e1f3ddb1a72bd3e5c57381730340d44b8b1ecb20a8333e446a48df5740cb83f104fdd0b5e247cbddfa078c11637a7fe0
-EBUILD llvm-9999.ebuild 7668 BLAKE2B 80ba825b4408f0b0e45bd38311cb6fd4c8cca2172c21da893bd668cf2d72fcea51c9767162e0a91ef6731e5b89b75ecf8ae1618fac88d934ade995584c6c4928 SHA512 bf658a8097df6d8f2462638e0ed6abc3db3d86fbd1515dd91193364d3471deb21172da4f117e18eaace62a475e604ca49d9048e364e731061d7acc69f51f18f6
+EBUILD llvm-9999.ebuild 8213 BLAKE2B 3832405f867fed0b4a3902bae6367c0d877f7457259c85005573cd5f81c8b8269fd79af4748701142a909c51137cff7fe4dc0be2d4cc598a6ba23a62163303d7 SHA512 84e416065be278592efad7455405c7cca5b33fdcd3ce6be46767e4edae5557194d5d6cc6c18e633ca26dc1fdfca7f4c330b2ca2b51bc44d5a9ab9e9540c2a5a7
MISC metadata.xml 2861 BLAKE2B 3102fbcb2d2fe9f173f01dddc4617115e8cd569b2ced486c45affcba348a922cf09974e1bf977f0ac5ec8bb42b9fb87b1005cebcf74120cdb96f03ad8a1ae406 SHA512 0ea8dc63287f86428f6c7cce5f5be821d16f2b473c2b8d09c2edcc1e1d3ed445e3eaba1c96aaedbd13163f61e0c1deaad9df5c410bf1e73d05ad1bace88ec95e
diff --git a/sys-devel/llvm/llvm-9999.ebuild b/sys-devel/llvm/llvm-9999.ebuild
index 612f8a07e7b8..d5404d204a07 100644
--- a/sys-devel/llvm/llvm-9999.ebuild
+++ b/sys-devel/llvm/llvm-9999.ebuild
@@ -89,6 +89,18 @@ src_prepare() {
cmake-utils_src_prepare
}
+# Is LLVM being linked against libc++?
+is_libcxx_linked() {
+ local code='#include <ciso646>
+#if defined(_LIBCPP_VERSION)
+ HAVE_LIBCXX
+#endif
+'
+ local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1
+
+ [[ ${out} == *HAVE_LIBCXX* ]]
+}
+
multilib_src_configure() {
local ffi_cflags ffi_ldflags
if use libffi; then
@@ -132,6 +144,15 @@ multilib_src_configure() {
-DOCAMLFIND=NO
)
+ if is_libcxx_linked; then
+ # Smart hack: alter version suffix -> SOVERSION when linking
+ # against libc++. This way we won't end up mixing LLVM libc++
+ # libraries with libstdc++ clang, and the other way around.
+ mycmakeargs+=(
+ -DLLVM_VERSION_SUFFIX="libcxx"
+ )
+ fi
+
# Note: go bindings have no CMake rules at the moment
# but let's kill the check in case they are introduced
# if ! multilib_is_native_abi || ! use go; then