diff options
author | dim <dim@FreeBSD.org> | 2012-02-28 18:30:18 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2012-02-28 18:30:18 +0000 |
commit | 0d1f91e8e1d46e491844d983927a0fbfc1c6b414 (patch) | |
tree | 3aa885ba7c336d9e6d260c5deb1228863b043b89 /lib | |
parent | 86b4719ed57cc44687bc6f6b1ea3786dce60a2d1 (diff) | |
download | FreeBSD-src-0d1f91e8e1d46e491844d983927a0fbfc1c6b414.zip FreeBSD-src-0d1f91e8e1d46e491844d983927a0fbfc1c6b414.tar.gz |
Define several extra macros in bsd.sys.mk and sys/conf/kern.pre.mk, to
get rid of testing explicitly for clang (using ${CC:T:Mclang}) in
individual Makefiles.
Instead, use the following extra macros, for use with clang:
- NO_WERROR.clang (disables -Werror)
- NO_WCAST_ALIGN.clang (disables -Wcast-align)
- NO_WFORMAT.clang (disables -Wformat and friends)
- CLANG_NO_IAS (disables integrated assembler)
- CLANG_OPT_SMALL (adds flags for extra small size optimizations)
As a side effect, this enables setting CC/CXX/CPP in src.conf instead of
make.conf! For clang, use the following:
CC=clang
CXX=clang++
CPP=clang-cpp
MFC after: 2 weeks
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libsm/Makefile | 4 | ||||
-rw-r--r-- | lib/libthread_db/Makefile | 4 | ||||
-rw-r--r-- | lib/libz/Makefile | 8 |
3 files changed, 6 insertions, 10 deletions
diff --git a/lib/libsm/Makefile b/lib/libsm/Makefile index 661e87a..f2f19fb 100644 --- a/lib/libsm/Makefile +++ b/lib/libsm/Makefile @@ -18,12 +18,10 @@ CFLAGS+=${SENDMAIL_CFLAGS} WARNS?= 2 -.if ${CC:T:Mclang} == "clang" # Unfortunately, clang gives warnings about sendmail code that cannot # be turned off yet. Since this is contrib code, and we don't really # care about the warnings, just make them non-fatal for now. -NO_WERROR= -.endif +NO_WERROR.clang= LIB= sm diff --git a/lib/libthread_db/Makefile b/lib/libthread_db/Makefile index a66f25d..b612f4f 100644 --- a/lib/libthread_db/Makefile +++ b/lib/libthread_db/Makefile @@ -16,10 +16,8 @@ SYM_MAPS+=${.CURDIR}/Symbol.map SYMBOL_MAPS=${SYM_MAPS} VERSION_DEF=${.CURDIR}/../libc/Versions.def -.if ${CC:T:Mclang} == "clang" # Unfortunately, clang gives an incorrect warning about alignment in # arch/i386/libpthread_md.c, so turn that off for now. -NO_WCAST_ALIGN= -.endif +NO_WCAST_ALIGN.clang= .include <bsd.lib.mk> diff --git a/lib/libz/Makefile b/lib/libz/Makefile index 8ae9aeb..e373e83 100644 --- a/lib/libz/Makefile +++ b/lib/libz/Makefile @@ -47,10 +47,6 @@ ACFLAGS+= -Wa,--noexecstack #SRCS+= gvmat64.S #CFLAGS+= -DASMV -DNO_UNDERLINE #ACFLAGS+= -Wa,--noexecstack -#.if ${CC:T:Mclang} == "clang" -## XXX: clang integrated-as doesn't grok .intel_syntax directives yet -#ACFLAGS+= ${.IMPSRC:T:Mgvmat64.S:C/^.+$/-no-integrated-as/} -#.endif #.endif VERSION_DEF= ${.CURDIR}/Versions.def @@ -71,3 +67,7 @@ test: example minigzip echo hello world | ./minigzip | ./minigzip -d ) .include <bsd.lib.mk> + +## XXX: clang integrated-as doesn't grok .intel_syntax directives yet +#ACFLAGS.gvmat64.S= ${CLANG_NO_IAS} +#ACFLAGS+= ${ACFLAGS.${.IMPSRC:T}} |