1 # Makefile for GNU F77 compiler runtime.
2 # Copyright (C) 1995-1997 Free Software Foundation, Inc.
3 # Contributed by Dave Love (d.love@dl.ac.uk).
5 #This file is part of GNU Fortran.
7 #GNU Fortran is free software; you can redistribute it and/or modify
8 #it under the terms of the GNU General Public License as published by
9 #the Free Software Foundation; either version 2, or (at your option)
12 #GNU Fortran is distributed in the hope that it will be useful,
13 #but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 #GNU General Public License for more details.
17 #You should have received a copy of the GNU General Public License
18 #along with GNU Fortran; see the file COPYING. If not, write to
19 #the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
24 #### Start of system configuration section. ####
28 exec_prefix = @
exec_prefix@
29 target_alias
= @target_alias@
30 gcc_version
= @gcc_version@
31 gcc_version_trigger
= @gcc_version_trigger@
33 bindir = $(exec_prefix)/bin
34 libdir = $(exec_prefix)/lib
35 datadir = $(prefix)/lib
36 mandir = $(prefix)/man
37 infodir = $(prefix)/info
38 includedir = $(prefix)/include
39 docdir
= $(datadir)/doc
40 libsubdir
= $(libdir)/gcc-lib
/$(target_alias
)/$(gcc_version
)
44 INSTALL
= $(srcdir)/$(TO_TOPDIR
)/install-sh
-c
45 INSTALL_PROGRAM
= $(INSTALL
)
46 INSTALL_DATA
= $(INSTALL
)
48 AR
= `if test -f $(TO_TOPDIR)/binutils/ar; then \
49 echo $(TO_TOPDIR)/binutils/ar; else echo ar; fi`
52 RANLIB
= `if test -f $(TO_TOPDIR)/binutils/ranlib; then \
53 echo $(TO_TOPDIR)/binutils/ranlib; else echo ranlib; fi`
55 MAKEINFO
= `if test -f $(TO_TOPDIR)/texinfo/C/makeinfo; then \
56 echo $(TO_TOPDIR)/texinfo/C/makeinfo; else echo makeinfo; fi`
62 # List of variables to pass to sub-makes. This should not be needed'
63 # by GNU make or Sun make (both of which pass command-line variable'
64 # overrides thouh $(MAKE)) but may be needed by older versions.'
69 "F2C_H_DIR=$(s)/libf2c" \
70 "G2C_H_DIR=$(r)/$(TARGET_SUBDIR)/libf2c" \
71 "GCC_H_DIR=$(s)/include" \
72 "LIBCFLAGS=$(LIBCFLAGS)" \
73 "PICFLAG=$(PICFLAG)" \
74 "RUNTESTFLAGS=$(RUNTESTFLAGS)"
78 MISC
= libF77
/F77_aloc.o libF77
/VersionF.o libF77
/main.o libF77
/s_rnge.o \
79 libF77
/abort_.o libF77
/getarg_.o libF77
/iargc_.o libF77
/getenv_.o \
80 libF77
/signal_.o libF77
/s_stop.o libF77
/s_paus.o libF77
/system_.o \
81 libF77
/cabs.o libF77
/derf_.o libF77
/derfc_.o libF77
/erf_.o \
82 libF77
/erfc_.o libF77
/sig_die.o libF77
/exit_.o \
83 libF77
/setarg.o libF77
/setsig.o
84 POW
= libF77
/pow_ci.o libF77
/pow_dd.o libF77
/pow_di.o libF77
/pow_hh.o \
85 libF77
/pow_ii.o libF77
/pow_ri.o libF77
/pow_zi.o libF77
/pow_zz.o \
87 CX
= libF77
/c_abs.o libF77
/c_cos.o libF77
/c_div.o libF77
/c_exp.o \
88 libF77
/c_log.o libF77
/c_sin.o libF77
/c_sqrt.o
89 DCX
= libF77
/z_abs.o libF77
/z_cos.o libF77
/z_div.o libF77
/z_exp.o \
90 libF77
/z_log.o libF77
/z_sin.o libF77
/z_sqrt.o
91 REAL
= libF77
/r_abs.o libF77
/r_acos.o libF77
/r_asin.o libF77
/r_atan.o \
92 libF77
/r_atn2.o libF77
/r_cnjg.o libF77
/r_cos.o libF77
/r_cosh.o \
93 libF77
/r_dim.o libF77
/r_exp.o libF77
/r_imag.o libF77
/r_int.o \
94 libF77
/r_lg10.o libF77
/r_log.o libF77
/r_mod.o libF77
/r_nint.o \
95 libF77
/r_sign.o libF77
/r_sin.o libF77
/r_sinh.o libF77
/r_sqrt.o \
96 libF77
/r_tan.o libF77
/r_tanh.o
97 DBL
= libF77
/d_abs.o libF77
/d_acos.o libF77
/d_asin.o libF77
/d_atan.o \
98 libF77
/d_atn2.o libF77
/d_cnjg.o libF77
/d_cos.o libF77
/d_cosh.o \
99 libF77
/d_dim.o libF77
/d_exp.o libF77
/d_imag.o libF77
/d_int.o \
100 libF77
/d_lg10.o libF77
/d_log.o libF77
/d_mod.o libF77
/d_nint.o \
101 libF77
/d_prod.o libF77
/d_sign.o libF77
/d_sin.o libF77
/d_sinh.o \
102 libF77
/d_sqrt.o libF77
/d_tan.o libF77
/d_tanh.o
103 INT
= libF77
/i_abs.o libF77
/i_dim.o libF77
/i_dnnt.o libF77
/i_indx.o \
104 libF77
/i_len.o libF77
/i_mod.o libF77
/i_nint.o libF77
/i_sign.o
105 HALF
= libF77
/h_abs.o libF77
/h_dim.o libF77
/h_dnnt.o libF77
/h_indx.o \
106 libF77
/h_len.o libF77
/h_mod.o libF77
/h_nint.o libF77
/h_sign.o
107 CMP
= libF77
/l_ge.o libF77
/l_gt.o libF77
/l_le.o libF77
/l_lt.o \
108 libF77
/hl_ge.o libF77
/hl_gt.o libF77
/hl_le.o libF77
/hl_lt.o
109 EFL
= libF77
/ef1asc_.o libF77
/ef1cmc_.o
110 CHAR
= libF77
/s_cat.o libF77
/s_cmp.o libF77
/s_copy.o
111 F90BIT
= libF77
/lbitbits.o libF77
/lbitshft.o libF77
/qbitbits.o \
113 FOBJ
= $(MISC
) $(POW
) $(CX
) $(DCX
) $(REAL
) $(DBL
) $(INT
) $(HALF
) $(CMP
) \
114 $(EFL
) $(CHAR
) $(F90BIT
)
116 IOBJ
= libI77
/VersionI.o libI77
/backspace.o libI77
/close.o libI77
/dfe.o \
117 libI77
/dolio.o libI77
/due.o libI77
/endfile.o libI77
/err.o \
118 libI77
/fmt.o libI77
/fmtlib.o libI77
/iio.o libI77
/ilnw.o \
119 libI77
/inquire.o libI77
/lread.o libI77
/lwrite.o libI77
/open.o \
120 libI77
/rdfmt.o libI77
/rewind.o libI77
/rsfe.o libI77
/rsli.o \
121 libI77
/rsne.o libI77
/sfe.o libI77
/sue.o libI77
/typesize.o \
122 libI77
/uio.o libI77
/util.o libI77
/wref.o libI77
/wrtfmt.o \
123 libI77
/wsfe.o libI77
/wsle.o libI77
/wsne.o libI77
/xwsne.o \
126 UOBJ
= libU77
/VersionU.o libU77
/gerror_.o libU77
/perror_.o libU77
/ierrno_.o \
127 libU77
/itime_.o libU77
/time_.o libU77
/unlink_.o libU77
/fnum_.o \
128 libU77
/getpid_.o libU77
/getuid_.o libU77
/getgid_.o libU77
/kill_.o \
129 libU77
/rand_.o libU77
/srand_.o libU77
/irand_.o libU77
/sleep_.o \
130 libU77
/idate_.o libU77
/ctime_.o libU77
/etime_.o libU77
/dtime_.o \
131 libU77
/isatty_.o libU77
/ltime_.o libU77
/fstat_.o libU77
/stat_.o \
132 libU77
/lstat_.o libU77
/access_.o libU77
/link_.o libU77
/getlog_.o \
133 libU77
/ttynam_.o libU77
/getcwd_.o libU77
/vxttime_.o \
134 libU77
/vxtidate_.o libU77
/gmtime_.o libU77
/fdate_.o libU77
/secnds_.o \
135 libU77
/bes.o libU77
/dbes.o libU77
/chdir_.o libU77
/chmod_.o \
136 libU77
/lnblnk_.o libU77
/hostnm_.o libU77
/rename_.o libU77
/fgetc_.o \
137 libU77
/fputc_.o libU77
/umask_.o libU77
/sys_clock_.o libU77
/date_.o \
138 libU77
/second_.o libU77
/flush1_.o libU77
/alarm_.o libU77
/mclock_.o \
139 libU77
/symlnk_.o libU77
/datetime_.o
141 F2CEXT
= abort derf derfc ef1asc ef1cmc erf erfc exit getarg getenv iargc \
142 signal system flush ftell fseek access besj0 besj1 besjn besy0 besy1 \
143 besyn chdir chmod ctime date dbesj0 dbesj1 dbesjn dbesy0 dbesy1 dbesyn \
144 dtime etime fdate fgetc fget flush1 fnum fputc fput fstat gerror \
145 getcwd getgid getlog getpid getuid gmtime hostnm idate ierrno irand \
146 isatty itime kill link lnblnk lstat ltime mclock perror rand rename \
147 secnds second sleep srand stat symlnk time ttynam umask unlink \
152 $(LIBG2C
): stamp-libf77 stamp-libi77 stamp-libu77 stamp-libe77
154 $(AR
) $(AR_FLAGS
) $(LIBG2C
) $(FOBJ
)
155 $(AR
) $(AR_FLAGS
) $(LIBG2C
) $(IOBJ
)
156 $(AR
) $(AR_FLAGS
) $(LIBG2C
) $(UOBJ
)
157 objs
=""; for i in
$(F2CEXT
); do objs
="$$objs libE77/L$$i.o"; done
; \
158 $(AR
) $(AR_FLAGS
) $(LIBG2C
) $$objs
161 stamp-libi77
: libI77
/Makefile
163 cd libI77
; $(MAKE
) $(FLAGS_TO_PASS
) all
166 stamp-libf77
: libF77
/Makefile
168 cd libF77
; $(MAKE
) $(FLAGS_TO_PASS
) all
171 stamp-libu77
: libU77
/Makefile
173 cd libU77
; $(MAKE
) $(FLAGS_TO_PASS
) all
176 stamp-libe77
: $(srcdir)/f2cext.c
178 if
[ -d libE77
]; then
rm -f libE77
/*.o
; else mkdir libE77
; fi
179 for name in
$(F2CEXT
); \
182 $(CC
) -c
-I.
-I
$(srcdir) -I..
/..
/include $(CPPFLAGS
) $(CFLAGS
) \
183 -DL
$${name} $(srcdir)/f2cext.c \
184 -o libE77
/L
$${name}.o
; \
185 if
[ $$?
-eq
0 ] ; then true
; else exit
1; fi
; \
189 ${srcdir}/configure
: ${srcdir}/configure.in
190 rm -f config.cache Makefile g2c.h \
191 && cd
$(srcdir) && autoconf
&& rm -f config.cache
192 ${srcdir}/libU77
/configure
: ${srcdir}/libU77
/configure.in
193 rm -f libU77
/config.cache libU77
/Makefile
&& \
194 cd
$(srcdir)/libU77
&& autoconf
&& rm -f config.cache
195 g2c.h Makefile
: $(srcdir)/g2c.h.in
$(srcdir)/Makefile.in config.status
196 $(SHELL
) config.status
197 config.status
: $(srcdir)/configure
$(gcc_version_trigger
)
198 $(SHELL
) config.status
--recheck
200 info install-info clean-info
dvi:
203 cd libU77
; $(MAKE
) G77DIR
=..
/..
/..
/gcc
/ check
206 $(INSTALL_DATA
) $(LIBG2C
) $(libsubdir
)/$(LIBG2C
).n
207 ( cd
$(libsubdir
) ; $(RANLIB
) $(LIBG2C
).n
)
208 mv
-f
$(libsubdir
)/$(LIBG2C
).n
$(libsubdir
)/$(LIBG2C
)
209 $(INSTALL_DATA
) g2c.h
$(libsubdir
)/include/g2c.h
210 @if
[ -f f2c-install-ok
-o
-f
$(srcdir)/f2c-install-ok
]; then \
212 echo
'Warning: g77 no longer installs libf2c.a or f2c.h.'; \
213 echo
' You must do so yourself. For more information,'; \
214 echo
' read "Distributing Binaries" in the g77 docs.'; \
215 echo
' (To turn off this warning, delete the file'; \
216 echo
' f2c-install-ok in the source or build directory.)'; \
221 rm -f stamp-
* $(LIBG2C
)
229 rm -f libF77
/Makefile
230 rm -f libI77
/Makefile
231 rm -f libU77
/Makefile libU77
/config.log libU77
/a.out
234 rm -f Makefile config.cache config.status g2c.h
235 rm -f lib?
77/Makefile lib?
77/config.status
236 rm -f lib?
77/config.cache lib?
77/config.h
239 rm -f
$(srcdir)/configure
$(srcdir)/libU77
/configure
241 rebuilt
: ${srcdir}/configure
${srcdir}/libU77
/configure
243 .PHONY
: rebuilt
mostlyclean clean distclean maintainer-clean
all