commit: 85c6de2213e35965d2e7c79c06d9e9b9d6af7e0d Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> AuthorDate: Sat Jul 17 21:33:55 2021 +0000 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> CommitDate: Sat Jul 17 21:37:06 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=85c6de22
toolchain.eclass: pull virtual/libcrypt as a dependency for USE=sanitize Closes: https://bugs.gentoo.org/802648 Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org> eclass/toolchain.eclass | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index 57a2c95dd10..5bfa58e4a20 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -157,7 +157,7 @@ if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then tc_version_is_at_least 4.7 && IUSE+=" go" # sanitizer support appeared in gcc-4.8, but <gcc-5 does not # support modern glibc. - tc_version_is_at_least 5 && IUSE+=" +sanitize" + tc_version_is_at_least 5 && IUSE+=" +sanitize" TC_FEATURES+=(sanitize) # Note: # <gcc-4.8 supported graphite, it required forked ppl # versions which we dropped. Since graphite was also experimental in @@ -245,6 +245,13 @@ if tc_has_feature gcj ; then " fi +if tc_has_feature sanitize ; then + # libsanitizer relies on 'crypt.h' to be present + # on target. glibc user to provide it unconditionally. + # Nowadays it's a standalone library: #802648 + DEPEND+=" sanitize? ( virtual/libcrypt )" +fi + if tc_has_feature systemtap ; then # gcc needs sys/sdt.h headers on target DEPEND+=" systemtap? ( dev-util/systemtap )"