git: aa3c7e20b986 - stable/12 - Avoid adding duplicates to SRCS/OBJS/SOBJS/POBJS

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Wed, 22 Dec 2021 10:06:05 UTC
The branch stable/12 has been updated by dim:

URL: https://cgit.FreeBSD.org/src/commit/?id=aa3c7e20b9862ae39b05b68c42defdf782ae7d44

commit aa3c7e20b9862ae39b05b68c42defdf782ae7d44
Author:     Alex Richardson <arichardson@FreeBSD.org>
AuthorDate: 2020-08-24 09:20:33 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2021-12-22 09:58:34 +0000

    Avoid adding duplicates to SRCS/OBJS/SOBJS/POBJS
    
    This is a change in preparation for stopping to use lorder.sh (D26044) and
    instead assume that we have a linker newer than ~1990. Without lorder.sh
    duplicates end up being passed to the linker when building .so files and this
    can result in duplicate symbol definition errors.
    
    There is one minor change: libcompiler_rt.a will no longer provide
    gcc_personality_v0 and instead we now only have it in libgcc_eh.a/libgcc_s.so.
    This matches GCC's behaviour.
    
    Reviewed By:    emaste, cem
    Differential Revision: https://reviews.freebsd.org/D26042
    
    (cherry picked from commit 0b862b03998a292a18bcc7f9ac5b05c0303c5de3)
---
 lib/libcompiler_rt/Makefile.inc  | 1 -
 lib/libgcc_eh/Makefile           | 1 +
 lib/libgcc_eh/Makefile.inc       | 1 -
 lib/libprocstat/Makefile         | 2 --
 stand/userboot/userboot/Makefile | 1 -
 5 files changed, 1 insertion(+), 5 deletions(-)

diff --git a/lib/libcompiler_rt/Makefile.inc b/lib/libcompiler_rt/Makefile.inc
index 8b9a009a91e9..5766e835ea38 100644
--- a/lib/libcompiler_rt/Makefile.inc
+++ b/lib/libcompiler_rt/Makefile.inc
@@ -69,7 +69,6 @@ SRCF+=		floatunsisf
 SRCF+=		floatuntidf
 SRCF+=		floatuntisf
 SRCF+=		floatuntixf
-SRCF+=		gcc_personality_v0	# not in upstream
 SRCF+=		int_util
 SRCF+=		lshrdi3
 SRCF+=		lshrti3
diff --git a/lib/libgcc_eh/Makefile b/lib/libgcc_eh/Makefile
index bf018e16c9e0..ecffbf9cfd6a 100644
--- a/lib/libgcc_eh/Makefile
+++ b/lib/libgcc_eh/Makefile
@@ -8,6 +8,7 @@ NO_PIC=
 MK_SSP=		no
 WARNS?=	2
 
+SRCS_EXC+=	int_util.c
 .include "Makefile.inc"
 
 .if ${.MAKE.LEVEL} > 0
diff --git a/lib/libgcc_eh/Makefile.inc b/lib/libgcc_eh/Makefile.inc
index 9925d156fb04..6e025921180a 100644
--- a/lib/libgcc_eh/Makefile.inc
+++ b/lib/libgcc_eh/Makefile.inc
@@ -9,7 +9,6 @@ STATIC_CFLAGS+=${PICFLAG} -fvisibility=hidden -DVISIBILITY_HIDDEN
 .PATH: ${COMPILERRTDIR}/lib/builtins
 .PATH: ${UNWINDSRCDIR}
 SRCS_EXC+=	gcc_personality_v0.c
-SRCS_EXC+=	int_util.c
 SRCS_EXC+=	Unwind-EHABI.cpp
 SRCS_EXC+=	Unwind-sjlj.c
 SRCS_EXC+=	UnwindLevel1-gcc-ext.c
diff --git a/lib/libprocstat/Makefile b/lib/libprocstat/Makefile
index cedfed27fda1..30e68ffb7352 100644
--- a/lib/libprocstat/Makefile
+++ b/lib/libprocstat/Makefile
@@ -63,8 +63,6 @@ MLINKS+=libprocstat.3 procstat_close.3 \
 CFLAGS+=	-DLIBPROCSTAT_ZFS
 SRCS+=	zfs.c
 OBJS+=	zfs/zfs_defs.o
-SOBJS+=	zfs/zfs_defs.pico
-POBJS+=	zfs/zfs_defs.po
 SUBDIR=	zfs
 zfs/zfs_defs.o: .PHONY
 	@cd ${.CURDIR}/zfs && ${MAKE} zfs_defs.o
diff --git a/stand/userboot/userboot/Makefile b/stand/userboot/userboot/Makefile
index 7a5462bf2723..a6e884be1040 100644
--- a/stand/userboot/userboot/Makefile
+++ b/stand/userboot/userboot/Makefile
@@ -20,7 +20,6 @@ SRCS+=		bootinfo.c
 SRCS+=		bootinfo32.c
 SRCS+=		bootinfo64.c
 SRCS+=		conf.c
-SRCS+=		console.c
 SRCS+=		copy.c
 SRCS+=		devicename.c
 SRCS+=		elf32_freebsd.c