xref: /aosp_15_r20/external/fdlibm/makefile.in (revision 1e651e1ef2b613db2c4b29ae59c1de74cf0222ae)
1*1e651e1eSRoland Levillain#
2*1e651e1eSRoland Levillain#  @(#)Makefile 1.4 95/01/18
3*1e651e1eSRoland Levillain#
4*1e651e1eSRoland Levillain#  ====================================================
5*1e651e1eSRoland Levillain#  Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
6*1e651e1eSRoland Levillain#
7*1e651e1eSRoland Levillain#  Developed at SunSoft, a Sun Microsystems, Inc. business.
8*1e651e1eSRoland Levillain#  Permission to use, copy, modify, and distribute this
9*1e651e1eSRoland Levillain#  software is freely granted, provided that this notice
10*1e651e1eSRoland Levillain#  is preserved.
11*1e651e1eSRoland Levillain#  ====================================================
12*1e651e1eSRoland Levillain#
13*1e651e1eSRoland Levillain#
14*1e651e1eSRoland Levillain
15*1e651e1eSRoland Levillain#
16*1e651e1eSRoland Levillain# There are two options in making libm at fdlibm compile time:
17*1e651e1eSRoland Levillain# 	_IEEE_LIBM 	--- IEEE libm; smaller, and somewhat faster
18*1e651e1eSRoland Levillain#	_MULTI_LIBM	--- Support multi-standard at runtime by
19*1e651e1eSRoland Levillain#			    imposing wrapper functions defined in
20*1e651e1eSRoland Levillain#			    fdlibm.h:
21*1e651e1eSRoland Levillain#				_IEEE_MODE 	-- IEEE
22*1e651e1eSRoland Levillain#				_XOPEN_MODE 	-- X/OPEN
23*1e651e1eSRoland Levillain#				_POSIX_MODE 	-- POSIX/ANSI
24*1e651e1eSRoland Levillain#				_SVID3_MODE 	-- SVID
25*1e651e1eSRoland Levillain#
26*1e651e1eSRoland Levillain# Here is how to set up CFLAGS to create the desired libm at
27*1e651e1eSRoland Levillain# compile time:
28*1e651e1eSRoland Levillain#
29*1e651e1eSRoland Levillain# 	CFLAGS = -D_IEEE_LIBM		... IEEE libm (recommended)
30*1e651e1eSRoland Levillain#	CFLAGS = -D_SVID3_MODE	... Multi-standard supported
31*1e651e1eSRoland Levillain#					    libm with SVID as the
32*1e651e1eSRoland Levillain#					    default standard
33*1e651e1eSRoland Levillain#	CFLAGS = -D_XOPEN_MODE	... Multi-standard supported
34*1e651e1eSRoland Levillain#					    libm with XOPEN as the
35*1e651e1eSRoland Levillain#					    default standard
36*1e651e1eSRoland Levillain#	CFLAGS = -D_POSIX_MODE	... Multi-standard supported
37*1e651e1eSRoland Levillain#					    libm with POSIX as the
38*1e651e1eSRoland Levillain#					    default standard
39*1e651e1eSRoland Levillain#	CFLAGS = 			... Multi-standard supported
40*1e651e1eSRoland Levillain#					    libm with IEEE as the
41*1e651e1eSRoland Levillain#					    default standard
42*1e651e1eSRoland Levillain#
43*1e651e1eSRoland Levillain# NOTE: if scalb's second arguement is an int, then one must
44*1e651e1eSRoland Levillain# define _SCALB_INT in CFLAGS. The default prototype of scalb
45*1e651e1eSRoland Levillain# is double ieee_scalb(double, double)
46*1e651e1eSRoland Levillain#
47*1e651e1eSRoland Levillain
48*1e651e1eSRoland Levillainprefix	= @prefix@
49*1e651e1eSRoland Levillain
50*1e651e1eSRoland LevillainAR	= @AR@
51*1e651e1eSRoland Levillain
52*1e651e1eSRoland LevillainCC	= @CC@
53*1e651e1eSRoland Levillain
54*1e651e1eSRoland Levillain#
55*1e651e1eSRoland Levillain# Default IEEE libm
56*1e651e1eSRoland Levillain#
57*1e651e1eSRoland LevillainCFLAGS	= @CFLAGS@ -D_IEEE_LIBM
58*1e651e1eSRoland Levillain
59*1e651e1eSRoland LevillainCHMOD	= @CHMOD@
60*1e651e1eSRoland Levillain
61*1e651e1eSRoland LevillainCP	= @CP@
62*1e651e1eSRoland Levillain
63*1e651e1eSRoland LevillainINCFILES = fdlibm.h
64*1e651e1eSRoland Levillain
65*1e651e1eSRoland LevillainLDFLAGS	= @LDFLAGS@
66*1e651e1eSRoland Levillain
67*1e651e1eSRoland LevillainLIB	= libfdm.a
68*1e651e1eSRoland Levillain
69*1e651e1eSRoland LevillainLIBS	= @LIBS@
70*1e651e1eSRoland Levillain
71*1e651e1eSRoland LevillainRANLIB	= @RANLIB@
72*1e651e1eSRoland Levillain
73*1e651e1eSRoland LevillainRM	= @RM@ -f
74*1e651e1eSRoland Levillain
75*1e651e1eSRoland Levillain.INIT: $(INCFILES)
76*1e651e1eSRoland Levillain
77*1e651e1eSRoland Levillain.KEEP_STATE:
78*1e651e1eSRoland Levillain
79*1e651e1eSRoland Levillainsrc = 	k_standard.c k_rem_pio2.c \
80*1e651e1eSRoland Levillain	k_cos.c k_sin.c k_tan.c \
81*1e651e1eSRoland Levillain	e_acos.c e_acosh.c e_asin.c e_atan2.c \
82*1e651e1eSRoland Levillain	e_atanh.c e_cosh.c e_exp.c e_fmod.c \
83*1e651e1eSRoland Levillain	e_gamma.c e_gamma_r.c e_hypot.c e_j0.c \
84*1e651e1eSRoland Levillain	e_j1.c e_jn.c e_lgamma.c e_lgamma_r.c \
85*1e651e1eSRoland Levillain	e_log.c e_log10.c e_pow.c e_rem_pio2.c e_remainder.c \
86*1e651e1eSRoland Levillain	e_scalb.c e_sinh.c e_sqrt.c \
87*1e651e1eSRoland Levillain	w_acos.c w_acosh.c w_asin.c w_atan2.c \
88*1e651e1eSRoland Levillain	w_atanh.c w_cosh.c w_exp.c w_fmod.c \
89*1e651e1eSRoland Levillain	w_gamma.c w_gamma_r.c w_hypot.c w_j0.c \
90*1e651e1eSRoland Levillain	w_j1.c w_jn.c w_lgamma.c w_lgamma_r.c \
91*1e651e1eSRoland Levillain	w_log.c w_log10.c w_pow.c w_remainder.c \
92*1e651e1eSRoland Levillain	w_scalb.c w_sinh.c w_sqrt.c \
93*1e651e1eSRoland Levillain	s_asinh.c s_atan.c s_cbrt.c s_ceil.c s_copysign.c \
94*1e651e1eSRoland Levillain	s_cos.c s_erf.c s_expm1.c s_fabs.c s_finite.c s_floor.c \
95*1e651e1eSRoland Levillain	s_frexp.c s_ilogb.c s_isnan.c s_ldexp.c s_lib_version.c \
96*1e651e1eSRoland Levillain	s_log1p.c s_logb.c s_matherr.c s_modf.c s_nextafter.c \
97*1e651e1eSRoland Levillain	s_rint.c s_scalbn.c s_signgam.c s_significand.c s_sin.c \
98*1e651e1eSRoland Levillain	s_tan.c s_tanh.c
99*1e651e1eSRoland Levillain
100*1e651e1eSRoland Levillainobj = 	k_standard.o k_rem_pio2.o \
101*1e651e1eSRoland Levillain	k_cos.o k_sin.o k_tan.o \
102*1e651e1eSRoland Levillain	e_acos.o e_acosh.o e_asin.o e_atan2.o \
103*1e651e1eSRoland Levillain	e_atanh.o e_cosh.o e_exp.o e_fmod.o \
104*1e651e1eSRoland Levillain	e_gamma.o e_gamma_r.o e_hypot.o e_j0.o \
105*1e651e1eSRoland Levillain	e_j1.o e_jn.o e_lgamma.o e_lgamma_r.o \
106*1e651e1eSRoland Levillain	e_log.o e_log10.o e_pow.o e_rem_pio2.o e_remainder.o  \
107*1e651e1eSRoland Levillain	e_scalb.o e_sinh.o e_sqrt.o \
108*1e651e1eSRoland Levillain	w_acos.o w_acosh.o w_asin.o w_atan2.o \
109*1e651e1eSRoland Levillain	w_atanh.o w_cosh.o w_exp.o w_fmod.o \
110*1e651e1eSRoland Levillain	w_gamma.o w_gamma_r.o w_hypot.o w_j0.o \
111*1e651e1eSRoland Levillain	w_j1.o w_jn.o w_lgamma.o w_lgamma_r.o \
112*1e651e1eSRoland Levillain	w_log.o w_log10.o w_pow.o w_remainder.o \
113*1e651e1eSRoland Levillain	w_scalb.o w_sinh.o w_sqrt.o \
114*1e651e1eSRoland Levillain	s_asinh.o s_atan.o s_cbrt.o s_ceil.o s_copysign.o \
115*1e651e1eSRoland Levillain	s_cos.o s_erf.o s_expm1.o s_fabs.o s_finite.o s_floor.o \
116*1e651e1eSRoland Levillain	s_frexp.o s_ilogb.o s_isnan.o s_ldexp.o s_lib_version.o \
117*1e651e1eSRoland Levillain	s_log1p.o s_logb.o s_matherr.o s_modf.o s_nextafter.o \
118*1e651e1eSRoland Levillain	s_rint.o s_scalbn.o s_signgam.o s_significand.o s_sin.o \
119*1e651e1eSRoland Levillain	s_tan.o s_tanh.o
120*1e651e1eSRoland Levillain
121*1e651e1eSRoland Levillainall: $(LIB)
122*1e651e1eSRoland Levillain
123*1e651e1eSRoland Levillaincheck:
124*1e651e1eSRoland Levillain	@echo This package does not have a validation suite.
125*1e651e1eSRoland Levillain
126*1e651e1eSRoland Levillainclean:
127*1e651e1eSRoland Levillain	-$(RM) *~ #* core a.out
128*1e651e1eSRoland Levillain
129*1e651e1eSRoland Levillaindistclean:	mostlyclean
130*1e651e1eSRoland Levillain	-$(RM) $(LIB)
131*1e651e1eSRoland Levillain	-$(RM) -r autom4te.cache/
132*1e651e1eSRoland Levillain	-$(RM) config.cache config.log config.status Makefile
133*1e651e1eSRoland Levillain
134*1e651e1eSRoland Levillaininstall:	$(LIB) uninstall
135*1e651e1eSRoland Levillain	$(CP) $(LIB) $(prefix)/lib/$(LIB)
136*1e651e1eSRoland Levillain	$(CHMOD) 664 $(prefix)/lib/$(LIB)
137*1e651e1eSRoland Levillain	$(RANLIB) $(prefix)/lib/$(LIB) || true
138*1e651e1eSRoland Levillain
139*1e651e1eSRoland Levillain$(LIB) : $(obj)
140*1e651e1eSRoland Levillain	$(AR) cru $(LIB) $(obj)
141*1e651e1eSRoland Levillain	$(RANLIB) $(LIB) || true
142*1e651e1eSRoland Levillain
143*1e651e1eSRoland Levillainmaintainer-clean:	distclean
144*1e651e1eSRoland Levillain	@echo "This command is intended for maintainers to use;"
145*1e651e1eSRoland Levillain	@echo "it deletes files that may require special tools to rebuild."
146*1e651e1eSRoland Levillain	-$(RM) configure
147*1e651e1eSRoland Levillain
148*1e651e1eSRoland Levillainmostlyclean:	clean
149*1e651e1eSRoland Levillain	-$(RM) $(obj)
150*1e651e1eSRoland Levillain
151*1e651e1eSRoland Levillainsource: $(src) README
152*1e651e1eSRoland Levillain
153*1e651e1eSRoland Levillainuninstall:
154*1e651e1eSRoland Levillain	-$(RM) $(prefix)/lib/$(LIB)
155