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