diff options
Diffstat (limited to 'sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild')
-rw-r--r-- | sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-9999.ebuild | 16 |
1 files changed, 15 insertions, 1 deletions
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 160d18dfe137..256d472fa616 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,7 @@ LICENSE="|| ( UoI-NCSA MIT )" # Note: this needs to be updated to match version of clang-9999 SLOT="7.0.0" KEYWORDS="" -IUSE="+clang test" +IUSE="+clang test elibc_glibc" RESTRICT="!test? ( test ) !clang? ( test )" LLVM_MAX_SLOT=${SLOT%%.*} @@ -71,6 +71,20 @@ src_unpack() { git-r3_checkout } +src_prepare() { + cmake-utils_src_prepare + + if use test; then + # remove tests that are broken by new glibc + # https://bugs.llvm.org/show_bug.cgi?id=36065 + if use elibc_glibc && has_version '>=sys-libs/glibc-2.25'; then + rm test/lsan/TestCases/Linux/use_tls_dynamic.cc || die + rm test/msan/dtls_test.c || die + rm test/sanitizer_common/TestCases/Posix/sanitizer_set_death_callback_test.cc || die + fi + fi +} + src_configure() { # pre-set since we need to pass it to cmake BUILD_DIR=${WORKDIR}/${P}_build |