aboutsummaryrefslogtreecommitdiff
path: root/lib/libc/gdtoa/Makefile.inc
diff options
context:
space:
mode:
authorDavid Schultz <das@FreeBSD.org>2003-03-12 20:30:00 +0000
committerDavid Schultz <das@FreeBSD.org>2003-03-12 20:30:00 +0000
commit6a66acb565dde6d5b0ee52eef2a631fbb09df153 (patch)
tree2227a906466b311329420d1e05832b3c4e9aef98 /lib/libc/gdtoa/Makefile.inc
parent582a954b004963a562668386a33f960a9c763d37 (diff)
downloadsrc-6a66acb565dde6d5b0ee52eef2a631fbb09df153.tar.gz
src-6a66acb565dde6d5b0ee52eef2a631fbb09df153.zip
Replace our ancient dtoa/strtod implementation with the gdtoa
package, a more recent, generalized set of routines. Among the changes: - Declare strtof() and strtold() in stdlib.h. - Add glue to libc to support these routines for all kinds of ``long double''. - Update printf() to reflect the fact that dtoa works slightly differently now. As soon as I see that nothing has blown up, I will kill src/lib/libc/stdlib/strtod.c. Soon printf() will be able to use the new routines to output long doubles without loss of precision, but numerous bugs in the existing code must be addressed first. Reviewed by: bde (briefly), mike (mentor), obrien
Notes
Notes: svn path=/head/; revision=112163
Diffstat (limited to 'lib/libc/gdtoa/Makefile.inc')
-rw-r--r--lib/libc/gdtoa/Makefile.inc16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/libc/gdtoa/Makefile.inc b/lib/libc/gdtoa/Makefile.inc
new file mode 100644
index 000000000000..c2c58e119473
--- /dev/null
+++ b/lib/libc/gdtoa/Makefile.inc
@@ -0,0 +1,16 @@
+# $FreeBSD$
+
+CFLAGS+=-I${.CURDIR}/../../contrib/gdtoa
+MISRCS+=glue.c
+GDTOASRCS=dmisc.c dtoa.c gdtoa.c gethex.c gmisc.c \
+ hd_init.c hexnan.c misc.c smisc.c \
+ strtoIg.c strtod.c strtodg.c strtof.c strtord.c sum.c ulp.c
+.if exists(${.CURDIR}/${MACHINE_ARCH}/stdlib/gdtoa.mk)
+.include "${.CURDIR}/${MACHINE_ARCH}/stdlib/gdtoa.mk"
+.endif
+.for src in ${GDTOASRCS}
+MISRCS+=gdtoa_${src}
+CLEANFILES+=gdtoa_${src}
+gdtoa_${src}:
+ ln -sf ${.CURDIR}/../../contrib/gdtoa/${src} ${.TARGET}
+.endfor