From 43e8403953cb97ffa6306dd13d2e92fdec91e47c Mon Sep 17 00:00:00 2001 From: Ed Maste Date: Fri, 31 Jan 2020 18:04:04 +0000 Subject: [PATCH] retire BSD_CRTBEGIN option BSD crt is currently used on all architectures (other than sparc64). Remove the option and use BSD crt everywhere as part of the GCC 4.2.1 retirement plan. https://lists.freebsd.org/pipermail/freebsd-arch/2020-January/019823.html PR: 239851 Reviewed by: andrew, brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23122 --- Makefile.inc1 | 5 +---- contrib/bmake/mk/meta2deps.sh | 1 - gnu/lib/Makefile | 4 ---- lib/csu/Makefile.inc | 2 +- share/mk/local.dirdeps-options.mk | 1 - share/mk/local.dirdeps.mk | 6 ------ share/mk/local.gendirdeps.mk | 1 - share/mk/meta2deps.sh | 1 - share/mk/src.opts.mk | 3 --- targets/pseudo/userland/gnu/Makefile.depend | 1 - tools/build/options/WITHOUT_BSD_CRTBEGIN | 5 ----- tools/build/options/WITH_BSD_CRTBEGIN | 5 ----- 12 files changed, 2 insertions(+), 33 deletions(-) delete mode 100644 tools/build/options/WITHOUT_BSD_CRTBEGIN delete mode 100644 tools/build/options/WITH_BSD_CRTBEGIN diff --git a/Makefile.inc1 b/Makefile.inc1 index b35a9db01739..ff195bdc1295 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2783,13 +2783,10 @@ _prereq_libs+= lib/libssp_nonshared # These dependencies are not automatically generated: # -# gnu/lib/csu, gnu/lib/libgcc, lib/csu and lib/libc must be built before +# gnu/lib/libgcc, lib/csu and lib/libc must be built before # all shared libraries for ELF. # _startup_libs= lib/csu -.if ${MK_BSD_CRTBEGIN} == "no" -_startup_libs+= gnu/lib/csu -.endif _startup_libs+= lib/libc _startup_libs+= lib/libc_nonshared .if ${MK_LIBCPLUSPLUS} != "no" diff --git a/contrib/bmake/mk/meta2deps.sh b/contrib/bmake/mk/meta2deps.sh index 7caf6905bcc1..cca885dae5b2 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/csu # $SB/obj-i386/bsd/gnu/lib/libgcc # $SB/obj-i386/bsd/include # $SB/obj-i386/bsd/lib/csu/i386 diff --git a/gnu/lib/Makefile b/gnu/lib/Makefile index 38399c94a04a..c3ea5ac85881 100644 --- a/gnu/lib/Makefile +++ b/gnu/lib/Makefile @@ -10,10 +10,6 @@ SUBDIR+= libgomp .endif SUBDIR.${MK_TESTS}+= tests -.if ${MK_BSD_CRTBEGIN} == "no" -SUBDIR+= csu -.endif - .if ${MK_GNU_GREP} != "no" || ${MK_GNU_GREP_COMPAT} != "no" || \ ${MK_GDB} != "no" SUBDIR+= libregex diff --git a/lib/csu/Makefile.inc b/lib/csu/Makefile.inc index a58edf8d7e16..d6f5ca78fbe1 100644 --- a/lib/csu/Makefile.inc +++ b/lib/csu/Makefile.inc @@ -8,7 +8,7 @@ NO_WMISSING_VARIABLE_DECLARATIONS= .include -.if ${MK_BSD_CRTBEGIN} != "no" && !defined(BUILDING_TESTS) +.if !defined(BUILDING_TESTS) OBJS+= crtbegin.o crtbeginS.o crtbeginT.o OBJS+= crtend.o crtendS.o diff --git a/share/mk/local.dirdeps-options.mk b/share/mk/local.dirdeps-options.mk index 67b30f351f9f..86d6f3530e23 100644 --- a/share/mk/local.dirdeps-options.mk +++ b/share/mk/local.dirdeps-options.mk @@ -3,7 +3,6 @@ # avoid duplication DIRDEPS.AUDIT.yes= lib/libbsm DIRDEPS.BLACKLIST_SUPPORT.yes+= lib/libblacklist -DIRDEPS.BSD_CRTBEGIN.no+= gnu/lib/csu DIRDEPS.CASPER.yes+= lib/libcasper/libcasper DIRDEPS.GSSAPI.yes+= lib/libgssapi DIRDEPS.JAIL.yes+= lib/libjail diff --git a/share/mk/local.dirdeps.mk b/share/mk/local.dirdeps.mk index c18b9b7646c3..3a39d729c9e5 100644 --- a/share/mk/local.dirdeps.mk +++ b/share/mk/local.dirdeps.mk @@ -38,7 +38,6 @@ DIRDEPS_FILTER.host = \ Nlib/csu* \ Nlib/libc \ Nlib/[mn]* \ - Ngnu/lib/csu* \ Ngnu/lib/lib[a-r]* \ Nsecure/lib* \ Nusr.bin/xinstall* \ @@ -221,11 +220,6 @@ DIRDEPS += targets/pseudo/stage .endif .endif -# this one is too pervasive -.if ${MK_BSD_CRTBEGIN} == "no" && ${DEP_RELDIR:N.:Ngnu/lib/csu:Ninclude*:Ntargets/*} != "" -DIRDEPS+= gnu/lib/csu -.endif - DEP_MACHINE_ARCH = ${MACHINE_ARCH.${DEP_MACHINE}} CSU_DIR.${DEP_MACHINE_ARCH} ?= csu/${DEP_MACHINE_ARCH} CSU_DIR := ${CSU_DIR.${DEP_MACHINE_ARCH}} diff --git a/share/mk/local.gendirdeps.mk b/share/mk/local.gendirdeps.mk index cb7e4df66d73..aaa2abb2909f 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/csu \ Ngnu/lib/libgcc \ Nlib/libgcc_eh \ Nlib/libgcc_s \ diff --git a/share/mk/meta2deps.sh b/share/mk/meta2deps.sh index c4b8d8254c94..7b849bfdaf13 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/csu # $SB/obj-i386/bsd/gnu/lib/libgcc # $SB/obj-i386/bsd/include # $SB/obj-i386/bsd/lib/csu/i386 diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index 28b14cc40d94..51fc798a71f1 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -69,7 +69,6 @@ __DEFAULT_YES_OPTIONS = \ BOOTPARAMD \ BOOTPD \ BSD_CPIO \ - BSD_CRTBEGIN \ BSDINSTALL \ BSNMP \ BZIP2 \ @@ -394,8 +393,6 @@ BROKEN_OPTIONS+=NVME .endif .if ${__T:Msparc64} -# Sparc64 need extra crt*.o files - PR 239851 -BROKEN_OPTIONS+=BSD_CRTBEGIN # PR 233405 BROKEN_OPTIONS+=LLVM_LIBUNWIND .endif diff --git a/targets/pseudo/userland/gnu/Makefile.depend b/targets/pseudo/userland/gnu/Makefile.depend index 356014a4cdcc..d5c025de9846 100644 --- a/targets/pseudo/userland/gnu/Makefile.depend +++ b/targets/pseudo/userland/gnu/Makefile.depend @@ -7,7 +7,6 @@ # This file is not autogenerated - take care! DIRDEPS = \ - gnu/lib/csu \ gnu/lib/libdialog \ gnu/lib/libgcov \ gnu/lib/libgomp \ diff --git a/tools/build/options/WITHOUT_BSD_CRTBEGIN b/tools/build/options/WITHOUT_BSD_CRTBEGIN deleted file mode 100644 index 7f054be243ea..000000000000 --- a/tools/build/options/WITHOUT_BSD_CRTBEGIN +++ /dev/null @@ -1,5 +0,0 @@ -.\" $FreeBSD$ -Disable the BSD licensed -.Pa crtbegin.o -and -.Pa crtend.o . diff --git a/tools/build/options/WITH_BSD_CRTBEGIN b/tools/build/options/WITH_BSD_CRTBEGIN deleted file mode 100644 index 390a0613b1c3..000000000000 --- a/tools/build/options/WITH_BSD_CRTBEGIN +++ /dev/null @@ -1,5 +0,0 @@ -.\" $FreeBSD$ -Enable the BSD licensed -.Pa crtbegin.o -and -.Pa crtend.o .