From owner-svn-src-head@FreeBSD.ORG Mon Apr 16 21:36:56 2012 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 757D2106564A; Mon, 16 Apr 2012 21:36:56 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 4723B8FC0C; Mon, 16 Apr 2012 21:36:56 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q3GLauXC051671; Mon, 16 Apr 2012 21:36:56 GMT (envelope-from dim@svn.freebsd.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q3GLaurU051667; Mon, 16 Apr 2012 21:36:56 GMT (envelope-from dim@svn.freebsd.org) Message-Id: <201204162136.q3GLaurU051667@svn.freebsd.org> From: Dimitry Andric Date: Mon, 16 Apr 2012 21:36:56 +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: r234356 - in head: gnu/lib/csu lib/clang lib/csu/powerpc X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Apr 2012 21:36:56 -0000 Author: dim Date: Mon Apr 16 21:36:55 2012 New Revision: 234356 URL: http://svn.freebsd.org/changeset/base/234356 Log: Work around an issue on 32-bit PowerPC, where clang executable can get too big, causing 'relocation truncated to fit' errors at link time. Reviewed by: nwhitehorn Modified: head/gnu/lib/csu/Makefile head/lib/clang/clang.build.mk head/lib/csu/powerpc/Makefile Modified: head/gnu/lib/csu/Makefile ============================================================================== --- head/gnu/lib/csu/Makefile Mon Apr 16 21:28:04 2012 (r234355) +++ head/gnu/lib/csu/Makefile Mon Apr 16 21:36:55 2012 (r234356) @@ -34,6 +34,7 @@ CFLAGS+= -include osreldate.h .if ${MACHINE_CPUARCH} == "powerpc" TGTOBJS= crtsavres.o SRCS+= crtsavres.asm +CFLAGS+= -mlongcall .endif .if ${MACHINE_CPUARCH} == "sparc64" TGTOBJS= crtfastmath.o Modified: head/lib/clang/clang.build.mk ============================================================================== --- head/lib/clang/clang.build.mk Mon Apr 16 21:28:04 2012 (r234355) +++ head/lib/clang/clang.build.mk Mon Apr 16 21:36:55 2012 (r234356) @@ -11,6 +11,12 @@ CFLAGS+=-I${LLVM_SRCS}/include -I${CLANG # LLVM is not strict aliasing safe as of 12/31/2011 CFLAGS+= -fno-strict-aliasing +# Work around an issue on 32-bit PowerPC, where the clang executable can get +# too big, causing 'relocation truncated to fit' errors at link time. +.if ${MACHINE_ARCH} == "powerpc" +CFLAGS+=-mlongcall +.endif + TARGET_ARCH?= ${MACHINE_ARCH} CFLAGS+=-DLLVM_DEFAULT_TARGET_TRIPLE=\"${TARGET_ARCH:C/amd64/x86_64/}-unknown-freebsd10.0\" Modified: head/lib/csu/powerpc/Makefile ============================================================================== --- head/lib/csu/powerpc/Makefile Mon Apr 16 21:28:04 2012 (r234355) +++ head/lib/csu/powerpc/Makefile Mon Apr 16 21:36:55 2012 (r234356) @@ -6,7 +6,8 @@ SRCS= crt1.c crti.S crtn.S OBJS= ${SRCS:N*.h:R:S/$/.o/g} OBJS+= Scrt1.o gcrt1.o CFLAGS+= -I${.CURDIR}/../common \ - -I${.CURDIR}/../../libc/include + -I${.CURDIR}/../../libc/include \ + -mlongcall all: ${OBJS}