svn commit: r272811 - head
Baptiste Daroussin
bapt at FreeBSD.org
Thu Oct 9 09:04:02 UTC 2014
Author: bapt
Date: Thu Oct 9 09:04:01 2014
New Revision: 272811
URL: https://svnweb.freebsd.org/changeset/base/272811
Log:
Add CROSS_TOOLCHAIN macro select pre seeded external toolchain configuration files
The goal is to provide pre seeded toolchain configurations withing the ports tree
to allow the use of an external toolchain in a simple way:
make CROSS_TOOLCHAIN=powerpc64-gcc TARGET=powerpc TARGET_ARCH=powerpc64 buildworld
This will look for the external toolchain definition in /usr/local/share/mk/powerpc64-gcc.mk
While here add the notion of X_COMPILER_TYPE to the external toolchain framework to allow
to deal with differences between gcc and clang in regards of cross building
Modified:
head/Makefile.inc1
Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1 Thu Oct 9 07:52:51 2014 (r272810)
+++ head/Makefile.inc1 Thu Oct 9 09:04:01 2014 (r272811)
@@ -299,6 +299,10 @@ HMAKE+= PATH=${TMPPATH} METALOG=${METAL
WMAKEENV+= MK_CTF=no
.endif
+.if defined(CROSS_TOOLCHAIN)
+LOCALBASE?= /usr/local
+.include "${LOCALBASE}/share/toolchains/${CROSS_TOOLCHAIN}.mk"
+.endif
.if defined(CROSS_TOOLCHAIN_PREFIX)
CROSS_COMPILER_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
CROSS_BINUTILS_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
@@ -343,10 +347,14 @@ TARGET_ABI= gnueabihf
TARGET_ABI= gnueabi
.endif
.endif
+.if ${X_COMPILER_TYPE} == gcc
+XFLAGS+= -isystem ${WORLDTMP}/usr/include -L${WORLDTMP}/usr/lib
+.else
TARGET_ABI?= unknown
TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/}-${TARGET_ABI}-freebsd11.0
XFLAGS+= -target ${TARGET_TRIPLE}
.endif
+.endif
WMAKE= ${WMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 DESTDIR=${WORLDTMP}
More information about the svn-src-head
mailing list