summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authordas <das@FreeBSD.org>2005-02-04 14:33:39 +0000
committerdas <das@FreeBSD.org>2005-02-04 14:33:39 +0000
commit9aed1e79d6e86bc774458a39bf00e29afac6541c (patch)
treed721f3fb513678d2d1cf62bb8c029d3028390885 /lib
parentec83c7685dd6a7a62a8c551c832f007c488d7046 (diff)
downloadFreeBSD-src-9aed1e79d6e86bc774458a39bf00e29afac6541c.zip
FreeBSD-src-9aed1e79d6e86bc774458a39bf00e29afac6541c.tar.gz
Move machine-dependent crud to its own makefile.
Diffstat (limited to 'lib')
-rw-r--r--lib/msun/Makefile28
-rw-r--r--lib/msun/alpha/Makefile.inc9
-rw-r--r--lib/msun/amd64/Makefile.inc3
-rw-r--r--lib/msun/i387/Makefile.inc11
-rw-r--r--lib/msun/ia64/Makefile.inc3
5 files changed, 32 insertions, 22 deletions
diff --git a/lib/msun/Makefile b/lib/msun/Makefile
index 2988102..4c24e68 100644
--- a/lib/msun/Makefile
+++ b/lib/msun/Makefile
@@ -12,31 +12,15 @@
#
#
-# XXX MD crud should be in separate makefiles
-.if ${MACHINE_ARCH} == "alpha"
-ARCH_SRCS = s_copysign.S s_copysignf.S
-# XXX Comment from NetBSD/Alpha:
-# XXX LINT SIGFPEs in e_exp.c's strtod(). FP underflow/denorm software
-# handling is broken (doesn't exist!) on the Alpha port.
-# Stock gcc 2.7.2.1 doesn't understand these options.
-#CFLAGS += -mtrap-precision=i -mfp-trap-mode=su
-.elif ${MACHINE_ARCH} == "amd64"
-ARCH_SRCS = e_sqrt.S s_lrint.S s_llrint.S
-.elif ${MACHINE_ARCH} == "ia64"
-ARCH_SRCS = s_fma.S s_fmaf.S
-.elif ${MACHINE_ARCH} == "i386"
+.if ${MACHINE_ARCH} == "i386"
ARCH_SUBDIR= i387
-ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \
- e_remainder.S e_scalb.S e_sqrt.S s_atan.S s_ceil.S s_copysign.S \
- s_cos.S s_finite.S s_floor.S s_llrint.S s_logb.S s_lrint.S \
- s_rint.S s_scalbn.S s_significand.S s_sin.S s_tan.S
-# float counterparts
-ARCH_SRCS+= e_atan2f.S e_log10f.S e_logf.S e_remainderf.S e_scalbf.S \
- e_sqrtf.S s_ceilf.S s_copysignf.S s_cosf.S s_floorf.S s_logbf.S \
- s_rintf.S s_scalbnf.S s_significandf.S s_sinf.S s_tanf.S
+.else
+ARCH_SUBDIR= ${MACHINE_ARCH}
.endif
-ARCH_SUBDIR?= ${MACHINE_ARCH}
+.if exists(${ARCH_SUBDIR}/Makefile.inc)
+.include "${ARCH_SUBDIR}/Makefile.inc"
+.endif
.PATH: ${.CURDIR}/bsdsrc
.PATH: ${.CURDIR}/man
diff --git a/lib/msun/alpha/Makefile.inc b/lib/msun/alpha/Makefile.inc
new file mode 100644
index 0000000..8d5b969
--- /dev/null
+++ b/lib/msun/alpha/Makefile.inc
@@ -0,0 +1,9 @@
+# $FreeBSD$
+
+ARCH_SRCS = s_copysign.S s_copysignf.S
+
+# XXX Comment from NetBSD/Alpha:
+# XXX LINT SIGFPEs in e_exp.c's strtod(). FP underflow/denorm software
+# handling is broken (doesn't exist!) on the Alpha port.
+# Stock gcc 2.7.2.1 doesn't understand these options.
+#CFLAGS += -mtrap-precision=i -mfp-trap-mode=su
diff --git a/lib/msun/amd64/Makefile.inc b/lib/msun/amd64/Makefile.inc
new file mode 100644
index 0000000..c7e3082
--- /dev/null
+++ b/lib/msun/amd64/Makefile.inc
@@ -0,0 +1,3 @@
+# $FreeBSD$
+
+ARCH_SRCS = e_sqrt.S s_lrint.S s_llrint.S
diff --git a/lib/msun/i387/Makefile.inc b/lib/msun/i387/Makefile.inc
new file mode 100644
index 0000000..a7de3e3
--- /dev/null
+++ b/lib/msun/i387/Makefile.inc
@@ -0,0 +1,11 @@
+# $FreeBSD$
+
+ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \
+ e_remainder.S e_scalb.S e_sqrt.S s_atan.S s_ceil.S s_copysign.S \
+ s_cos.S s_finite.S s_floor.S s_llrint.S s_logb.S s_lrint.S \
+ s_rint.S s_scalbn.S s_significand.S s_sin.S s_tan.S
+
+# float counterparts
+ARCH_SRCS+= e_atan2f.S e_log10f.S e_logf.S e_remainderf.S e_scalbf.S \
+ e_sqrtf.S s_ceilf.S s_copysignf.S s_cosf.S s_floorf.S s_logbf.S \
+ s_rintf.S s_scalbnf.S s_significandf.S s_sinf.S s_tanf.S
diff --git a/lib/msun/ia64/Makefile.inc b/lib/msun/ia64/Makefile.inc
new file mode 100644
index 0000000..38ae6ac
--- /dev/null
+++ b/lib/msun/ia64/Makefile.inc
@@ -0,0 +1,3 @@
+# $FreeBSD$
+
+ARCH_SRCS = s_fma.S s_fmaf.S
OpenPOWER on IntegriCloud