xref: /original-bsd/usr.bin/f77/libF77/Makefile (revision 0f30d223)
1# Makefile for f77 math & startup lib, libF77.a
2#
3# @(#)Makefile	1.4 (Berkeley) 05/06/85
4
5CFLAGS	      = -O
6
7DEST	      = $(DESTDIR)/usr/lib
8
9DESTDIR	      =
10
11EXTHDRS	      =
12
13FFLAGS	      = -O
14
15HDRS	      = opcodes.h
16
17LIBRARY	      = libF77.a
18
19LIBRARY_P     = libF77_p.a
20
21MAKEFILE      = Makefile
22
23OBJS	      = abort_.o \
24		besj0_.o \
25		besj1_.o \
26		besjn_.o \
27		besy0_.o \
28		besy1_.o \
29		besyn_.o \
30		bit.o \
31		c_abs.o \
32		c_cos.o \
33		c_div.o \
34		c_exp.o \
35		c_log.o \
36		c_sin.o \
37		c_sqrt.o \
38		cabs.o \
39		d_abs.o \
40		d_acos.o \
41		d_asin.o \
42		d_atan.o \
43		d_atn2.o \
44		d_cnjg.o \
45		d_cos.o \
46		d_cosh.o \
47		d_dim.o \
48		d_exp.o \
49		d_imag.o \
50		d_int.o \
51		d_lg10.o \
52		d_log.o \
53		d_mod.o \
54		d_nint.o \
55		d_prod.o \
56		d_sign.o \
57		d_sin.o \
58		d_sinh.o \
59		d_sqrt.o \
60		d_tan.o \
61		d_tanh.o \
62		dbesj0_.o \
63		dbesj1_.o \
64		dbesjn_.o \
65		dbesy0_.o \
66		dbesy1_.o \
67		dbesyn_.o \
68		derf_.o \
69		derfc_.o \
70		ef1asc_.o \
71		ef1cmc_.o \
72		erf_.o \
73		erfc_.o \
74		exit_.o \
75		h_abs.o \
76		h_dim.o \
77		h_dnnt.o \
78		h_indx.o \
79		h_len.o \
80		h_mod.o \
81		h_nint.o \
82		h_sign.o \
83		hl_ge.o \
84		hl_gt.o \
85		hl_le.o \
86		hl_lt.o \
87		i_abs.o \
88		i_dim.o \
89		i_dnnt.o \
90		i_indx.o \
91		i_len.o \
92		i_mod.o \
93		i_nint.o \
94		i_sign.o \
95		l_ge.o \
96		l_gt.o \
97		l_le.o \
98		l_lt.o \
99		lnblnk_.o \
100		long_.o \
101		main.o \
102		pow_ci.o \
103		pow_dd.o \
104		pow_di.o \
105		pow_hh.o \
106		pow_ii.o \
107		pow_ri.o \
108		pow_zi.o \
109		pow_zz.o \
110		r_abs.o \
111		r_acos.o \
112		r_asin.o \
113		r_atan.o \
114		r_atn2.o \
115		r_cnjg.o \
116		r_cos.o \
117		r_cosh.o \
118		r_dim.o \
119		r_exp.o \
120		r_imag.o \
121		r_int.o \
122		r_lg10.o \
123		r_log.o \
124		r_mod.o \
125		r_nint.o \
126		r_sign.o \
127		r_sin.o \
128		r_sinh.o \
129		r_sqrt.o \
130		r_tan.o \
131		r_tanh.o \
132		rand_.o \
133		random_.o \
134		range.o \
135		rindex_.o \
136		s_cat.o \
137		s_cmp.o \
138		s_copy.o \
139		s_paus.o \
140		s_rnge.o \
141		s_stop.o \
142		short_.o \
143		signal_.o \
144		subout.o \
145		traper_.o \
146		trapov_.o \
147		trpfpe_.o \
148		z_abs.o \
149		z_cos.o \
150		z_div.o \
151		z_exp.o \
152		z_log.o \
153		z_sin.o \
154		z_sqrt.o
155
156OLDDIR	      = $(DESTDIR)/usr/old/lib
157
158OPTIONS	      = -DUCBVAX
159
160PRINT	      = pr
161
162SRCS	      = abort_.c \
163		besj0_.c \
164		besj1_.c \
165		besjn_.c \
166		besy0_.c \
167		besy1_.c \
168		besyn_.c \
169		bit.c \
170		c_abs.c \
171		c_cos.c \
172		c_div.c \
173		c_exp.c \
174		c_log.c \
175		c_sin.c \
176		c_sqrt.c \
177		cabs.c \
178		d_abs.c \
179		d_acos.c \
180		d_asin.c \
181		d_atan.c \
182		d_atn2.c \
183		d_cnjg.c \
184		d_cos.c \
185		d_cosh.c \
186		d_dim.c \
187		d_exp.c \
188		d_imag.c \
189		d_int.c \
190		d_lg10.c \
191		d_log.c \
192		d_mod.c \
193		d_nint.c \
194		d_prod.c \
195		d_sign.c \
196		d_sin.c \
197		d_sinh.c \
198		d_sqrt.c \
199		d_tan.c \
200		d_tanh.c \
201		dbesj0_.c \
202		dbesj1_.c \
203		dbesjn_.c \
204		dbesy0_.c \
205		dbesy1_.c \
206		dbesyn_.c \
207		derf_.c \
208		derfc_.c \
209		ef1asc_.c \
210		ef1cmc_.c \
211		erf_.c \
212		erfc_.c \
213		exit_.c \
214		h_abs.c \
215		h_dim.c \
216		h_dnnt.c \
217		h_indx.c \
218		h_len.c \
219		h_mod.c \
220		h_nint.c \
221		h_sign.c \
222		hl_ge.c \
223		hl_gt.c \
224		hl_le.c \
225		hl_lt.c \
226		i_abs.c \
227		i_dim.c \
228		i_dnnt.c \
229		i_indx.c \
230		i_len.c \
231		i_mod.c \
232		i_nint.c \
233		i_sign.c \
234		l_ge.c \
235		l_gt.c \
236		l_le.c \
237		l_lt.c \
238		lnblnk_.c \
239		long_.c \
240		main.c \
241		pow_ci.c \
242		pow_dd.c \
243		pow_di.c \
244		pow_hh.c \
245		pow_ii.c \
246		pow_ri.c \
247		pow_zi.c \
248		pow_zz.c \
249		r_abs.c \
250		r_acos.c \
251		r_asin.c \
252		r_atan.c \
253		r_atn2.c \
254		r_cnjg.c \
255		r_cos.c \
256		r_cosh.c \
257		r_dim.c \
258		r_exp.c \
259		r_imag.c \
260		r_int.c \
261		r_lg10.c \
262		r_log.c \
263		r_mod.c \
264		r_nint.c \
265		r_sign.c \
266		r_sin.c \
267		r_sinh.c \
268		r_sqrt.c \
269		r_tan.c \
270		r_tanh.c \
271		rand_.c \
272		random_.c \
273		range.c \
274		rindex_.c \
275		s_cat.c \
276		s_cmp.c \
277		s_copy.c \
278		s_paus.c \
279		s_rnge.c \
280		s_stop.c \
281		short_.c \
282		signal_.c \
283		subout.c \
284		traper_.c \
285		trapov_.c \
286		trpfpe_.c \
287		z_abs.c \
288		z_cos.c \
289		z_div.c \
290		z_exp.c \
291		z_log.c \
292		z_sin.c \
293		z_sqrt.c
294
295all:		$(LIBRARY) $(LIBRARY_P)
296
297$(LIBRARY):	$(OBJS) Version
298		@echo -n "Loading $(LIBRARY) ... "
299		@ar cru $(LIBRARY) $(OBJS) Version
300		@ranlib $(LIBRARY)
301		@echo "done"
302
303$(LIBRARY_P):	$(OBJS) Version
304		@echo -n "Loading $(LIBRARY_P) ... "
305		@cd profiled; ar cru ../$(LIBRARY_P) $(OBJS) Version
306		@ranlib $(LIBRARY_P)
307		@echo "done"
308
309Version:	$(SRCS) mkvers
310		@rm -f Version.c
311		./mkvers $(LIBRARY) $(SRCS) > Version.c
312		$(CC) -c Version.c
313		mv Version.o Version
314		@rm -f profiled/Version
315		ln Version profiled/Version
316
317mkvers:		mkvers.c
318		@$(CC) mkvers.c -o mkvers
319
320clean:;		@rm -f $(OBJS) profiled/*.o $(LIBRARY) $(LIBRARY_P)
321
322depend:;	@echo Construct dependencies manually
323
324extract:;	@ar xo $(DEST)/$(LIBRARY); rm -f __.SYMDEF
325		@cd profiled; -ar xo $(DEST)/$(LIBRARY_P); rm -f __.SYMDEF
326
327index:;		@ctags -wx $(HDRS) $(SRCS)
328
329install:	$(LIBRARY) $(LIBRARY_P)
330		@-mv $(DEST)/$(LIBRARY) $(OLDDIR)/$(LIBRARY)
331		install -m 644 $(LIBRARY) $(DEST)/$(LIBRARY)
332		ranlib $(DEST)/$(LIBRARY)
333		@-mv $(DEST)/$(LIBRARY_P) $(OLDDIR)/$(LIBRARY_P)
334		install -m 644 $(LIBRARY_P) $(DEST)/$(LIBRARY_P)
335		ranlib $(DEST)/$(LIBRARY_P)
336
337library:        $(LIBRARY) $(LIBRARY_P)
338
339print:;		@$(PRINT) $(HDRS) $(SRCS)
340
341tags:           $(HDRS) $(SRCS); @ctags $(HDRS) $(SRCS)
342
343update:         $(DEST)/$(LIBRARY)
344
345$(DEST)/$(LIBRARY): $(SRCS) $(HDRS) $(EXTHDRS)
346		@-ar xo $(DEST)/$(LIBRARY)
347		@cd profiled; -ar xo $(DEST)/$(LIBRARY_P)
348		@make -f $(MAKEFILE) DEST=$(DEST) install clean
349
350trapov_.o:	trapov_.c
351		cc -S $(OPTIONS) trapov_.c;
352		(echo "g/.set	L[0-9][0-9]*,0x0$$/s/0x0/0xf10/"; echo "x") \
353			| ex - trapov_.s;
354		as trapov_.s -o trapov_.o;
355		mv trapov_.o profiled/trapov_.o
356		rm trapov_.s
357		cc -S $(OPTIONS) trapov_.c
358		(echo "g/.set	L[0-9][0-9]*,0x0$$/s/0x0/0xf10/"; echo "x") \
359			| ex - trapov_.s
360		as trapov_.s -o trapov_.o
361		rm trapov_.s
362.c.o:
363		$(CC) -p $(CFLAGS) -c $*.c
364		-ld -x -r $*.o
365		mv a.out profiled/$*.o
366		$(CC) $(CFLAGS) -c $*.c
367		-ld -x -r $*.o
368		mv a.out $*.o
369