Date: Wed, 19 Jun 2019 11:05:40 -0700 From: Bryan Drewery <bdrewery@FreeBSD.org> To: Warner Losh <imp@bsdimp.com>, Rainer Hurling <rhurlin@gwdg.de> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: r349100: buildworld does not compile (ld: error: duplicate symbol: sse42_crc32c) Message-ID: <35afacf4-a52b-2b82-144c-4d40cbe58d74@FreeBSD.org> In-Reply-To: <f8135ca6-b4a8-a524-6d21-321ffc5b88ec@FreeBSD.org> References: <e04776f5-3d8b-7198-de38-bf4e23c42d16@gwdg.de> <CANCZdfqPTwAy7qbuxKnxEcXtKZiYHMrh=PVnz_%2BEKwvD9rn_GA@mail.gmail.com> <f8135ca6-b4a8-a524-6d21-321ffc5b88ec@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --8xAQm8HxuH8IooQXVOAbjia1SLOhsXzsL Content-Type: multipart/mixed; boundary="Fy3YfTt7O55K8pTbmGFEUCwc4N2ONvA2p"; protected-headers="v1" From: Bryan Drewery <bdrewery@FreeBSD.org> To: Warner Losh <imp@bsdimp.com>, Rainer Hurling <rhurlin@gwdg.de> Cc: FreeBSD Current <freebsd-current@freebsd.org> Message-ID: <35afacf4-a52b-2b82-144c-4d40cbe58d74@FreeBSD.org> Subject: Re: r349100: buildworld does not compile (ld: error: duplicate symbol: sse42_crc32c) References: <e04776f5-3d8b-7198-de38-bf4e23c42d16@gwdg.de> <CANCZdfqPTwAy7qbuxKnxEcXtKZiYHMrh=PVnz_+EKwvD9rn_GA@mail.gmail.com> <f8135ca6-b4a8-a524-6d21-321ffc5b88ec@FreeBSD.org> In-Reply-To: <f8135ca6-b4a8-a524-6d21-321ffc5b88ec@FreeBSD.org> --Fy3YfTt7O55K8pTbmGFEUCwc4N2ONvA2p Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 6/19/19 11:02 AM, Bryan Drewery wrote: > On 6/16/19 9:33 AM, Warner Losh wrote: >> On Sun, Jun 16, 2019, 9:51 AM Rainer Hurling <rhurlin@gwdg.de> wrote: >> >>> If I try to build world almost recent sources (r349100) on HEAD amd64= >>> (r348775), it stops with the following error: >>> >>> >>> [..snip..] >>> (cd /usr/src/tests/sys/kern && DEPENDFILE=3D.depend.libkern_crc32 >>> NO_SUBDIR=3D1 make -f /usr/src/tests/sys/kern/Makefile _RECURSING_PRO= GS=3Dt >>> PROG=3Dlibkern_crc32 ) >>> echo libkern_crc32: /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libc.a >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libprivateatf-c.a >> >>> .depend.libkern_crc32 >>> cc -target x86_64-unknown-freebsd13.0 >>> --sysroot=3D/usr/obj/usr/src/amd64.amd64/tmp >>> -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe >>> -DUSERSPACE_TESTING -MD -MF.depend.libkern_crc32.libkern_crc32.o >>> -MTlibkern_crc32.o -std=3Dgnu99 -fstack-protector-strong -Wsystem-hea= ders >>> -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter >>> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith >>> -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body >>> -Wno-string-plus-int -Wno-unused-const-variable >>> -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality= >>> -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef >>> -Wno-address-of-packed-member -Qunused-arguments -c >>> /usr/src/tests/sys/kern/libkern_crc32.c -o libkern_crc32.o >>> cc -target x86_64-unknown-freebsd13.0 >>> --sysroot=3D/usr/obj/usr/src/amd64.amd64/tmp >>> -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe -DUSERSPACE_TEST= ING >>> -std=3Dgnu99 -fstack-protector-strong -Wsystem-headers -Werror -Wall >>> -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes >>> -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized >>> -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int >>> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-valu= e >>> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion >>> -Wno-unused-local-typedef -Wno-address-of-packed-member >>> -Qunused-arguments -DUSERSPACE_TESTING -o libkern_crc32 >>> libkern_crc32.o /usr/src/sys/libkern/x86/crc32_sse42.c -lprivateatf-= c >>> /usr/src/sys/libkern/x86/crc32_sse42.c -lprivateatf-c >>> ld: error: duplicate symbol: sse42_crc32c >>>>>> defined at crc32_sse42.c >>>>>> /tmp/crc32_sse42-2988bd.o:(sse42_crc32c) >>>>>> defined at crc32_sse42.c >>>>>> /tmp/crc32_sse42-bcf3d2.o:(.text+0x3C0) >>> cc: error: linker command failed with exit code 1 (use -v to see >>> invocation) >>> *** [libkern_crc32] Error code 1 >>> make[6]: stopped in /usr/src/tests/sys/kern >>> 1 error >>> make[6]: stopped in /usr/src/tests/sys/kern >>> *** [libkern_crc32] Error code 2 >>> >>> >>> This happens with two older cpus, Intel (Core 17-4770) and AMD (Pheno= m >>> II X6 1090T). >>> >>> Am I the only one, who observes this breakage? Thanks for any hint. >>> >> >> Try adding -DWITHOUT_TESTS to buildworld... >> >> Warner >> >=20 > ~/git/freebsd2/tests/sys/kern # env|grep TEST > MK_TESTS=3Dno >=20 >=20 > Doh. Turns out I've had TESTS disabled in some of my recent build tests= > / commits. This is likely my fault. >=20 Yup it is from my r349065. It's an ambiguity between LDADD.<PROG_TARGET> and my newly added LDADD.<compile target>. LDADD.libkern_crc32+=3D ${SRCTOP}/sys/libkern/x86/crc32_sse42.c So it's added in twice. --=20 Regards, Bryan Drewery --Fy3YfTt7O55K8pTbmGFEUCwc4N2ONvA2p-- --8xAQm8HxuH8IooQXVOAbjia1SLOhsXzsL Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEE+Rc8ssOq6npcih8JNddxu25Gl88FAl0KeXQACgkQNddxu25G l89oKwgAw4MPE9+TBjL5vC4THi3hPDf3491uwxrwgLfvoNSoRicAzoSWta2DyRUj /OWnXiaeIRO7DUX5VP/EZAWUv5aIN3akpT3f4NC2rvNvI3+RXhOyp9xQjHNN6lEb LR+GRspNMLrbkqcwPFw38RsdQfKHzoiZj9CMqrtNQaJ7495jdw8Un1gxyEGSY/Z7 MeUPJYCHIc6Y9y6eKKOfr5iMw2PWoAd7mnKM6bgfsPW/Nh0ZoS77LQVYL1LhVziq 3TuE9vnf3JhpG3NTlLGWET4NbRUz32RXwDtQUz5aSyCERATFutuvfqYk/00tCpRY pSv6g/y7TYUTquqNnvtcZSZnb2MuQQ== =DJ2G -----END PGP SIGNATURE----- --8xAQm8HxuH8IooQXVOAbjia1SLOhsXzsL--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?35afacf4-a52b-2b82-144c-4d40cbe58d74>