svn commit: r226665 - head/sys/conf
Dimitry Andric
dim at FreeBSD.org
Sun Oct 23 20:06:31 UTC 2011
On 2011-10-23 18:27, Robert Millan wrote:
> Author: rmh
> Date: Sun Oct 23 16:27:03 2011
> New Revision: 226665
> URL: http://svn.freebsd.org/changeset/base/226665
>
> Log:
> Conditionalize a pair of FreeBSD GCC extensions so that its CFLAGS are only
> used with FreeBSD GCC.
>
> Approved by: kib (mentor)
>
> Modified:
> head/sys/conf/kern.mk
>
> Modified: head/sys/conf/kern.mk
> ==============================================================================
> --- head/sys/conf/kern.mk Sun Oct 23 16:04:07 2011 (r226664)
> +++ head/sys/conf/kern.mk Sun Oct 23 16:27:03 2011 (r226665)
> @@ -1,11 +1,21 @@
> # $FreeBSD$
>
> +.if ${CC:T:Mclang} != "clang"
> +FREEBSD_GCC!= ${CC} --version | grep FreeBSD || true
> +.endif
> +
> #
> # Warning flags for compiling the kernel and components of the kernel:
> #
> +.if ${FREEBSD_GCC}
> +# FreeBSD extensions, not available in upstream GCC
> +format_extensions= -fformat-extensions
> +no_align_long_strings= -mno-align-long-strings
> +.endif
Note: this breaks builds where CC=clang, with:
>>> Kernel build for GENERIC started on Sun Oct 23 22:01:23 CEST 2011
...
>>> stage 2.1: cleaning up the object tree
--------------------------------------------------------------
cd /usr/obj/usr/src/sys/GENERIC; MAKEOBJDIRPREFIX=/usr/obj MACHINE_ARCH=i386 MACHINE=i386 CPUTYPE= GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac _SHLIBDIRPREFIX=/usr/obj/usr/src/tmp VERSION="FreeBSD 10.0-CURRENT i386 1000000" INSTALL="sh /usr/src/tools/install.sh" PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr/sbin:/usr/bin make KERNEL=kernel cleandir
"/usr/src/sys/conf/kern.mk", line 10: Malformed conditional (${FREEBSD_GCC})
"/usr/src/sys/conf/kern.mk", line 14: if-less endif
make: fatal errors encountered -- cannot continue
*** Error code 1
1 error
*** Error code 2
1 error
Exited
Process exited with status 2
Since our base 'clang --version' also has 'FreeBSD' in its output, you
might want to drop the first .if ${CC:T:Mclang} != "clang" test. E.g.
just unconditionally set the FREEBSD_GCC macro (although it's then no
longer correctly named, but that aside).
More information about the svn-src-head
mailing list