Don't use -Wl,--no-undefined with the sanitizers/fuzzers.

It breaks linking when using -fsanitize with clang at least.
This commit is contained in:
Todd C. Miller
2023-01-19 19:40:35 -07:00
parent c6cc680069
commit 7a64275a3d
2 changed files with 36 additions and 30 deletions

9
configure vendored
View File

@@ -19824,10 +19824,12 @@ fi
#
# Don't allow undefined symbols, even in shared libraries, if possible.
# This will detect missing symbols at build-time instead of run-time.
# This will detect missing symbols at build-time instead of run-time
# but is incompatible with the sanitizers/fuzzers.
# We must set this *before* the library tests.
#
case "$host_os" in
if test X"${enable_sanitizer}{enable_fuzzer}" = X"nono"; then
case "$host_os" in
freebsd*|dragonfly*|openbsd*)
# On FreeBSD and Dragonfly, environ is filled in by the
# dynamic loader so we cannot use -Wl,--no-undefined.
@@ -19914,7 +19916,8 @@ esac
fi
;;
esac
esac
fi
#
# HP-UX may need to define _XOPEN_SOURCE_EXTENDED to expose MSG_WAITALL.

View File

@@ -2451,10 +2451,12 @@ AC_SYS_YEAR2038
#
# Don't allow undefined symbols, even in shared libraries, if possible.
# This will detect missing symbols at build-time instead of run-time.
# This will detect missing symbols at build-time instead of run-time
# but is incompatible with the sanitizers/fuzzers.
# We must set this *before* the library tests.
#
case "$host_os" in
if test X"${enable_sanitizer}{enable_fuzzer}" = X"nono"; then
case "$host_os" in
freebsd*|dragonfly*|openbsd*)
# On FreeBSD and Dragonfly, environ is filled in by the
# dynamic loader so we cannot use -Wl,--no-undefined.
@@ -2467,7 +2469,8 @@ case "$host_os" in
*)
AX_CHECK_LINK_FLAG([-Wl,--no-undefined], [AX_APPEND_FLAG([-Wl,--no-undefined], [LDFLAGS])])
;;
esac
esac
fi
#
# HP-UX may need to define _XOPEN_SOURCE_EXTENDED to expose MSG_WAITALL.