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%%.*}
-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+=(
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%%.*}
-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+=(
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%%.*}
-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+=(
# 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%%.*}
-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+=(
# 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%%.*}
-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+=(
<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>