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.

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 723e60a278
commit 4510f2ca91
4 changed files with 12 additions and 8 deletions
+6 -4
View File
@@ -1,5 +1,5 @@
.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
.Dd April 23, 2024 .Dd May 1, 2024
.Dt SRC.CONF 5 .Dt SRC.CONF 5
.Os .Os
.Sh NAME .Sh NAME
@@ -1716,9 +1716,11 @@ and that the runtime support library is available
Do not build Do not build
.Xr unbound 8 .Xr unbound 8
and related programs. and related programs.
.It Va WITHOUT_UNDEFINED_VERSION .It Va WITH_UNDEFINED_VERSION
Link libraries with --no-undefined-version to ensure all symbols are Link libraries with --undefined-version which permits version maps to
provided. 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 .It Va WITHOUT_UNIFIED_OBJDIR
Use the historical object directory format for Use the historical object directory format for
.Xr build 7 .Xr build 7
+2 -2
View File
@@ -68,7 +68,6 @@ __DEFAULT_YES_OPTIONS = \
SSP \ SSP \
TESTS \ TESTS \
TOOLCHAIN \ TOOLCHAIN \
UNDEFINED_VERSION \
WARNS \ WARNS \
WERROR WERROR
@@ -81,7 +80,8 @@ __DEFAULT_NO_OPTIONS = \
PROFILE \ PROFILE \
RETPOLINE \ RETPOLINE \
STALE_STAGED \ STALE_STAGED \
UBSAN UBSAN \
UNDEFINED_VERSION
__DEFAULT_DEPENDENT_OPTIONS = \ __DEFAULT_DEPENDENT_OPTIONS = \
MAKE_CHECK_USE_SANDBOX/TESTS \ MAKE_CHECK_USE_SANDBOX/TESTS \
@@ -1,2 +0,0 @@
Link libraries with --no-undefined-version to ensure all symbols are
provided.
@@ -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.