| 1 | .SUFFIXES: .c .o | 
|---|
| 2 | CC = cc | 
|---|
| 3 | SHELL = /bin/sh | 
|---|
| 4 | CFLAGS = -O | 
|---|
| 5 |  | 
|---|
| 6 | # If your system lacks onexit() and you are not using an | 
|---|
| 7 | # ANSI C compiler, then you should add -DNO_ONEXIT to CFLAGS, | 
|---|
| 8 | # e.g., by changing the above "CFLAGS =" line to | 
|---|
| 9 | # CFLAGS = -O -DNO_ONEXIT | 
|---|
| 10 |  | 
|---|
| 11 | # On at least some Sun systems, it is more appropriate to change the | 
|---|
| 12 | # "CFLAGS =" line to | 
|---|
| 13 | # CFLAGS = -O -Donexit=on_exit | 
|---|
| 14 |  | 
|---|
| 15 | # compile, then strip unnecessary symbols | 
|---|
| 16 | .c.o: | 
|---|
| 17 | $(CC) -c -DSkip_f2c_Undefs $(CFLAGS) $*.c | 
|---|
| 18 | ld -r -x -o $*.xxx $*.o | 
|---|
| 19 | mv $*.xxx $*.o | 
|---|
| 20 | ## Under Solaris (and other systems that do not understand ld -x), | 
|---|
| 21 | ## omit -x in the ld line above. | 
|---|
| 22 | ## If your system does not have the ld command, comment out | 
|---|
| 23 | ## or remove both the ld and mv lines above. | 
|---|
| 24 |  | 
|---|
| 25 | MISC =  F77_aloc.o Version.o main.o s_rnge.o abort_.o getarg_.o iargc_.o \ | 
|---|
| 26 | getenv_.o signal_.o s_stop.o s_paus.o system_.o cabs.o\ | 
|---|
| 27 | derf_.o derfc_.o erf_.o erfc_.o sig_die.o exit_.o | 
|---|
| 28 | POW =   pow_ci.o pow_dd.o pow_di.o pow_hh.o pow_ii.o  pow_ri.o pow_zi.o pow_zz.o | 
|---|
| 29 | CX =    c_abs.o c_cos.o c_div.o c_exp.o c_log.o c_sin.o c_sqrt.o | 
|---|
| 30 | DCX =   z_abs.o z_cos.o z_div.o z_exp.o z_log.o z_sin.o z_sqrt.o | 
|---|
| 31 | REAL =  r_abs.o r_acos.o r_asin.o r_atan.o r_atn2.o r_cnjg.o r_cos.o\ | 
|---|
| 32 | r_cosh.o r_dim.o r_exp.o r_imag.o r_int.o\ | 
|---|
| 33 | r_lg10.o r_log.o r_mod.o r_nint.o r_sign.o\ | 
|---|
| 34 | r_sin.o r_sinh.o r_sqrt.o r_tan.o r_tanh.o | 
|---|
| 35 | DBL =   d_abs.o d_acos.o d_asin.o d_atan.o d_atn2.o\ | 
|---|
| 36 | d_cnjg.o d_cos.o d_cosh.o d_dim.o d_exp.o\ | 
|---|
| 37 | d_imag.o d_int.o d_lg10.o d_log.o d_mod.o\ | 
|---|
| 38 | d_nint.o d_prod.o d_sign.o d_sin.o d_sinh.o\ | 
|---|
| 39 | d_sqrt.o d_tan.o d_tanh.o | 
|---|
| 40 | INT =   i_abs.o i_dim.o i_dnnt.o i_indx.o i_len.o i_mod.o i_nint.o i_sign.o | 
|---|
| 41 | HALF =  h_abs.o h_dim.o h_dnnt.o h_indx.o h_len.o h_mod.o  h_nint.o h_sign.o | 
|---|
| 42 | CMP =   l_ge.o l_gt.o l_le.o l_lt.o hl_ge.o hl_gt.o hl_le.o hl_lt.o | 
|---|
| 43 | EFL =   ef1asc_.o ef1cmc_.o | 
|---|
| 44 | CHAR =  F77_aloc.o s_cat.o s_cmp.o s_copy.o | 
|---|
| 45 | F90BIT = lbitbits.o lbitshft.o | 
|---|
| 46 | QINT =  pow_qq.o qbitbits.o qbitshft.o | 
|---|
| 47 | TIME =  dtime_.o etime_.o | 
|---|
| 48 |  | 
|---|
| 49 | all: signal1.h libF77.a | 
|---|
| 50 |  | 
|---|
| 51 | # You may need to adjust signal1.h suitably for your system... | 
|---|
| 52 | signal1.h: signal1.h0 | 
|---|
| 53 | cp signal1.h0 signal1.h | 
|---|
| 54 |  | 
|---|
| 55 | # If you get an error compiling dtime_.c or etime_.c, try adding | 
|---|
| 56 | # -DUSE_CLOCK to the CFLAGS assignment above; if that does not work, | 
|---|
| 57 | # omit $(TIME) from the dependency list for libF77.a below. | 
|---|
| 58 |  | 
|---|
| 59 | # For INTEGER*8 support (which requires system-dependent adjustments to | 
|---|
| 60 | # f2c.h), add $(QINT) to the libf2c.a dependency list below... | 
|---|
| 61 |  | 
|---|
| 62 | libF77.a : $(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) \ | 
|---|
| 63 | $(HALF) $(CMP) $(EFL) $(CHAR) $(F90BIT) $(TIME) | 
|---|
| 64 | ar r libF77.a $? | 
|---|
| 65 | -ranlib libF77.a | 
|---|
| 66 |  | 
|---|
| 67 | ### If your system lacks ranlib, you don't need it; see README. | 
|---|
| 68 |  | 
|---|
| 69 | Version.o: Version.c | 
|---|
| 70 | $(CC) -c Version.c | 
|---|
| 71 |  | 
|---|
| 72 | # To compile with C++, first "make f2c.h" | 
|---|
| 73 | f2c.h: f2ch.add | 
|---|
| 74 | cat /usr/include/f2c.h f2ch.add >f2c.h | 
|---|
| 75 |  | 
|---|
| 76 | install:        libF77.a | 
|---|
| 77 | mv libF77.a /usr/lib | 
|---|
| 78 | ranlib /usr/lib/libF77.a | 
|---|
| 79 |  | 
|---|
| 80 | clean: | 
|---|
| 81 | rm -f libF77.a *.o | 
|---|
| 82 |  | 
|---|
| 83 | check: | 
|---|
| 84 | xsum F77_aloc.c Notice README Version.c abort_.c c_abs.c c_cos.c \ | 
|---|
| 85 | c_div.c c_exp.c c_log.c c_sin.c c_sqrt.c cabs.c d_abs.c d_acos.c \ | 
|---|
| 86 | d_asin.c d_atan.c d_atn2.c d_cnjg.c d_cos.c d_cosh.c d_dim.c \ | 
|---|
| 87 | d_exp.c d_imag.c d_int.c d_lg10.c d_log.c d_mod.c d_nint.c \ | 
|---|
| 88 | d_prod.c d_sign.c d_sin.c d_sinh.c d_sqrt.c d_tan.c d_tanh.c \ | 
|---|
| 89 | derf_.c derfc_.c dtime_.c \ | 
|---|
| 90 | ef1asc_.c ef1cmc_.c erf_.c erfc_.c etime_.c exit_.c f2ch.add \ | 
|---|
| 91 | getarg_.c getenv_.c h_abs.c h_dim.c h_dnnt.c h_indx.c h_len.c \ | 
|---|
| 92 | h_mod.c h_nint.c h_sign.c hl_ge.c hl_gt.c hl_le.c hl_lt.c \ | 
|---|
| 93 | i_abs.c i_dim.c i_dnnt.c i_indx.c i_len.c i_mod.c i_nint.c \ | 
|---|
| 94 | i_sign.c iargc_.c l_ge.c l_gt.c l_le.c l_lt.c lbitbits.c lbitshft.c \ | 
|---|
| 95 | main.c makefile pow_ci.c pow_dd.c pow_di.c pow_hh.c pow_ii.c \ | 
|---|
| 96 | pow_qq.c pow_ri.c pow_zi.c pow_zz.c qbitbits.c qbitshft.c \ | 
|---|
| 97 | r_abs.c r_acos.c r_asin.c r_atan.c r_atn2.c \ | 
|---|
| 98 | r_cnjg.c r_cos.c r_cosh.c r_dim.c r_exp.c r_imag.c r_int.c r_lg10.c \ | 
|---|
| 99 | r_log.c r_mod.c r_nint.c r_sign.c r_sin.c r_sinh.c r_sqrt.c \ | 
|---|
| 100 | r_tan.c r_tanh.c s_cat.c s_cmp.c s_copy.c \ | 
|---|
| 101 | s_paus.c s_rnge.c s_stop.c sig_die.c signal1.h0 signal_.c system_.c \ | 
|---|
| 102 | z_abs.c z_cos.c z_div.c z_exp.c z_log.c z_sin.c z_sqrt.c >zap | 
|---|
| 103 | cmp zap libF77.xsum && rm zap || diff libF77.xsum zap | 
|---|