[PATCH] FreeBSD compiler extensions

Roman Divacky rdivacky at freebsd.org
Tue Jul 5 08:48:45 UTC 2011


Why do you need this? Format-extensions are kernel only (which you dont use I
presume) and no-align-long-strings is boot only (which you dont use either).

Hm? :)

roman

On Tue, Jul 05, 2011 at 10:27:51AM +0200, Robert Millan wrote:
> This patch conditionalizes a pair of FreeBSD compiler extensions so
> that its CFLAGS are only used on FreeBSD.
> 
> -- 
> Robert Millan

> Index: sys/conf/kern.mk
> ===================================================================
> --- sys/conf/kern.mk	(revision 223736)
> +++ sys/conf/kern.mk	(working copy)
> @@ -1,11 +1,21 @@
>  # $FreeBSD$
>  
> +.if !defined(OPSYS)
> +OPSYS!=		uname -s
> +.endif
> +
>  #
>  # Warning flags for compiling the kernel and components of the kernel:
>  #
> +.if ${OPSYS} == "FreeBSD"
> +# FreeBSD extension, not available in upstream GCC
> +format_extensions=	-fformat-extensions
> +no_align_long_strings=	-mno-align-long-strings
> +.endif
> +
>  CWARNFLAGS?=	-Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
>  		-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \
> -		-Wundef -Wno-pointer-sign -fformat-extensions \
> +		-Wundef -Wno-pointer-sign ${format_extensions} \
>  		-Wmissing-include-dirs -fdiagnostics-show-option
>  #
>  # The following flags are next up for working on:
> @@ -32,7 +42,7 @@
>  #
>  .if ${MACHINE_CPUARCH} == "i386"
>  .if ${CC:T:Mclang} != "clang"
> -CFLAGS+=	-mno-align-long-strings -mpreferred-stack-boundary=2 -mno-sse
> +CFLAGS+=	${no_align_long_strings} -mpreferred-stack-boundary=2 -mno-sse
>  .else
>  CFLAGS+=	-mno-aes -mno-avx
>  .endif

> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"


More information about the freebsd-hackers mailing list