sys-devel/clang: Fetch llvm src with USE=test, to support unittests
authorMichał Górny <mgorny@gentoo.org>
Mon, 29 Aug 2016 21:41:24 +0000 (23:41 +0200)
committerMichał Górny <mgorny@gentoo.org>
Mon, 29 Aug 2016 21:43:20 +0000 (23:43 +0200)
sys-devel/clang/clang-9999.ebuild

index 5d965090b067c8e98d06702a3bb7164212411b92..8d472dab340177c39dd1398aa28043bbec173ff9 100644 (file)
@@ -75,10 +75,19 @@ pkg_setup() {
 src_unpack() {
        git-r3_fetch "http://llvm.org/git/clang-tools-extra.git
                https://github.com/llvm-mirror/clang-tools-extra.git"
+       if use test; then
+               # needed for patched gtest
+               git-r3_fetch "http://llvm.org/git/llvm.git
+                       https://github.com/llvm-mirror/llvm.git"
+       fi
        git-r3_fetch
 
        git-r3_checkout http://llvm.org/git/clang-tools-extra.git \
                "${S}"/tools/clang/tools/extra
+       if use test; then
+               git-r3_checkout http://llvm.org/git/llvm.git \
+                       "${WORKDIR}"/llvm
+       fi
        git-r3_checkout
 }
 
@@ -140,10 +149,12 @@ multilib_src_configure() {
                -DCLANG_ENABLE_ARCMT=$(usex static-analyzer)
                -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer)
        )
+       use test && mycmakeargs+=(
+               -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm"
+       )
 
        if multilib_is_native_abi; then
                mycmakeargs+=(
-                       # TODO: docs don't work out-of-llvm
                        -DLLVM_BUILD_DOCS=$(usex doc)
                        -DLLVM_ENABLE_SPHINX=$(usex doc)
                        -DLLVM_ENABLE_DOXYGEN=OFF