makefile revision 1.4 1 1.4 christos # $NetBSD: makefile,v 1.4 2011/03/20 23:15:35 christos Exp $
2 1.1 kleink
3 1.1 kleink # /****************************************************************
4 1.1 kleink # Copyright (C) 1998 by Lucent Technologies
5 1.1 kleink # All Rights Reserved
6 1.1 kleink #
7 1.1 kleink # Permission to use, copy, modify, and distribute this software and
8 1.1 kleink # its documentation for any purpose and without fee is hereby
9 1.1 kleink # granted, provided that the above copyright notice appear in all
10 1.1 kleink # copies and that both that the copyright notice and this
11 1.1 kleink # permission notice and warranty disclaimer appear in supporting
12 1.1 kleink # documentation, and that the name of Lucent or any of its entities
13 1.1 kleink # not be used in advertising or publicity pertaining to
14 1.1 kleink # distribution of the software without specific, written prior
15 1.1 kleink # permission.
16 1.1 kleink #
17 1.1 kleink # LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
18 1.1 kleink # INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
19 1.1 kleink # IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY
20 1.1 kleink # SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
21 1.1 kleink # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
22 1.1 kleink # IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
23 1.1 kleink # ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
24 1.1 kleink # THIS SOFTWARE.
25 1.1 kleink #
26 1.1 kleink # ****************************************************************/
27 1.1 kleink
28 1.1 kleink .SUFFIXES: .c .o
29 1.1 kleink CC = cc
30 1.4 christos CFLAGS = -g
31 1.3 kleink
32 1.1 kleink .c.o:
33 1.1 kleink $(CC) -c $(CFLAGS) $*.c
34 1.1 kleink
35 1.4 christos # invoke "make Printf" to add printf.o to gdtoa.a (if desired)
36 1.4 christos
37 1.1 kleink all: arith.h gd_qnan.h gdtoa.a
38 1.1 kleink
39 1.1 kleink arith.h: arithchk.c
40 1.1 kleink $(CC) $(CFLAGS) arithchk.c || $(CC) -DNO_LONG_LONG $(CFLAGS) arithchk.c
41 1.1 kleink ./a.out >arith.h
42 1.1 kleink rm -f a.out arithchk.o
43 1.1 kleink
44 1.1 kleink gd_qnan.h: arith.h qnan.c
45 1.1 kleink $(CC) $(CFLAGS) qnan.c
46 1.1 kleink ./a.out >gd_qnan.h
47 1.1 kleink rm -f a.out qnan.o
48 1.1 kleink
49 1.4 christos gdtoa.a: dmisc.c dtoa.c g_Qfmt.c g__fmt.c g_ddfmt.c g_dfmt.c\
50 1.4 christos g_ffmt.c g_xLfmt.c g_xfmt.c gdtoa.c gethex.c gmisc.c hd_init.c\
51 1.4 christos hexnan.c misc.c smisc.c strtoIQ.c strtoId.c strtoIdd.c\
52 1.4 christos strtoIf.c strtoIg.c strtoIx.c strtoIxL.c strtod.c strtodI.c\
53 1.4 christos strtodg.c strtof.c strtopQ.c strtopd.c strtopdd.c strtopf.c\
54 1.4 christos strtopx.c strtopxL.c strtorQ.c strtord.c strtordd.c strtorf.c\
55 1.4 christos strtorx.c strtorxL.c sum.c ulp.c
56 1.1 kleink $(CC) -c $(CFLAGS) $?
57 1.1 kleink x=`echo $? | sed 's/\.c/.o/g'` && ar ruv gdtoa.a $$x && rm $$x
58 1.1 kleink ranlib gdtoa.a || true
59 1.1 kleink
60 1.4 christos Printf: all printf.c
61 1.4 christos $(CC) -c $(CFLAGS) printf.c
62 1.4 christos ar ruv gdtoa.a printf.o
63 1.4 christos rm printf.o
64 1.4 christos touch Printf
65 1.4 christos
66 1.1 kleink # If your system lacks ranlib, you do not need it.
67 1.1 kleink
68 1.4 christos xs0 = README arithchk.c dmisc.c dtoa.c g_Qfmt.c g__fmt.c g_ddfmt.c\
69 1.4 christos g_dfmt.c g_ffmt.c g_xLfmt.c g_xfmt.c gdtoa.c gdtoa.h\
70 1.4 christos gdtoa_fltrnds.h gdtoaimp.h gethex.c gmisc.c hd_init.c hexnan.c\
71 1.4 christos makefile misc.c printf.c printf.c0 qnan.c smisc.c stdio1.h\
72 1.4 christos strtoIQ.c strtoId.c strtoIdd.c strtoIf.c strtoIg.c strtoIx.c\
73 1.4 christos strtoIxL.c strtod.c strtodI.c strtodg.c strtodnrp.c strtof.c\
74 1.4 christos strtopQ.c strtopd.c strtopdd.c strtopf.c strtopx.c strtopxL.c\
75 1.4 christos strtorQ.c strtord.c strtordd.c strtorf.c strtorx.c strtorxL.c\
76 1.4 christos sum.c ulp.c
77 1.1 kleink
78 1.4 christos # "make -r xsum.out" to check for transmission errors; source for xsum is
79 1.1 kleink # netlib's "xsum.c from f2c", e.g.,
80 1.1 kleink # ftp://netlib.bell-labs.com/netlib/f2c/xsum.c.gz
81 1.1 kleink
82 1.1 kleink xsum.out: xsum0.out $(xs0)
83 1.1 kleink xsum $(xs0) >xsum1.out
84 1.1 kleink cmp xsum0.out xsum1.out && mv xsum1.out xsum.out || diff xsum[01].out
85 1.1 kleink
86 1.1 kleink clean:
87 1.4 christos rm -f arith.h gd_qnan.h *.[ao] Printf xsum.out xsum1.out
88