# $NetBSD: Makefile.inc,v 1.17 2014/01/30 19:11:54 matt Exp $ | |
SOFTFLOAT_BITS?=64 | |
.PATH: ${ARCHDIR}/softfloat \ | |
${.CURDIR}/softfloat/bits${SOFTFLOAT_BITS} ${.CURDIR}/softfloat | |
CPPFLAGS+= -I${ARCHDIR}/softfloat -I${.CURDIR}/softfloat | |
CPPFLAGS+= -DSOFTFLOAT_FOR_GCC | |
SRCS.softfloat= softfloat.c | |
SRCS.softfloat+=fpgetround.c fpsetround.c fpgetmask.c fpsetmask.c \ | |
fpgetsticky.c fpsetsticky.c | |
.if !empty(LIBC_MACHINE_ARCH:Mearm*) | |
SRCS.softfloat+=__aeabi_dcmpeq.c __aeabi_fcmpeq.c | |
SRCS.softfloat+=__aeabi_dcmpge.c __aeabi_fcmpge.c | |
SRCS.softfloat+=__aeabi_dcmpgt.c __aeabi_fcmpgt.c | |
SRCS.softfloat+=__aeabi_dcmple.c __aeabi_fcmple.c | |
SRCS.softfloat+=__aeabi_dcmplt.c __aeabi_fcmplt.c | |
SRCS.softfloat+=__aeabi_dcmpun.c __aeabi_fcmpun.c | |
.else | |
SRCS.softfloat+=eqsf2.c nesf2.c gtsf2.c gesf2.c ltsf2.c lesf2.c negsf2.c \ | |
eqdf2.c nedf2.c gtdf2.c gedf2.c ltdf2.c ledf2.c negdf2.c \ | |
eqtf2.c netf2.c gttf2.c getf2.c lttf2.c letf2.c negtf2.c \ | |
nexf2.c gtxf2.c gexf2.c negxf2.c \ | |
unordsf2.c unorddf2.c unordtf2.c | |
.endif | |
SRCS+= ${SRCS.softfloat} | |
# XXX | |
.if defined(HAVE_GCC) && ${HAVE_GCC} >= 45 | |
.if (${MACHINE_CPU} == "arm") | |
# See doc/HACKS for more information. | |
COPTS.softfloat.c+= -Wno-enum-compare | |
COPTS.softfloat.c+= ${${ACTIVE_CXX} == "gcc":? -fno-tree-vrp :} | |
.elif (${MACHINE_CPU} == "mips" || \ | |
${MACHINE_CPU} == "sh3") | |
COPTS.softfloat.c+= -Wno-enum-compare | |
.endif | |
.endif |