svn commit: r296779 - in head: . lib

Warner Losh imp at FreeBSD.org
Sat Mar 12 23:25:07 UTC 2016


Author: imp
Date: Sat Mar 12 23:25:05 2016
New Revision: 296779
URL: https://svnweb.freebsd.org/changeset/base/296779

Log:
  Use the newly minted Makefile.libcompat to implement libsoft libraries
  for the armv6 ABI switch. This also make WITH_LIBSOFT functional on
  the arm platform. As a transition thing, this seems to work even
  without switching the ABI (we basically build the same libraries
  twice when MK_LIBSOFT=yes until the ABI cut over next
  month). MK_LIBSOFT remains default no.

Modified:
  head/Makefile
  head/Makefile.inc1
  head/Makefile.libcompat
  head/lib/Makefile

Modified: head/Makefile
==============================================================================
--- head/Makefile	Sat Mar 12 23:12:23 2016	(r296778)
+++ head/Makefile	Sat Mar 12 23:25:05 2016	(r296779)
@@ -125,7 +125,8 @@ TGTS=	all all-man buildenv buildenvvars 
 	obj objlink rerelease showconfig tags toolchain update \
 	_worldtmp _legacy _bootstrap-tools _cleanobj _obj \
 	_build-tools _cross-tools _includes _libraries _depend \
-	build32 builddtb distribute32 install32 xdev xdev-build xdev-install \
+	build32 distribute32 install32 build32 distribute32 install32 \
+	builddtb xdev xdev-build xdev-install \
 	xdev-links native-xtools installconfig \
 
 TGTS+=	${SUBDIR_TARGETS}

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1	Sat Mar 12 23:12:23 2016	(r296778)
+++ head/Makefile.inc1	Sat Mar 12 23:25:05 2016	(r296779)
@@ -458,6 +458,9 @@ XCXXFLAGS+=	${BFLAGS}
     ${TARGET_ARCH} == "powerpc64")
 LIBCOMPAT= 32
 .include "Makefile.libcompat"
+.elif ${MK_LIBSOFT} != "no" && ${TARGET_ARCH} == "armv6"
+LIBCOMPAT= SOFT
+.include "Makefile.libcompat"
 .endif
 
 WMAKE=		${WMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 DESTDIR=${WORLDTMP}

Modified: head/Makefile.libcompat
==============================================================================
--- head/Makefile.libcompat	Sat Mar 12 23:12:23 2016	(r296778)
+++ head/Makefile.libcompat	Sat Mar 12 23:25:05 2016	(r296779)
@@ -40,10 +40,19 @@ LIB32DTRACE=	${DTRACE} -32
 LIB32WMAKEFLAGS+=	-DCOMPAT_32BIT
 
 # -------------------------------------------------------------------
+# soft-fp world
+.if ${TARGET_ARCH} == "armv6"
+LIBSOFTCFLAGS=        -DCOMPAT_SOFTFP
+LIBSOFTCPUFLAGS= -mfloat-abi=softfp
+LIBSOFTWMAKEENV= CPUTYPE=soft MACHINE=arm MACHINE_ARCH=armv6
+LIBSOFTWMAKEFLAGS=        -DCOMPAT_SOFTFP
+.endif
+
+# -------------------------------------------------------------------
 # Generic code for each type.
 # Set defaults based on type.
 libcompat=	${LIBCOMPAT:tl}
-_LIBCOMPAT_MAKEVARS=	_OBJTREE TMP CFLAGS WMAKEENV WMAKEFLAGS WMAKE
+_LIBCOMPAT_MAKEVARS=	_OBJTREE TMP CPUFLAGS CFLAGS WMAKEENV WMAKEFLAGS WMAKE
 .for _var in ${_LIBCOMPAT_MAKEVARS}
 .if !empty(LIB${LIBCOMPAT}${_var})
 LIBCOMPAT${_var}?=	${LIB${LIBCOMPAT}${_var}}

Modified: head/lib/Makefile
==============================================================================
--- head/lib/Makefile	Sat Mar 12 23:12:23 2016	(r296778)
+++ head/lib/Makefile	Sat Mar 12 23:25:05 2016	(r296779)
@@ -172,7 +172,7 @@ _libbsnmp=	libbsnmp
 _libcasper=	libcasper
 .endif
 
-.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT)
+.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT) && !defined(COMPAT_SOFTFP)
 _clang=		clang
 .endif
 


More information about the svn-src-head mailing list