From c45018041d5537d2a91c2d63e3982127041d523b Mon Sep 17 00:00:00 2001 From: Ed Maste Date: Sat, 29 Feb 2020 12:43:43 +0000 Subject: [PATCH] retire the LLVM_LIBUNWIND option LLVM's libunwind is used on all FreeBSD-supported CPU architectures and is a required component. Reviewed by: brooks (earlier) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23123 --- Makefile.inc1 | 4 +--- UPDATING | 4 ++++ contrib/bmake/mk/meta2deps.sh | 1 - lib/Makefile | 4 ++-- share/mk/local.dirdeps.mk | 4 ---- share/mk/local.gendirdeps.mk | 1 - share/mk/meta2deps.sh | 1 - share/mk/src.opts.mk | 2 -- targets/pseudo/userland/gnu/Makefile.depend | 3 --- targets/pseudo/userland/lib/Makefile.depend | 2 -- tools/build/options/WITHOUT_LLVM_LIBUNWIND | 2 -- tools/build/options/WITH_LLVM_LIBUNWIND | 2 -- 12 files changed, 7 insertions(+), 23 deletions(-) delete mode 100644 tools/build/options/WITHOUT_LLVM_LIBUNWIND delete mode 100644 tools/build/options/WITH_LLVM_LIBUNWIND diff --git a/Makefile.inc1 b/Makefile.inc1 index c1b9699203bc..80ee71f602d2 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2747,7 +2747,7 @@ _prereq_libs+= lib/libssp_nonshared # These dependencies are not automatically generated: # -# gnu/lib/libgcc, lib/csu and lib/libc must be built before +# lib/csu and lib/libc must be built before # all shared libraries for ELF. # _startup_libs= lib/csu @@ -2757,7 +2757,6 @@ _startup_libs+= lib/libc_nonshared _startup_libs+= lib/libcxxrt .endif -.if ${MK_LLVM_LIBUNWIND} != "no" _prereq_libs+= lib/libgcc_eh lib/libgcc_s _startup_libs+= lib/libgcc_eh lib/libgcc_s @@ -2766,7 +2765,6 @@ lib/libgcc_s__L: lib/libc_nonshared__L .if ${MK_LIBCPLUSPLUS} != "no" lib/libcxxrt__L: lib/libgcc_s__L .endif -.endif _prebuild_libs= ${_kerberos5_lib_libasn1} \ ${_kerberos5_lib_libhdb} \ diff --git a/UPDATING b/UPDATING index 4f198da2ff33..b8eb203b4224 100644 --- a/UPDATING +++ b/UPDATING @@ -26,6 +26,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW: disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20200229: + The WITHOUT_LLVM_LIBUNWIND option has been removed. LLVM's libunwind + is used by all supported CPU architectures. + 20200229: GCC 4.2.1 has been removed from the tree. The WITH_GCC, WITH_GCC_BOOTSTRAP, and WITH_GNUCXX options are no longer available. diff --git a/contrib/bmake/mk/meta2deps.sh b/contrib/bmake/mk/meta2deps.sh index cca885dae5b2..15e033447100 100755 --- a/contrib/bmake/mk/meta2deps.sh +++ b/contrib/bmake/mk/meta2deps.sh @@ -49,7 +49,6 @@ # The output, is a set of absolute paths with "SB" like: #.nf # -# $SB/obj-i386/bsd/gnu/lib/libgcc # $SB/obj-i386/bsd/include # $SB/obj-i386/bsd/lib/csu/i386 # $SB/obj-i386/bsd/lib/libc diff --git a/lib/Makefile b/lib/Makefile index 90fe4a904060..14f9e4715020 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -53,6 +53,8 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \ libexpat \ libfetch \ libfigpar \ + libgcc_eh \ + libgcc_s \ libgeom \ libifconfig \ libipsec \ @@ -177,8 +179,6 @@ _libcplusplus+= libc++experimental SUBDIR.${MK_EFI}+= libefivar SUBDIR.${MK_GOOGLETEST}+= googletest SUBDIR.${MK_LIBTHR}+= libthr -SUBDIR.${MK_LLVM_LIBUNWIND}+= libgcc_eh -SUBDIR.${MK_LLVM_LIBUNWIND}+= libgcc_s SUBDIR.${MK_NETGRAPH}+= libnetgraph SUBDIR.${MK_NIS}+= libypclnt diff --git a/share/mk/local.dirdeps.mk b/share/mk/local.dirdeps.mk index 1b2da562b4e9..6e1a56d56036 100644 --- a/share/mk/local.dirdeps.mk +++ b/share/mk/local.dirdeps.mk @@ -91,13 +91,9 @@ DIRDEPS += \ # Add both gcc_s and gcc_eh as dependencies as the decision to build # -static or not is not known here. .if ${DEP_RELDIR:M*libgcc*} == "" && ${DIRDEPS:U:Mlib/libc} != "" -.if ${MK_LLVM_LIBUNWIND} == "yes" DIRDEPS+= \ lib/libgcc_eh \ lib/libgcc_s -.else -DIRDEPS+= gnu/lib/libgcc -.endif .endif # Bootstrap support. Give hints to DIRDEPS if there is no Makefile.depend* diff --git a/share/mk/local.gendirdeps.mk b/share/mk/local.gendirdeps.mk index aaa2abb2909f..b19e5f64ee74 100644 --- a/share/mk/local.gendirdeps.mk +++ b/share/mk/local.gendirdeps.mk @@ -10,7 +10,6 @@ GENDIRDEPS_FILTER+= \ Nlib/libssp_nonshared \ Ncddl/usr.bin/ctf* \ Nlib/libc_nonshared \ - Ngnu/lib/libgcc \ Nlib/libgcc_eh \ Nlib/libgcc_s \ Nstand/libsa/* \ diff --git a/share/mk/meta2deps.sh b/share/mk/meta2deps.sh index 7b849bfdaf13..d2536e6063ed 100755 --- a/share/mk/meta2deps.sh +++ b/share/mk/meta2deps.sh @@ -49,7 +49,6 @@ # The output, is a set of absolute paths with "SB" like: #.nf # -# $SB/obj-i386/bsd/gnu/lib/libgcc # $SB/obj-i386/bsd/include # $SB/obj-i386/bsd/lib/csu/i386 # $SB/obj-i386/bsd/lib/libc diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index 56c2f82453d9..6385ad13b05e 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -127,7 +127,6 @@ __DEFAULT_YES_OPTIONS = \ LIBPTHREAD \ LIBTHR \ LLVM_COV \ - LLVM_LIBUNWIND \ LLVM_TARGET_ALL \ LOADER_GELI \ LOADER_LUA \ @@ -423,7 +422,6 @@ MK_${var}:= no # .if !${COMPILER_FEATURES:Mc++11} MK_GOOGLETEST:= no -MK_LLVM_LIBUNWIND:= no .endif .if ${MK_CAPSICUM} == "no" diff --git a/targets/pseudo/userland/gnu/Makefile.depend b/targets/pseudo/userland/gnu/Makefile.depend index 397cc03c7f71..db1410c8b737 100644 --- a/targets/pseudo/userland/gnu/Makefile.depend +++ b/targets/pseudo/userland/gnu/Makefile.depend @@ -37,7 +37,4 @@ DIRDEPS = \ DIRDEPS+= gnu/usr.bin/dtc .endif -.if ${MK_LLVM_LIBUNWIND} == "no" -.endif - .include diff --git a/targets/pseudo/userland/lib/Makefile.depend b/targets/pseudo/userland/lib/Makefile.depend index 9f72a50e7884..109da1e353e1 100644 --- a/targets/pseudo/userland/lib/Makefile.depend +++ b/targets/pseudo/userland/lib/Makefile.depend @@ -237,11 +237,9 @@ DIRDEPS+= lib/libgpio DIRDEPS+= lib/libefivar .endif -.if ${MK_LLVM_LIBUNWIND} != "no" DIRDEPS+= \ lib/libgcc_eh \ lib/libgcc_s -.endif .if ${MK_PMC} != "no" DIRDEPS+= \ diff --git a/tools/build/options/WITHOUT_LLVM_LIBUNWIND b/tools/build/options/WITHOUT_LLVM_LIBUNWIND deleted file mode 100644 index 63a904230a26..000000000000 --- a/tools/build/options/WITHOUT_LLVM_LIBUNWIND +++ /dev/null @@ -1,2 +0,0 @@ -.\" $FreeBSD$ -Set to use GCC's stack unwinder (instead of LLVM's libunwind). diff --git a/tools/build/options/WITH_LLVM_LIBUNWIND b/tools/build/options/WITH_LLVM_LIBUNWIND deleted file mode 100644 index ff63884af9e4..000000000000 --- a/tools/build/options/WITH_LLVM_LIBUNWIND +++ /dev/null @@ -1,2 +0,0 @@ -.\" $FreeBSD$ -Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).