Make WITHOUT_UNDEFINED_VERSION the default

Link with --no-undefined-version by default.  Will detect and prevent
the accidental removal of symbols from versioned libraries.

(cherry picked from commit 4510f2ca91)
This reverts commit b25ceb97ed.

Reviewed by:	arichardson, kib, dim, emaste
Differential Revision:	https://reviews.freebsd.org/D44216
This commit is contained in:
Brooks Davis 2024-05-02 18:13:39 +01:00
parent 9c7f83bbb4
commit 6edb14c006
4 changed files with 11 additions and 7 deletions

View File

@ -1719,9 +1719,11 @@ and that the runtime support library is available
Do not build
.Xr unbound 8
and related programs.
.It Va WITHOUT_UNDEFINED_VERSION
Link libraries with --no-undefined-version to ensure all symbols are
provided.
.It Va WITH_UNDEFINED_VERSION
Link libraries with --undefined-version which permits version maps to
contain symbols that are not present in the library.
If this is necessicary to build a particular configuration, a bug is
present and the configuration should be reported.
.It Va WITHOUT_UNIFIED_OBJDIR
Use the historical object directory format for
.Xr build 7

View File

@ -68,7 +68,6 @@ __DEFAULT_YES_OPTIONS = \
SSP \
TESTS \
TOOLCHAIN \
UNDEFINED_VERSION \
WARNS \
WERROR
@ -81,7 +80,8 @@ __DEFAULT_NO_OPTIONS = \
PROFILE \
RETPOLINE \
STALE_STAGED \
UBSAN
UBSAN \
UNDEFINED_VERSION
__DEFAULT_DEPENDENT_OPTIONS = \
MAKE_CHECK_USE_SANDBOX/TESTS \

View File

@ -1,2 +0,0 @@
Link libraries with --no-undefined-version to ensure all symbols are
provided.

View File

@ -0,0 +1,4 @@
Link libraries with --undefined-version which permits version maps to
contain symbols that are not present in the library.
If this is necessicary to build a particular configuration, a bug is
present and the configuration should be reported.