diff options
author | rpaulo <rpaulo@FreeBSD.org> | 2010-07-22 19:09:34 +0000 |
---|---|---|
committer | rpaulo <rpaulo@FreeBSD.org> | 2010-07-22 19:09:34 +0000 |
commit | f2d14f41cfaba8b7f13b549c183c6c939670cfad (patch) | |
tree | 8f739694685ee950c59aaa294112a414c90d2028 /lib/clang/clang.build.mk | |
parent | 85cc5d9d3e19a527f230ceab8f6e2f965484aae8 (diff) | |
download | FreeBSD-src-f2d14f41cfaba8b7f13b549c183c6c939670cfad.zip FreeBSD-src-f2d14f41cfaba8b7f13b549c183c6c939670cfad.tar.gz |
Build clang libraries by default with -fno-exceptions and with
-fno-rtti. The clang libaries that really use exceptions and virtual
functions can enable LLVM_REQUIRES_EH and LLVM_REQUIRES_RTTI
respectively. This saves space on the resulting binaries and follows
what's being done upstream.
Submitted by: Dimitry Andric <dimitry at andric.com>
Diffstat (limited to 'lib/clang/clang.build.mk')
-rw-r--r-- | lib/clang/clang.build.mk | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/clang/clang.build.mk b/lib/clang/clang.build.mk index fad4317..6351eda 100644 --- a/lib/clang/clang.build.mk +++ b/lib/clang/clang.build.mk @@ -17,6 +17,17 @@ TARGET_ARCH?= ${MACHINE_ARCH} # XXX: 8.0, to keep __FreeBSD_cc_version happy CFLAGS+=-DLLVM_HOSTTRIPLE=\"${TARGET_ARCH}-undermydesk-freebsd9.0\" +.ifndef LLVM_REQUIRES_EH +CFLAGS+=-fno-exceptions +.else +# If the library or program requires EH, it also requires RTTI. +LLVM_REQUIRES_RTTI= +.endif + +.ifndef LLVM_REQUIRES_RTTI +CFLAGS+=-fno-rtti +.endif + .PATH: ${LLVM_SRCS}/${SRCDIR} TBLGEN=tblgen ${CFLAGS:M-I*} |