commit: 6027263a03cbfaa177399c466d48aa04f2e93f1d
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 29 20:30:54 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Dec 29 20:30:54 2017 +0000
URL: https://gitweb.gentoo.org/proj/crossdev.git/commit/?id=6027263a
crossdev: change USE=vtv to whitelist
Gentoo profiles enable vtv only for x86, amd64, arm and arm64.
vtv is known to be broken at least for:
- musl libc
- bare metal targets
- powerpc, powerpc64 (compiler SEGISEGVs: bug #618786)
- hppa, ia64 (missing vtv crt* files)
User can still explicitly enable vtv by tweaking
/etc/portage/package.use/cross-${CTARGET}
Bug: https://bugs.gentoo.org/618786
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
crossdev | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/crossdev b/crossdev
index 76f9a06..06d2775 100755
--- a/crossdev
+++ b/crossdev
@@ -335,7 +335,7 @@ parse_target() {
esac
local sanitizer_support=no
- # Whitelist asan on explicitly supported arches fo linux.
+ # Whitelist asan on explicitly supported arches for linux.
# Broken examples:
# - musl libc
# - bare metal targets
@@ -357,6 +357,28 @@ parse_target() {
if [[ $sanitizer_support = "no" ]]; then
GUSE+=" -sanitize"
fi
+
+ local vtv_support=no
+ # Whitelist asan on explicitly supported arches for linux.
+ # Broken examples:
+ # - musl libc
+ # - bare metal targets
+ # - powerpc
+ # Untested examples:
+ # - *BSD
+ case ${CTARGET} in
+ # glibc targets
+ *-gnu*)
+ case ${CTARGET} in
+ x86_64*|i?86*|arm*|aarch64)
+ vtv_support=yes
+ ;;
+ esac
+ ;;
+ esac
+ if [[ $vtv_support = "no" ]]; then
+ GUSE+=" -vtv"
+ fi
}
parse_repo_config() {