Date: Thu, 1 Jan 2015 04:52:16 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: Warner Losh <imp@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Message-ID: <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> In-Reply-To: <201501010200.t01205Ge007058@svn.freebsd.org> References: <201501010200.t01205Ge007058@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] On 01 Jan 2015, at 03:00, Warner Losh <imp@FreeBSD.org> wrote: > > Author: imp > Date: Thu Jan 1 02:00:04 2015 > New Revision: 276488 > URL: https://svnweb.freebsd.org/changeset/base/276488 > > Log: > Fix module builds on arm (and maybe others) by turning off a whole > raft of new warnings that appear to be on by default in clang 3.5.0. > Fix RPI-B build issues with new clang not liking the ability to pass > arbitrary flags to as, since some flags are more arbitrary (and thus > verboten) than others. > > These warnings should be actually fixed in the code, but this is a > band-aide to get things (almost) building again. > > Modified: > head/share/mk/bsd.kmod.mk > head/share/mk/bsd.sys.mk > head/sys/arm/broadcom/bcm2835/std.bcm2835 > head/sys/conf/kern.mk > > Modified: head/share/mk/bsd.kmod.mk > ============================================================================== > --- head/share/mk/bsd.kmod.mk Thu Jan 1 01:43:00 2015 (r276487) > +++ head/share/mk/bsd.kmod.mk Thu Jan 1 02:00:04 2015 (r276488) > @@ -13,5 +13,3 @@ SYSDIR= ${_dir} > .endif > > .include "${SYSDIR}/conf/kmod.mk" > - > -.include <bsd.sys.mk> > > Modified: head/share/mk/bsd.sys.mk > ============================================================================== > --- head/share/mk/bsd.sys.mk Thu Jan 1 01:43:00 2015 (r276487) > +++ head/share/mk/bsd.sys.mk Thu Jan 1 02:00:04 2015 (r276488) > @@ -110,11 +110,7 @@ CWARNFLAGS+= -Wno-format > CWARNFLAGS+= -Wno-unknown-pragmas > .endif # IGNORE_PRAGMA > > -.if ${COMPILER_TYPE} == "clang" > -# Would love to do this unconditionally, but can't due to its use in > -# kernel build coupled with CFLAGS.${TARGET} feature > CLANG_NO_IAS= -no-integrated-as > -.endif > CLANG_OPT_SMALL= -mstack-alignment=8 -mllvm -inline-threshold=3\ > -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=false > CFLAGS.clang+= -Qunused-arguments This should not be removed from bsd.sys.mk, since other things depend on it, are you sure that you want this? :) As far as I know, there are still a few places in the tree that use the CLANG_NO_IAS macro. It would be nice if those all went away, though... > Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 > ============================================================================== > --- head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 01:43:00 2015 (r276487) > +++ head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 02:00:04 2015 (r276488) > @@ -2,7 +2,7 @@ > > machine arm armv6 > cpu CPU_ARM1176 > -makeoptions CONF_CFLAGS="-mcpu=arm1176jzf-s -Wa,-mcpu=arm1176jzf-s" > +makeoptions CONF_CFLAGS="-mcpu=arm1176jzf-s" > > files "../broadcom/bcm2835/files.bcm2835" > > > Modified: head/sys/conf/kern.mk > ============================================================================== > --- head/sys/conf/kern.mk Thu Jan 1 01:43:00 2015 (r276487) > +++ head/sys/conf/kern.mk Thu Jan 1 02:00:04 2015 (r276488) > @@ -164,4 +164,26 @@ CFLAGS+= -fstack-protector > CFLAGS+= -gdwarf-2 > .endif > > +# A whole bunch of new default warnings in clang 3.5 subpress for now until > +# this can be cleaned up. > +.if ${COMPILER_VERSION} >= 30500 > +CFLAGS.clang+= -Wno-pointer-sign -Wno-constant-conversion -Wno-format \ > + -Wno-shift-count-negative -Wno-tautological-pointer-compare \ > + -Wno-shift-count-overflow -Wno-tautological-compare > +.endif > + > CFLAGS+= ${CFLAGS.${COMPILER_TYPE}} Note that for x86, all of these warnings were already either fixed or suppressed. I assume this will be fleshed out later? > +# Tell bmake not to mistake standard targets for things to be searched for > +# or expect to ever be up-to-date. > +PHONY_NOTMAIN = afterdepend afterinstall all beforedepend beforeinstall \ > + beforelinking build build-tools buildfiles buildincludes \ > + checkdpadd clean cleandepend cleandir cleanobj configure \ > + depend dependall distclean distribute exe \ > + html includes install installfiles installincludes lint \ > + obj objlink objs objwarn realall realdepend \ > + realinstall regress subdir-all subdir-depend subdir-install \ > + tags whereobj > + > +.PHONY: ${PHONY_NOTMAIN} > +.NOTMAIN: ${PHONY_NOTMAIN} > Was this latter part intentional? It does not seem to have anything to do with clang at all. -Dimitry [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSkxHMACgkQsF6jCi4glqMcQQCfTzTjt8h1mut6rhtgKlLde3V9 sjoAn09YyhMD9USWNJFSYN8oPtzB04As =51DO -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?760D3407-921D-4249-9DC2-74610FA46920>
