Date: Wed, 31 Dec 2014 20:44:24 -0800 From: Garrett Cooper <yaneurabeya@gmail.com> To: Warner Losh <imp@bsdimp.com> Cc: svn-src-head@freebsd.org, Warner Losh <imp@FreeBSD.org>, svn-src-all@freebsd.org, src-committers <src-committers@freebsd.org>, Dimitry Andric <dim@FreeBSD.org> Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Message-ID: <E041E7F2-CC45-4D7B-912F-E5F86772E44A@gmail.com> In-Reply-To: <FC1DD917-D28C-44B8-9BE8-45A57F4A9EA6@bsdimp.com> References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> <E1FA7448-844B-4454-8C2C-5592198D0570@gmail.com> <FC1DD917-D28C-44B8-9BE8-45A57F4A9EA6@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_93BF4834-6B1A-4397-A0BF-AD22A4D2078D Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Dec 31, 2014, at 20:25, Warner Losh <imp@bsdimp.com> wrote: >> On Dec 31, 2014, at 9:15 PM, Garrett Cooper <yaneurabeya@gmail.com> = wrote: >>=20 >> On Dec 31, 2014, at 20:12, Warner Losh <imp@bsdimp.com> wrote: >>=20 >>>> On Dec 31, 2014, at 8:52 PM, Dimitry Andric <dim@FreeBSD.org> = wrote: >>>>=20 >>>> On 01 Jan 2015, at 03:00, Warner Losh <imp@FreeBSD.org> wrote: >>>>>=20 >>>>> Author: imp >>>>> Date: Thu Jan 1 02:00:04 2015 >>>>> New Revision: 276488 >>>>> URL: https://svnweb.freebsd.org/changeset/base/276488 >>>>>=20 >>>>> 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. >>>>>=20 >>>>> These warnings should be actually fixed in the code, but this is a >>>>> band-aide to get things (almost) building again. >>>>>=20 >>>>> 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 >>>>>=20 >>>>> Modified: head/share/mk/bsd.kmod.mk >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- 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=3D ${_dir} >>>>> .endif >>>>>=20 >>>>> .include "${SYSDIR}/conf/kmod.mk" >>>>> - >>>>> -.include <bsd.sys.mk> >>>>>=20 >>>>> Modified: head/share/mk/bsd.sys.mk >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- 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+=3D -Wno-format >>>>> CWARNFLAGS+=3D -Wno-unknown-pragmas >>>>> .endif # IGNORE_PRAGMA >>>>>=20 >>>>> -.if ${COMPILER_TYPE} =3D=3D "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=3D -no-integrated-as >>>>> -.endif >>>>> CLANG_OPT_SMALL=3D -mstack-alignment=3D8 -mllvm = -inline-threshold=3D3\ >>>>> -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=3Dfalse >>>>> CFLAGS.clang+=3D -Qunused-arguments >>>>=20 >>>> This should not be removed from bsd.sys.mk, since other things = depend on >>>> it, are you sure that you want this? :) >>>=20 >>> I may be wrong here for boot stuff that uses it. >>>=20 >>>> 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=85 >>>=20 >>> Only for boot. Thanks, though I think they may be CFLAGS.clang +=3D = there. >>>=20 >>>> Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- 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 @@ >>>>>=20 >>>>> machine arm armv6 >>>>> cpu CPU_ARM1176 >>>>> -makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s = -Wa,-mcpu=3Darm1176jzf-s" >>>>> +makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s" >>>>>=20 >>>>> files "../broadcom/bcm2835/files.bcm2835" >>>>>=20 >>>>>=20 >>>>> Modified: head/sys/conf/kern.mk >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- 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+=3D -fstack-protector >>>>> CFLAGS+=3D -gdwarf-2 >>>>> .endif >>>>>=20 >>>>> +# A whole bunch of new default warnings in clang 3.5 subpress for = now until >>>>> +# this can be cleaned up. >>>>> +.if ${COMPILER_VERSION} >=3D 30500 >>>>> +CFLAGS.clang+=3D -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+=3D ${CFLAGS.${COMPILER_TYPE}} >>>>=20 >>>> Note that for x86, all of these warnings were already either fixed = or >>>> suppressed. I assume this will be fleshed out later? >>>=20 >>> Yea, but since a build universe wasn=92t done, they were present in = the >>> build. They are harmless on other architectures. >>>=20 >>>>> +# Tell bmake not to mistake standard targets for things to be = searched for >>>>> +# or expect to ever be up-to-date. >>>>> +PHONY_NOTMAIN =3D 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} >>>>>=20 >>>>=20 >>>> Was this latter part intentional? It does not seem to have = anything to >>>> do with clang at all. >>>=20 >>> It was the only bit of bsd.sys.mk that was needed. >>=20 >> Unfortunately that broke the build on all architectures where = bce is built as -std=3D was not being passed to the compiler. Jenkins = reported an error with bce: = https://jenkins.freebsd.org/job/FreeBSD_HEAD_sparc64/225/changes , and I = committed a change to bring back that support here: = https://svnweb.freebsd.org/changeset/base/276493 . Please revert it if = it wasn=92t correct. >=20 > This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. Sorry. Should have asked first. Now the build is broken on all = architectures :/. What next? --Apple-Mail=_93BF4834-6B1A-4397-A0BF-AD22A4D2078D Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpNCoAAoJEMZr5QU6S73ec60IALaKG80ebUn9xBzixLSn3qil D/a2ePdAciddpkX7Y36TisT62TjyE/Z4ryu1T77CNsxhwASxuREiQCitpAciPznE mL4apMJryxgTuzbvLJy1oB/RyDo437RADs53SJQkJh17AEsaJPGtU1nvrn2flDU0 f5mTcfjQr3Zh96Zs/PjS2d5zK2/b/BGWUE+YYuFJ8zbs9rCdF0sFuzBV+x+H7M/Q fmWcMPJLc4krrA1ngfG1VYglm2wLxsuSI3RgCkemXCq7+eBp9eb2exctntyAiBwH HXFRagqwenDCWtIKeNjH45tHigBCUhYspAa/xiZdWzGN56frZxz6VedL/rX7rco= =6duE -----END PGP SIGNATURE----- --Apple-Mail=_93BF4834-6B1A-4397-A0BF-AD22A4D2078D--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E041E7F2-CC45-4D7B-912F-E5F86772E44A>