commit:     e9d44197c21230b01df34d3a726fef5707a0033b
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Dec  6 18:59:33 2018 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Dec  6 19:08:59 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9d44197

sys-libs/compiler-rt-sanitizers: Add explicit flags for components

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

 .../compiler-rt-sanitizers-6.0.1.ebuild                      | 12 +++++++-----
 .../compiler-rt-sanitizers-7.0.0.ebuild                      | 12 +++++++-----
 .../compiler-rt-sanitizers-7.0.1_rc2.ebuild                  | 12 +++++++-----
 .../compiler-rt-sanitizers-7.0.9999.ebuild                   | 12 +++++++-----
 .../compiler-rt-sanitizers-9999.ebuild                       | 12 +++++++-----
 sys-libs/compiler-rt-sanitizers/metadata.xml                 |  4 ++++
 6 files changed, 39 insertions(+), 25 deletions(-)

diff --git 
a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.1.ebuild 
b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.1.ebuild
index ad5d4e78497..6fc9d6443c5 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.1.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-6.0.1.ebuild
@@ -23,7 +23,9 @@ SRC_URI="https://releases.llvm.org/${PV/_//}/${MY_P}.tar.xz
 LICENSE="|| ( UoI-NCSA MIT )"
 SLOT="${PV%_*}"
 KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-fbsd ~amd64-linux ~ppc-macos 
~x64-macos ~x86-macos"
-IUSE="+clang test elibc_glibc"
+IUSE="+clang +libfuzzer +profile +sanitize test +xray elibc_glibc"
+# FIXME: libfuzzer does not enable all its necessary dependencies
+REQUIRED_USE="libfuzzer? ( || ( sanitize xray ) )"
 RESTRICT="!test? ( test ) !clang? ( test )"
 
 CLANG_SLOT=${SLOT%%.*}
