Date: Wed, 19 Jun 2019 12:20:00 -0700 From: Bryan Drewery <bdrewery@FreeBSD.org> To: 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: <6a5f0886-3ee8-df4d-0cb4-65a3e89bc4a0@FreeBSD.org> In-Reply-To: <35afacf4-a52b-2b82-144c-4d40cbe58d74@FreeBSD.org> References: <e04776f5-3d8b-7198-de38-bf4e23c42d16@gwdg.de> <CANCZdfqPTwAy7qbuxKnxEcXtKZiYHMrh=PVnz_%2BEKwvD9rn_GA@mail.gmail.com> <f8135ca6-b4a8-a524-6d21-321ffc5b88ec@FreeBSD.org> <35afacf4-a52b-2b82-144c-4d40cbe58d74@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) --vbKdDPlhdI0VQuJzZeZQje0zuv624BTto Content-Type: multipart/mixed; boundary="GCqtYhtI7uyqlo8pa7Pnps0wwrkjtOHAj"; protected-headers="v1" From: Bryan Drewery <bdrewery@FreeBSD.org> To: Rainer Hurling <rhurlin@gwdg.de> Cc: FreeBSD Current <freebsd-current@freebsd.org> Message-ID: <6a5f0886-3ee8-df4d-0cb4-65a3e89bc4a0@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> <35afacf4-a52b-2b82-144c-4d40cbe58d74@FreeBSD.org> In-Reply-To: <35afacf4-a52b-2b82-144c-4d40cbe58d74@FreeBSD.org> --GCqtYhtI7uyqlo8pa7Pnps0wwrkjtOHAj Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 6/19/19 11:05 AM, Bryan Drewery wrote: > 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 amd6= 4 >>>> (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_PR= OGS=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-he= aders >>>> -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-equalit= y >>>> -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_TES= TING >>>> -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-val= ue >>>> -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 (Phen= om >>>> II X6 1090T). >>>> >>>> Am I the only one, who observes this breakage? Thanks for any hint. >>>> >>> >>> Try adding -DWITHOUT_TESTS to buildworld... >>> >>> Warner >>> >> >> ~/git/freebsd2/tests/sys/kern # env|grep TEST >> MK_TESTS=3Dno >> >> >> Doh. Turns out I've had TESTS disabled in some of my recent build test= s >> / commits. This is likely my fault. >> >=20 > Yup it is from my r349065. >=20 > It's an ambiguity between LDADD.<PROG_TARGET> and my newly added > LDADD.<compile target>. >=20 > LDADD.libkern_crc32+=3D ${SRCTOP}/sys/libkern/x86/crc32_sse42.c >=20 > So it's added in twice. >=20 >=20 This should be fixed in r349202. Sorry for the trouble. --=20 Regards, Bryan Drewery --GCqtYhtI7uyqlo8pa7Pnps0wwrkjtOHAj-- --vbKdDPlhdI0VQuJzZeZQje0zuv624BTto Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEE+Rc8ssOq6npcih8JNddxu25Gl88FAl0KiuAACgkQNddxu25G l8/yswf+Jo6C+utjGlpSdJVRceL1TugnsogvpKhjhN/vzZijZEU7uUP5x3n3qm7p 0uiNFhoWTpov1eirBKzw36Fy+XGmELm3sLNQrQmREtkbGl4DVhyUMFfc042XoFMj bN3iItMvGFftzOwSJriqF9SCs+RPwcPF+hnJFkKW3ttUHuVWwW1mapvZ4BtmyqyK 37jWCwZrmEFIknErQqMebF/mVOQt1pa3PD7kDToY32smpiqufHAB/LlpjnP8zPNR l+Sth2eh4IZgMXC2SUo3hCan7zeumlqpkJz9jF1PargB2QSPKbZ1bA5qcqrpK2eS gnI8ed9xiQoBgW436as9/wY6vOTYnw== =B03z -----END PGP SIGNATURE----- --vbKdDPlhdI0VQuJzZeZQje0zuv624BTto--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a5f0886-3ee8-df4d-0cb4-65a3e89bc4a0>