build: remove LIBPTHREAD/LIBTHR build options

WITHOUT_LIBTHR has been broken for a little over five years now, since the
xz 5.2.0 update introduced a hard liblzma dependency on libthr, and building
a useful system without threading support is becoming increasingly more
difficult.

Additionally, in the five plus years that it's been broken more reverse
dependencies have cropped up in libzstd, libsqlite3, and libcrypto (among
others) that make it more and more difficult to reconcile the effort needed
to fix these options.

Remove the broken options.

PR:		252760
Reviewed by:	brooks, emaste, kib
Differential Revision:	https://reviews.freebsd.org/D28263
This commit is contained in:
Kyle Evans 2021-01-20 08:01:25 -06:00
parent c0a9a0cb1f
commit 123ae3045d
13 changed files with 5 additions and 49 deletions

View File

@ -2898,7 +2898,7 @@ _prebuild_libs= ${_kerberos5_lib_libasn1} \
lib/libzstd \ lib/libzstd \
${_lib_casper} \ ${_lib_casper} \
lib/ncurses/ncurses \ lib/ncurses/ncurses \
lib/libopie lib/libpam/libpam ${_lib_libthr} \ lib/libopie lib/libpam/libpam lib/libthr \
${_lib_libradius} lib/libsbuf lib/libtacplus \ ${_lib_libradius} lib/libsbuf lib/libtacplus \
lib/libgeom \ lib/libgeom \
${_cddl_lib_libumem} ${_cddl_lib_libnvpair} \ ${_cddl_lib_libumem} ${_cddl_lib_libnvpair} \
@ -2932,10 +2932,6 @@ _prebuild_libs+= lib/libc++
lib/libgeom__L: lib/libexpat__L lib/libsbuf__L lib/libgeom__L: lib/libexpat__L lib/libsbuf__L
lib/libkvm__L: lib/libelf__L lib/libkvm__L: lib/libelf__L
.if ${MK_LIBTHR} != "no"
_lib_libthr= lib/libthr
.endif
.if ${MK_RADIUS_SUPPORT} != "no" .if ${MK_RADIUS_SUPPORT} != "no"
_lib_libradius= lib/libradius _lib_libradius= lib/libradius
.endif .endif

View File

@ -28,11 +28,9 @@ _libicp_rescue= libicp_rescue
_libzfs= libzfs _libzfs= libzfs
_libzutil= libzutil _libzutil= libzutil
_libzfsbootenv= libzfsbootenv _libzfsbootenv= libzfsbootenv
.if ${MK_LIBTHR} != "no"
_libzpool= libzpool _libzpool= libzpool
_libtpool= libtpool _libtpool= libtpool
.endif .endif
.endif
SUBDIR_DEPEND_libctf= libspl SUBDIR_DEPEND_libctf= libspl
SUBDIR_DEPEND_libdtrace= libctf SUBDIR_DEPEND_libdtrace= libctf

View File

@ -15,12 +15,10 @@ SUBDIR.${MK_TESTS}+= tests
.if ${MK_ZFS} != "no" .if ${MK_ZFS} != "no"
_zinject= zinject _zinject= zinject
.if ${MK_LIBTHR} != "no"
_ztest= ztest _ztest= ztest
_zstream = zstream _zstream = zstream
_zstreamdump = zstreamdump _zstreamdump = zstreamdump
.endif .endif
.endif
SUBDIR_PARALLEL= SUBDIR_PARALLEL=

View File

@ -13,10 +13,8 @@ SUBDIR= ${_dtrace} \
SUBDIR.${MK_TESTS}+= tests SUBDIR.${MK_TESTS}+= tests
.if ${MK_ZFS} != "no" .if ${MK_ZFS} != "no"
.if ${MK_LIBTHR} != "no"
_zdb= zdb _zdb= zdb
_zhack= zhack _zhack= zhack
.endif
. if ${MK_CXX} != "no" . if ${MK_CXX} != "no"
_zfsd= zfsd _zfsd= zfsd
. endif . endif

View File

@ -93,6 +93,7 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \
libstdthreads \ libstdthreads \
libsysdecode \ libsysdecode \
libtacplus \ libtacplus \
libthr \
libthread_db \ libthread_db \
libucl \ libucl \
libufs \ libufs \
@ -137,7 +138,7 @@ SUBDIR_DEPEND_libsmb= libkiconv
SUBDIR_DEPEND_libtacplus= libmd SUBDIR_DEPEND_libtacplus= libmd
SUBDIR_DEPEND_libulog= libmd SUBDIR_DEPEND_libulog= libmd
SUBDIR_DEPEND_libunbound= ${_libldns} SUBDIR_DEPEND_libunbound= ${_libldns}
SUBDIR_DEPEND_liblzma= ${_libthr} SUBDIR_DEPEND_liblzma= libthr
.if ${MK_OFED} != "no" .if ${MK_OFED} != "no"
SUBDIR_DEPEND_libpcap= ofed SUBDIR_DEPEND_libpcap= ofed
.endif .endif
@ -189,7 +190,6 @@ _libcplusplus+= libc++experimental
SUBDIR.${MK_EFI}+= libefivar SUBDIR.${MK_EFI}+= libefivar
SUBDIR.${MK_GOOGLETEST}+= googletest SUBDIR.${MK_GOOGLETEST}+= googletest
SUBDIR.${MK_LIBTHR}+= libthr
SUBDIR.${MK_NETGRAPH}+= libnetgraph SUBDIR.${MK_NETGRAPH}+= libnetgraph
SUBDIR.${MK_NIS}+= libypclnt SUBDIR.${MK_NIS}+= libypclnt