@@ -110,10 +112,10 @@ src_configure() {
                -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
                # built-ins installed by sys-libs/compiler-rt
                -DCOMPILER_RT_BUILD_BUILTINS=OFF
-               -DCOMPILER_RT_BUILD_LIBFUZZER=ON
-               -DCOMPILER_RT_BUILD_PROFILE=ON
-               -DCOMPILER_RT_BUILD_SANITIZERS=ON
-               -DCOMPILER_RT_BUILD_XRAY=ON
+               -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
+               -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
+               -DCOMPILER_RT_BUILD_SANITIZERS=$(usex sanitize)
+               -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
        )
        if use test; then
                mycmakeargs+=(

diff --git 
a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.0.ebuild 
b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.0.ebuild
index 305137d66d4..8d0f0255d2f 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.0.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.0.ebuild
@@ -22,7 +22,9 @@ SRC_URI="https://releases.llvm.org/${PV/_//}/${MY_P}.tar.xz
 LICENSE="|| ( UoI-NCSA MIT )"
 SLOT="${PV%_*}"
 KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~ppc-macos 
~x64-macos ~x86-macos"
-IUSE="+clang test elibc_glibc"
+IUSE="+clang +libfuzzer +profile +sanitize test +xray elibc_glibc"
+# FIXME: libfuzzer does not enable all its necessary dependencies
+REQUIRED_USE="libfuzzer? ( || ( sanitize xray ) )"
 RESTRICT="!test? ( test ) !clang? ( test )"
 
 CLANG_SLOT=${SLOT%%.*}
@@ -108,10 +110,10 @@ src_configure() {
                -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
                # built-ins installed by sys-libs/compiler-rt
                -DCOMPILER_RT_BUILD_BUILTINS=OFF
-               -DCOMPILER_RT_BUILD_LIBFUZZER=ON
-               -DCOMPILER_RT_BUILD_PROFILE=ON
-               -DCOMPILER_RT_BUILD_SANITIZERS=ON
-               -DCOMPILER_RT_BUILD_XRAY=ON
+               -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
+               -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
+               -DCOMPILER_RT_BUILD_SANITIZERS=$(usex sanitize)
+               -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
        )
        if use test; then
                mycmakeargs+=(

diff --git 
a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.1_rc2.ebuild 
b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.1_rc2.ebuild
index 9d4ca8434d1..c5798146762 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.1_rc2.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.1_rc2.ebuild
@@ -22,7 +22,9 @@ SRC_URI="https://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz
 LICENSE="|| ( UoI-NCSA MIT )"
 SLOT="${PV%_*}"
 KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~ppc-macos 
~x64-macos ~x86-macos"
-IUSE="+clang test elibc_glibc"
+IUSE="+clang +libfuzzer +profile +sanitize test +xray elibc_glibc"
+# FIXME: libfuzzer does not enable all its necessary dependencies
+REQUIRED_USE="libfuzzer? ( || ( sanitize xray ) )"
 RESTRICT="!test? ( test ) !clang? ( test )"
 
 CLANG_SLOT=${SLOT%%.*}
@@ -108,10 +110,10 @@ src_configure() {
                -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
                # built-ins installed by sys-libs/compiler-rt
                -DCOMPILER_RT_BUILD_BUILTINS=OFF
-               -DCOMPILER_RT_BUILD_LIBFUZZER=ON
-               -DCOMPILER_RT_BUILD_PROFILE=ON
-               -DCOMPILER_RT_BUILD_SANITIZERS=ON
-               -DCOMPILER_RT_BUILD_XRAY=ON
+               -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
+               -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
+               -DCOMPILER_RT_BUILD_SANITIZERS=$(usex sanitize)
+               -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
        )
        if use test; then
                mycmakeargs+=(

diff --git 
a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.9999.ebuild 
b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.9999.ebuild
index 051afd44649..b15b2a7a43a 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.9999.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-7.0.9999.ebuild
@@ -22,7 +22,9 @@ LICENSE="|| ( UoI-NCSA MIT )"
 # Note: this needs to be updated to match version of clang-9999
 SLOT="7.0.1"
 KEYWORDS=""
-IUSE="+clang test elibc_glibc"
+IUSE="+clang +libfuzzer +profile +sanitize test +xray elibc_glibc"
+# FIXME: libfuzzer does not enable all its necessary dependencies
+REQUIRED_USE="libfuzzer? ( || ( sanitize xray ) )"
 RESTRICT="!test? ( test ) !clang? ( test )"
 
 CLANG_SLOT=${SLOT%%.*}
@@ -109,10 +111,10 @@ src_configure() {
                -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
                # built-ins installed by sys-libs/compiler-rt
                -DCOMPILER_RT_BUILD_BUILTINS=OFF
-               -DCOMPILER_RT_BUILD_LIBFUZZER=ON
-               -DCOMPILER_RT_BUILD_PROFILE=ON
-               -DCOMPILER_RT_BUILD_SANITIZERS=ON
-               -DCOMPILER_RT_BUILD_XRAY=ON
+               -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
+               -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
+               -DCOMPILER_RT_BUILD_SANITIZERS=$(usex sanitize)
+               -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
        )
        if use test; then
                mycmakeargs+=(

diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild 
b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild
index e39d274e7f1..78884e8f13d 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild
@@ -21,7 +21,9 @@ LICENSE="|| ( UoI-NCSA MIT )"
 # Note: this needs to be updated to match version of clang-9999
 SLOT="8.0.0"
 KEYWORDS=""
-IUSE="+clang test elibc_glibc"
+IUSE="+clang +libfuzzer +profile +sanitize test +xray elibc_glibc"
+# FIXME: libfuzzer does not enable all its necessary dependencies
+REQUIRED_USE="libfuzzer? ( || ( sanitize xray ) )"
 RESTRICT="!test? ( test ) !clang? ( test )"
 
 CLANG_SLOT=${SLOT%%.*}
@@ -108,10 +110,10 @@ src_configure() {
                -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
                # built-ins installed by sys-libs/compiler-rt
                -DCOMPILER_RT_BUILD_BUILTINS=OFF
-               -DCOMPILER_RT_BUILD_LIBFUZZER=ON
-               -DCOMPILER_RT_BUILD_PROFILE=ON
-               -DCOMPILER_RT_BUILD_SANITIZERS=ON
-               -DCOMPILER_RT_BUILD_XRAY=ON
+               -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
+               -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
+               -DCOMPILER_RT_BUILD_SANITIZERS=$(usex sanitize)
+               -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
        )
        if use test; then
                mycmakeargs+=(

diff --git a/sys-libs/compiler-rt-sanitizers/metadata.xml 
b/sys-libs/compiler-rt-sanitizers/metadata.xml
index 3b996021381..8f5cbb8b29a 100644
--- a/sys-libs/compiler-rt-sanitizers/metadata.xml
+++ b/sys-libs/compiler-rt-sanitizers/metadata.xml
@@ -7,5 +7,9 @@
        <use>
                <flag name='clang'>Force building using installed clang (rather
                        than the default CC/CXX).</flag>
+               <flag name='libfuzzer'>Build fuzzing runtime.</flag>
+               <flag name='profile'>Build profiling runtime.</flag>
+               <flag name='sanitize'>Build sanitizer runtimes.</flag>
+               <flag name='xray'>Build XRay runtime.</flag>
        </use>
 </pkgmetadata>

Reply via email to