Date: Tue, 30 Aug 2016 23:12:56 +0000 From: Brooks Davis <brooks@freebsd.org> To: Matthew Macy <mmacy@nextbsd.org> Cc: Brooks Davis <brooks@freebsd.org>, "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: External toolchain support broken for devel/llvm38 but not devel/llvm37 Message-ID: <20160830231256.GA29873@spindle.one-eyed-alien.net> In-Reply-To: <156dd6e37af.105c3e4a5169175.7556090170284948749@nextbsd.org> References: <156d96ebba6.d2524daa80643.7192912559150916238@nextbsd.org> <20160830210841.GA25000@spindle.one-eyed-alien.net> <156dd6e37af.105c3e4a5169175.7556090170284948749@nextbsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--5vNYLRcllDrimb99 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Aug 30, 2016 at 02:50:03PM -0700, Matthew Macy wrote: >=20 >=20 >=20 > ---- On Tue, 30 Aug 2016 14:08:41 -0700 Brooks Davis <brooks@freebsd.org= > wrote ----=20 > > On Mon, Aug 29, 2016 at 08:12:08PM -0700, Matthew Macy wrote:=20 > > > It looks like there is something broken with the devel/llvm38 port o= r external toolchain support has regressed:=20 > > > =20 > > > =20 > > > This works:=20 > > > make XCC=3D/usr/local/bin/clang37 XCXX=3D/usr/local/bin/clang++37 X= CPP=3D/usr/local/bin/clang-cpp37 buildworld -j12 -s=20 > > > =20 > > > This fails:=20 > > > make XCC=3D/usr/local/bin/clang38 XCXX=3D/usr/local/bin/clang++38 = XCPP=3D/usr/local/bin/clang-cpp38 buildworld -j12 -s=20 > > > =20 > > > with:=20 > > > =20 > > > /home/mmacy/devel/build/mnt/storage/mmacy/devel/drm-next-merge/tmp/u= sr/bin/ld: /usr/local/llvm38/bin/../lib/clang/3.8.1/lib/freebsd/libclang_rt= =2Eubsan_standalone-x86_64.a: No such file: No such file or directory=20 > > > clang-3.8: error: linker command failed with exit code 1 (use -v to = see invocation)=20 > > =20 > > I've fixed the install problem. I'm rather confused about why clang= =20 > > would try to link with sanitizer libraries when building source. That= 's=20 > > certainly not default behavior.=20 > =20 > Thanks for the extremely prompt response to both issues. I haven't figure= d out why svn has problems but the libc/tests failure can be traced back to= the following commit: >=20 > commit 3d2a537705eca33db3c523f4f92290d382aa7ab1 > Author: ngie <ngie@FreeBSD.org> > Date: Fri Jan 2 05:40:02 2015 +0000 >=20 > Don't install h_raw if dealing with clang 3.5.0+ to unbreak the tests= 2 Jenkins > job > =20 > The h_raw application doesn't do proper bounds checking without the o= ption > being supplied via the build, which means that it doesn't throw signa= ls and > fail as expected > =20 > PR: 196430 > X-MFC with: r276479 >=20 > diff --git a/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh b/contrib/netbsd-= tests/lib/libc/ssp/t_ssp.sh > index 04adc67..362178f 100755 > --- a/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh > +++ b/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh > @@ -360,6 +360,9 @@ raw_head() > raw_body() > { > prog=3D"$(atf_get_srcdir)/h_raw" > + # Begin FreeBSD > + [ -x $prog ] || atf_skip "$prog is missing; skipping testcase" > + # End FreeBSD > =20 > h_pass "$prog 9" > # Begin FreeBSD > diff --git a/lib/libc/tests/ssp/Makefile b/lib/libc/tests/ssp/Makefile > index 1649cc2..7bc8660 100644 > --- a/lib/libc/tests/ssp/Makefile > +++ b/lib/libc/tests/ssp/Makefile > @@ -9,10 +9,7 @@ WARNS?=3D 2 > =20 > CFLAGS.h_raw+=3D -fstack-protector-all -Wstack-protector > .if ${COMPILER_TYPE} =3D=3D "clang" > -# Disable -fsanitize=3Dbounds until runtime support is done for clang 3.= 5.0. > -.if ${COMPILER_VERSION} < 30500 > CFLAGS.h_raw+=3D -fsanitize=3Dbounds > -.endif Thanks for hunting this down. There's no strong reason to assume that a given clang has sanitizers available. In the current build system, you need a clang tree to build the sanitizers, but the build process is separate. If we're going to enable sanitizers in tests, we need to do so conditionally so we don't break the tests on non-x86 systems and so compiler installs don't need to provide them. -- Brooks --5vNYLRcllDrimb99 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJXxhL3AAoJEKzQXbSebgfALlgH/0EyQkoEa0kmCQC3n/V9Cnwa Huhmo/oQZcxXehMFVz6tYkN4mCarZPbcdYNSMgPXzsYhk+aHZeuk97ins1Szswho uy80Fm6AqJkmVHcZm4FVr72+pL9HoQwFCN2HZsklbOibGPuw/O92kucoiv8aF35z 1CWjDCxZ/b8P1nsgeP2Bq2d4mW55KLwKgvGEHvGcBwJlvS1cm148kQYIJJcbfwTo 0OrqodhOJOjc0MIYZ9XmNvqXHVE+jY606MsqjIq6eBu8hmG8BVk7qy50DiuCfyh8 l4NSFS8s9un5llX04PhniEjhzDHMdL4Bx9QqbcK0v1stv2P23jFtxnD3Zau56/w= =wJYH -----END PGP SIGNATURE----- --5vNYLRcllDrimb99--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160830231256.GA29873>