View File

@ -2,13 +2,8 @@
.include <src.opts.mk> .include <src.opts.mk>
SUBDIR= ${_ggatec} \ SUBDIR= ggatec \
${_ggated} \ ggated \
ggatel ggatel
.if ${MK_LIBTHR} != "no"
_ggatec= ggatec
_ggated= ggated
.endif
.include <bsd.subdir.mk> .include <bsd.subdir.mk>

View File

@ -370,7 +370,6 @@ MLINKS+= tree.3 RB_EMPTY.3 \
tree.3 SPLAY_RIGHT.3 \ tree.3 SPLAY_RIGHT.3 \
tree.3 SPLAY_ROOT.3 tree.3 SPLAY_ROOT.3
.if ${MK_LIBTHR} != "no"
PTHREAD_MAN= pthread.3 \ PTHREAD_MAN= pthread.3 \
pthread_affinity_np.3 \ pthread_affinity_np.3 \
pthread_atfork.3 \ pthread_atfork.3 \
@ -504,6 +503,5 @@ PTHREAD_MLINKS+=pthread_testcancel.3 pthread_setcancelstate.3 \
pthread_testcancel.3 pthread_setcanceltype.3 pthread_testcancel.3 pthread_setcanceltype.3
PTHREAD_MLINKS+=pthread_join.3 pthread_peekjoin_np.3 \ PTHREAD_MLINKS+=pthread_join.3 pthread_peekjoin_np.3 \
pthread_join.3 pthread_timedjoin_np.3 pthread_join.3 pthread_timedjoin_np.3
.endif
.include <bsd.prog.mk> .include <bsd.prog.mk>

View File

@ -126,8 +126,6 @@ __DEFAULT_YES_OPTIONS = \
LDNS_UTILS \ LDNS_UTILS \
LEGACY_CONSOLE \ LEGACY_CONSOLE \
LIBCPLUSPLUS \ LIBCPLUSPLUS \
LIBPTHREAD \
LIBTHR \
LLD \ LLD \
LLD_BOOTSTRAP \ LLD_BOOTSTRAP \
LLD_IS_LD \ LLD_IS_LD \
@ -378,10 +376,6 @@ BROKEN_OPTIONS+=CLANG_BOOTSTRAP LLD_BOOTSTRAP
MK_CASPER:= no MK_CASPER:= no
.endif .endif
.if ${MK_LIBPTHREAD} == "no"
MK_LIBTHR:= no
.endif
.if ${MK_SOURCELESS} == "no" .if ${MK_SOURCELESS} == "no"
MK_SOURCELESS_HOST:= no MK_SOURCELESS_HOST:= no
MK_SOURCELESS_UCODE:= no MK_SOURCELESS_UCODE:= no

View File

@ -4110,13 +4110,6 @@ OLD_DIRS+=usr/include/c++/v1/ext
OLD_DIRS+=usr/include/c++/v1 OLD_DIRS+=usr/include/c++/v1
.endif .endif
.if ${MK_LIBTHR} == no
OLD_LIBS+=lib/libthr.so.3
OLD_FILES+=usr/lib/libthr.a
OLD_FILES+=usr/lib/libthr_p.a
OLD_FILES+=usr/share/man/man3/libthr.3.gz
.endif
.if ${MK_LLD} == no .if ${MK_LLD} == no
OLD_FILES+=usr/bin/ld.lld OLD_FILES+=usr/bin/ld.lld
.endif .endif

View File

@ -1,5 +0,0 @@
.\" $FreeBSD$
Set to not build the
.Nm libpthread
providing library,
.Nm libthr .

View File

@ -1,5 +0,0 @@
.\" $FreeBSD$
Set to not build the
.Nm libthr
(1:1 threading)
library.

View File

@ -162,10 +162,8 @@ SUBDIR.${MK_LEGACY_CONSOLE}+= kbdcontrol
SUBDIR.${MK_LEGACY_CONSOLE}+= kbdmap SUBDIR.${MK_LEGACY_CONSOLE}+= kbdmap
SUBDIR.${MK_LEGACY_CONSOLE}+= moused SUBDIR.${MK_LEGACY_CONSOLE}+= moused
SUBDIR.${MK_LEGACY_CONSOLE}+= vidcontrol SUBDIR.${MK_LEGACY_CONSOLE}+= vidcontrol
.if ${MK_LIBTHR} != "no" || ${MK_LIBPTHREAD} != "no"
SUBDIR.${MK_PPP}+= pppctl SUBDIR.${MK_PPP}+= pppctl
SUBDIR.${MK_NS_CACHING}+= nscd SUBDIR.${MK_NS_CACHING}+= nscd
.endif
SUBDIR.${MK_LPR}+= lpr SUBDIR.${MK_LPR}+= lpr
SUBDIR.${MK_MAN_UTILS}+= manctl SUBDIR.${MK_MAN_UTILS}+= manctl
SUBDIR.${MK_MLX5TOOL}+= mlx5tool SUBDIR.${MK_MLX5TOOL}+= mlx5tool

View File

@ -11,9 +11,7 @@ WARNS?= 3
LIBADD= netgraph LIBADD= netgraph
.if ${MK_LIBTHR} != "no"
CFLAGS+= -DEDITLINE CFLAGS+= -DEDITLINE
LIBADD+= edit pthread LIBADD+= edit pthread
.endif
.include <bsd.prog.mk> .include <bsd.prog.mk>