From owner-svn-src-all@FreeBSD.ORG Thu Jul 22 19:09:35 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 517AA1065675; Thu, 22 Jul 2010 19:09:35 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 35CD18FC17; Thu, 22 Jul 2010 19:09:35 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o6MJ9Zca036136; Thu, 22 Jul 2010 19:09:35 GMT (envelope-from rpaulo@svn.freebsd.org) Received: (from rpaulo@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o6MJ9ZSd036130; Thu, 22 Jul 2010 19:09:35 GMT (envelope-from rpaulo@svn.freebsd.org) Message-Id: <201007221909.o6MJ9ZSd036130@svn.freebsd.org> From: Rui Paulo Date: Thu, 22 Jul 2010 19:09:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r210388 - in head: lib/clang lib/clang/libllvmcore lib/clang/libllvmsupport lib/clang/libllvmsystem usr.bin/clang/tblgen X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jul 2010 19:09:35 -0000 Author: rpaulo Date: Thu Jul 22 19:09:34 2010 New Revision: 210388 URL: http://svn.freebsd.org/changeset/base/210388 Log: 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 Modified: head/lib/clang/clang.build.mk head/lib/clang/libllvmcore/Makefile head/lib/clang/libllvmsupport/Makefile head/lib/clang/libllvmsystem/Makefile head/usr.bin/clang/tblgen/Makefile Modified: head/lib/clang/clang.build.mk ============================================================================== --- head/lib/clang/clang.build.mk Thu Jul 22 18:57:47 2010 (r210387) +++ head/lib/clang/clang.build.mk Thu Jul 22 19:09:34 2010 (r210388) @@ -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*} Modified: head/lib/clang/libllvmcore/Makefile ============================================================================== --- head/lib/clang/libllvmcore/Makefile Thu Jul 22 18:57:47 2010 (r210387) +++ head/lib/clang/libllvmcore/Makefile Thu Jul 22 19:09:34 2010 (r210388) @@ -35,6 +35,7 @@ SRCS= AsmWriter.cpp \ ValueSymbolTable.cpp \ ValueTypes.cpp \ Verifier.cpp +LLVM_REQUIRES_RTTI= TGHDRS= Intrinsics Modified: head/lib/clang/libllvmsupport/Makefile ============================================================================== --- head/lib/clang/libllvmsupport/Makefile Thu Jul 22 18:57:47 2010 (r210387) +++ head/lib/clang/libllvmsupport/Makefile Thu Jul 22 19:09:34 2010 (r210388) @@ -48,5 +48,6 @@ SRCS= APFloat.cpp \ regexec.c \ regfree.c \ regstrlcpy.c +LLVM_REQUIRES_RTTI= .include "../clang.lib.mk" Modified: head/lib/clang/libllvmsystem/Makefile ============================================================================== --- head/lib/clang/libllvmsystem/Makefile Thu Jul 22 18:57:47 2010 (r210387) +++ head/lib/clang/libllvmsystem/Makefile Thu Jul 22 19:09:34 2010 (r210388) @@ -22,5 +22,6 @@ SRCS= Alarm.cpp \ Threading.cpp \ TimeValue.cpp \ Valgrind.cpp +LLVM_REQUIRES_RTTI= .include "../clang.lib.mk" Modified: head/usr.bin/clang/tblgen/Makefile ============================================================================== --- head/usr.bin/clang/tblgen/Makefile Thu Jul 22 18:57:47 2010 (r210387) +++ head/usr.bin/clang/tblgen/Makefile Thu Jul 22 19:09:34 2010 (r210388) @@ -40,6 +40,7 @@ SRCS= ARMDecoderEmitter.cpp \ X86DisassemblerTables.cpp \ X86RecognizableInstr.cpp MAN= +LLVM_REQUIRES_EH= LIBDEPS=llvmsupport llvmsystem