]> gcc.gnu.org Git - gcc.git/blame - libgfortran/Makefile.am
check.c (gfc_check_getcwd_sub): Fix seg fault.
[gcc.git] / libgfortran / Makefile.am
CommitLineData
6de9cd9a
DN
1## Process this file with automake to produce Makefile.in
2
3## We like to use C99 routines when available. This makes sure that
4## __STDC_VERSION__ is set such that libc includes make them available.
5AM_CFLAGS = -std=gnu99
d49ec2d1 6ACLOCAL_AMFLAGS = -I ../config
6de9cd9a 7
96b8a615 8toolexeclib_LTLIBRARIES = libgfortran.la libgfortranbegin.la
6de9cd9a 9
6fd7cc54 10libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lm
1657a809 11
6de9cd9a
DN
12## This should really go in the compiler lib dir, not the system lib dir.
13libgfortranbegin_la_SOURCES = fmain.c
14libgfortranbegin_la_LDFLAGS = -static
15
96b8a615 16AM_CPPFLAGS = -I$(srcdir)/io
6de9cd9a
DN
17
18libgfortranincludedir = $(includedir)/gforio
19
20gfor_io_src= \
21io/backspace.c \
22io/close.c \
23io/endfile.c \
24io/format.c \
25io/inquire.c \
26io/list_read.c \
27io/lock.c \
28io/open.c \
29io/read.c \
30io/rewind.c \
31io/transfer.c \
32io/unit.c \
33io/unix.c \
34io/write.c
35
36gfor_io_headers= \
37io/io.h
38
39gfor_helper_src= \
40intrinsics/associated.c \
41intrinsics/abort.c \
4aef80f8 42intrinsics/args.c \
e8525382 43intrinsics/bessel.c \
a2a2059f 44intrinsics/c99_functions.c \
6de9cd9a
DN
45intrinsics/cpu_time.c \
46intrinsics/cshift0.c \
f814193b 47intrinsics/date_and_time.c \
aa6fc635 48intrinsics/env.c \
e8525382 49intrinsics/erf.c \
6de9cd9a
DN
50intrinsics/eoshift0.c \
51intrinsics/eoshift2.c \
2bd74949 52intrinsics/etime.c \
d8fe26b2 53intrinsics/exit.c \
a8c60d7f 54intrinsics/getcwd.c \
4c0c6b9f 55intrinsics/getXid.c \
6de9cd9a 56intrinsics/ishftc.c \
ee569894 57intrinsics/mvbits.c \
6de9cd9a
DN
58intrinsics/pack_generic.c \
59intrinsics/size.c \
60intrinsics/spread_generic.c \
61intrinsics/string_intrinsics.c \
5b1374e9 62intrinsics/system.c \
2bd74949 63intrinsics/rand.c \
6de9cd9a
DN
64intrinsics/random.c \
65intrinsics/reshape_generic.c \
66intrinsics/reshape_packed.c \
625be286
RH
67intrinsics/selected_int_kind.f90 \
68intrinsics/selected_real_kind.f90 \
21fdfcc1 69intrinsics/system_clock.c \
6de9cd9a 70intrinsics/transpose_generic.c \
d8fe26b2
SK
71intrinsics/umask.c \
72intrinsics/unlink.c \
6de9cd9a
DN
73intrinsics/unpack_generic.c \
74runtime/in_pack_generic.c \
a9e7b9d3
PB
75runtime/in_unpack_generic.c \
76runtime/normalize.c
6de9cd9a
DN
77
78gfor_src= \
79runtime/environ.c \
80runtime/error.c \
81runtime/main.c \
82runtime/memory.c \
83runtime/pause.c \
84runtime/stop.c \
85runtime/string.c \
86runtime/select.c \
87gfortypes.h \
88libgfortran.h
89
90i_all_c= \
91generated/all_l4.c \
92generated/all_l8.c
93
94i_any_c= \
95generated/any_l4.c \
96generated/any_l8.c
97
98i_count_c= \
99generated/count_4_l4.c \
100generated/count_8_l4.c \
101generated/count_4_l8.c \
102generated/count_8_l8.c
103
104i_maxloc0_c= \
105generated/maxloc0_4_i4.c \
106generated/maxloc0_8_i4.c \
107generated/maxloc0_4_i8.c \
108generated/maxloc0_8_i8.c \
109generated/maxloc0_4_r4.c \
110generated/maxloc0_8_r4.c \
111generated/maxloc0_4_r8.c \
112generated/maxloc0_8_r8.c
113
114i_maxloc1_c= \
115generated/maxloc1_4_i4.c \
116generated/maxloc1_8_i4.c \
117generated/maxloc1_4_i8.c \
118generated/maxloc1_8_i8.c \
119generated/maxloc1_4_r4.c \
120generated/maxloc1_8_r4.c \
121generated/maxloc1_4_r8.c \
122generated/maxloc1_8_r8.c
123
124i_maxval_c= \
125generated/maxval_i4.c \
126generated/maxval_i8.c \
127generated/maxval_r4.c \
128generated/maxval_r8.c
129
130i_minloc0_c= \
131generated/minloc0_4_i4.c \
132generated/minloc0_8_i4.c \
133generated/minloc0_4_i8.c \
134generated/minloc0_8_i8.c \
135generated/minloc0_4_r4.c \
136generated/minloc0_8_r4.c \
137generated/minloc0_4_r8.c \
138generated/minloc0_8_r8.c
139
140i_minloc1_c= \
141generated/minloc1_4_i4.c \
142generated/minloc1_8_i4.c \
143generated/minloc1_4_i8.c \
144generated/minloc1_8_i8.c \
145generated/minloc1_4_r4.c \
146generated/minloc1_8_r4.c \
147generated/minloc1_4_r8.c \
148generated/minloc1_8_r8.c
149
150i_minval_c= \
151generated/minval_i4.c \
152generated/minval_i8.c \
153generated/minval_r4.c \
154generated/minval_r8.c
155
156i_sum_c= \
157generated/sum_i4.c \
158generated/sum_i8.c \
159generated/sum_r4.c \
160generated/sum_r8.c \
161generated/sum_c4.c \
162generated/sum_c8.c
163
164i_product_c= \
165generated/product_i4.c \
166generated/product_i8.c \
167generated/product_r4.c \
168generated/product_r8.c \
169generated/product_c4.c \
170generated/product_c8.c
171
172i_dotprod_c= \
173generated/dotprod_i4.c \
174generated/dotprod_i8.c \
175generated/dotprod_r4.c \
176generated/dotprod_r8.c
177
178i_dotprodl_c= \
179generated/dotprod_l4.c \
180generated/dotprod_l8.c
181
182i_dotprodc_c= \
183generated/dotprod_c4.c \
184generated/dotprod_c8.c
185
186i_matmul_c= \
187generated/matmul_i4.c \
188generated/matmul_i8.c \
189generated/matmul_r4.c \
190generated/matmul_r8.c \
191generated/matmul_c4.c \
192generated/matmul_c8.c
193
194i_matmull_c= \
195generated/matmul_l4.c \
196generated/matmul_l8.c
197
198i_transpose_c= \
199generated/transpose_i4.c \
200generated/transpose_i8.c
201
202i_shape_c= \
203generated/shape_i4.c \
204generated/shape_i8.c
205
206i_reshape_c= \
207generated/reshape_i4.c \
208generated/reshape_i8.c
209
210i_eoshift1_c= \
211generated/eoshift1_4.c \
212generated/eoshift1_8.c
213
214i_eoshift3_c= \
215generated/eoshift3_4.c \
216generated/eoshift3_8.c
217
218i_cshift1_c= \
219generated/cshift1_4.c \
220generated/cshift1_8.c
221
222in_pack_c = \
223generated/in_pack_i4.c \
224generated/in_pack_i8.c
225
226in_unpack_c = \
227generated/in_unpack_i4.c \
228generated/in_unpack_i8.c
229
230i_exponent_c = \
231generated/exponent_r4.c \
232generated/exponent_r8.c
233
234i_fraction_c = \
235generated/fraction_r4.c \
236generated/fraction_r8.c
237
238i_nearest_c = \
239generated/nearest_r4.c \
240generated/nearest_r8.c
241
242i_set_exponent_c = \
243generated/set_exponent_r4.c \
244generated/set_exponent_r8.c
245
5b200ac2
FW
246i_pow_c = \
247generated/pow_i4_i4.c \
248generated/pow_i8_i4.c \
249generated/pow_r4_i4.c \
250generated/pow_r8_i4.c \
251generated/pow_c4_i4.c \
252generated/pow_c8_i4.c \
253generated/pow_i4_i8.c \
254generated/pow_i8_i8.c \
255generated/pow_r4_i8.c \
256generated/pow_r8_i8.c \
257generated/pow_c4_i8.c \
258generated/pow_c8_i8.c
259
c9e66eda 260m4_files= m4/iparm.m4 m4/ifunction.m4 m4/iforeach.m4 m4/all.m4 \
6de9cd9a
DN
261 m4/any.m4 m4/count.m4 m4/maxloc0.m4 m4/maxloc1.m4 m4/maxval.m4 \
262 m4/minloc0.m4 m4/minloc1.m4 m4/minval.m4 m4/product.m4 m4/sum.m4 \
263 m4/dotprod.m4 m4/dotprodl.m4 m4/dotprodc.m4 m4/matmul.m4 m4/matmull.m4 \
264 m4/ctrig.m4 m4/cexp.m4 m4/chyp.m4 m4/mtype.m4 \
265 m4/specific.m4 m4/specific2.m4 m4/head.m4 m4/shape.m4 m4/reshape.m4 \
266 m4/transpose.m4 m4/eoshift1.m4 m4/eoshift3.m4 m4/exponent.m4 \
5b200ac2 267 m4/fraction.m4 m4/nearest.m4 m4/set_exponent.m4 m4/pow.m4
6de9cd9a
DN
268
269gfor_built_src= $(i_all_c) $(i_any_c) $(i_count_c) $(i_maxloc0_c) \
270 $(i_maxloc1_c) $(i_maxval_c) $(i_minloc0_c) $(i_minloc1_c) $(i_minval_c) \
271 $(i_product_c) $(i_sum_c) $(i_dotprod_c) $(i_dotprodl_c) $(i_dotprodc_c) \
272 $(i_matmul_c) $(i_matmull_c) $(i_transpose_c) $(i_shape_c) $(i_eoshift1_c) \
273 $(i_eoshift3_c) $(i_cshift1_c) $(i_reshape_c) $(in_pack_c) $(in_unpack_c) \
5b200ac2 274 $(i_exponent_c) $(i_fraction_c) $(i_nearest_c) $(i_set_exponent_c) \
625be286
RH
275 $(i_pow_c) \
276 selected_int_kind.inc selected_real_kind.inc
6de9cd9a
DN
277
278# We only use these if libm doesn't contain complex math functions.
279
280gfor_math_trig_c= \
281generated/trig_c4.c \
282generated/trig_c8.c
283gfor_math_exp_c= \
284generated/exp_c4.c \
285generated/exp_c8.c
286gfor_math_hyp_c= \
287generated/hyp_c4.c \
288generated/hyp_c8.c
289
290gfor_math_trig_obj= \
291trig_c4.lo \
292trig_c8.lo
293gfor_math_exp_obj= \
294exp_c4.lo \
295exp_c8.lo
296gfor_math_hyp_obj= \
297hyp_c4.lo \
298hyp_c8.lo
299
300# Machine generated specifics
301gfor_built_specific_src= \
302generated/_abs_c4.f90 \
303generated/_abs_c8.f90 \
304generated/_abs_i4.f90 \
305generated/_abs_i8.f90 \
306generated/_abs_r4.f90 \
307generated/_abs_r8.f90 \
308generated/_exp_r4.f90 \
309generated/_exp_r8.f90 \
310generated/_exp_c4.f90 \
311generated/_exp_c8.f90 \
312generated/_log_r4.f90 \
313generated/_log_r8.f90 \
314generated/_log_c4.f90 \
315generated/_log_c8.f90 \
316generated/_log10_r4.f90 \
317generated/_log10_r8.f90 \
318generated/_sqrt_r4.f90 \
319generated/_sqrt_r8.f90 \
320generated/_sqrt_c4.f90 \
321generated/_sqrt_c8.f90 \
322generated/_asin_r4.f90 \
323generated/_asin_r8.f90 \
324generated/_acos_r4.f90 \
325generated/_acos_r8.f90 \
326generated/_atan_r4.f90 \
327generated/_atan_r8.f90 \
328generated/_sin_r4.f90 \
329generated/_sin_r8.f90 \
330generated/_sin_c4.f90 \
331generated/_sin_c8.f90 \
332generated/_cos_r4.f90 \
333generated/_cos_r8.f90 \
334generated/_cos_c4.f90 \
335generated/_cos_c8.f90 \
336generated/_tan_r4.f90 \
337generated/_tan_r8.f90 \
338generated/_sinh_r4.f90 \
339generated/_sinh_r8.f90 \
340generated/_cosh_r4.f90 \
341generated/_cosh_r8.f90 \
342generated/_tanh_r4.f90 \
343generated/_tanh_r8.f90 \
344generated/_conjg_c4.f90 \
345generated/_conjg_c8.f90 \
346generated/_aint_r4.f90 \
347generated/_aint_r8.f90 \
348generated/_anint_r4.f90 \
349generated/_anint_r8.f90
350
351gfor_built_specific2_src= \
352generated/_sign_i4.f90 \
353generated/_sign_i8.f90 \
354generated/_sign_r4.f90 \
355generated/_sign_r8.f90 \
356generated/_dim_i4.f90 \
357generated/_dim_i8.f90 \
358generated/_dim_r4.f90 \
359generated/_dim_r8.f90 \
360generated/_atan2_r4.f90 \
361generated/_atan2_r8.f90 \
362generated/_mod_i4.f90 \
363generated/_mod_i8.f90 \
364generated/_mod_r4.f90 \
365generated/_mod_r8.f90
366#specific intrinsics requiring manal code
367#gfor_specific_c= \
368intrinsics/_aimag.c \
369intrinsics/_cabs.c \
370foo
371
372gfor_specific_src= \
373$(gfor_built_specific_src) \
374$(gfor_built_specific2_src) \
375intrinsics/dprod_r8.f90
376
377gfor_cmath_src= $(gfor_math_trig_c) $(gfor_math_exp_c) $(gfor_math_hyp_c)
378gfor_cmath_obj= $(gfor_math_trig_obj) $(gfor_math_exp_obj) \
379 $(gfor_math_hyp_obj)
380
381BUILT_SOURCES=$(gfor_built_src) $(gfor_cmath_src) $(gfor_built_specific_src) \
382 $(gfor_built_specific2_src)
383libgfortran_la_SOURCES = $(gfor_src) $(gfor_built_src) $(gfor_io_src) \
384 $(gfor_helper_src) $(gfor_io_headers) $(gfor_specific_src)
385
386EXTRA_libgfortran_la_SOURCES = $(gfor_cmath_src)
387
388libgfortran_la_LIBADD = @MATH_OBJ@
389libgfortran_la_DEPENDENCIES = @MATH_OBJ@
390
c9e66eda 391I_M4_DEPS=m4/iparm.m4
6de9cd9a
DN
392I_M4_DEPS0=$(I_M4_DEPS) m4/iforeach.m4
393I_M4_DEPS1=$(I_M4_DEPS) m4/ifunction.m4
394
625be286 395selected_int_kind.inc: $(srcdir)/mk-sik-inc.sh
c7a35fe9 396 $(SHELL) $(srcdir)/mk-sik-inc.sh '$(FCCOMPILE)' > $@
625be286
RH
397
398selected_real_kind.inc: $(srcdir)/mk-srk-inc.sh
c7a35fe9 399 $(SHELL) $(srcdir)/mk-srk-inc.sh '$(FCCOMPILE)' > $@
625be286 400
6de9cd9a
DN
401## A 'normal' build shouldn't need to regenerate these
402## so we only include them in maintainer mode
403
404if MAINTAINER_MODE
405$(i_all_c): m4/all.m4 $(I_M4_DEPS1)
406 m4 -Dfile=$@ -I$(srcdir)/m4 all.m4 > $@
407
408$(i_any_c): m4/any.m4 $(I_M4_DEPS1)
409 m4 -Dfile=$@ -I$(srcdir)/m4 any.m4> $@
410
411$(i_count_c): m4/count.m4 $(I_M4_DEPS1)
412 m4 -Dfile=$@ -I$(srcdir)/m4 count.m4> $@
413
414$(i_maxloc0_c): m4/maxloc0.m4 $(I_M4_DEPS0)
415 m4 -Dfile=$@ -I$(srcdir)/m4 maxloc0.m4 > $@
416
417$(i_maxloc1_c): m4/maxloc1.m4 $(I_M4_DEPS1)
418 m4 -Dfile=$@ -I$(srcdir)/m4 maxloc1.m4 > $@
419
420$(i_maxval_c): m4/maxval.m4 $(I_M4_DEPS1)
421 m4 -Dfile=$@ -I$(srcdir)/m4 maxval.m4 > $@
422
423$(i_minloc0_c): m4/minloc0.m4 $(I_M4_DEPS0)
424 m4 -Dfile=$@ -I$(srcdir)/m4 minloc0.m4 > $@
425
426$(i_minloc1_c): m4/minloc1.m4 $(I_M4_DEPS1)
427 m4 -Dfile=$@ -I$(srcdir)/m4 minloc1.m4 > $@
428
429$(i_minval_c): m4/minval.m4 $(I_M4_DEPS1)
430 m4 -Dfile=$@ -I$(srcdir)/m4 minval.m4 > $@
431
432$(i_product_c): m4/product.m4 $(I_M4_DEPS1)
433 m4 -Dfile=$@ -I$(srcdir)/m4 product.m4 > $@
434
435$(i_sum_c): m4/sum.m4 $(I_M4_DEPS1)
436 m4 -Dfile=$@ -I$(srcdir)/m4 sum.m4 > $@
437
438$(i_dotprod_c): m4/dotprod.m4 $(I_M4_DEPS)
439 m4 -Dfile=$@ -I$(srcdir)/m4 dotprod.m4 > $@
440
441$(i_dotprodl_c): m4/dotprodl.m4 $(I_M4_DEPS)
442 m4 -Dfile=$@ -I$(srcdir)/m4 dotprodl.m4 > $@
443
444$(i_dotprodc_c): m4/dotprodc.m4 $(I_M4_DEPS)
445 m4 -Dfile=$@ -I$(srcdir)/m4 dotprodc.m4 > $@
446
447$(i_matmul_c): m4/matmul.m4 $(I_M4_DEPS)
448 m4 -Dfile=$@ -I$(srcdir)/m4 matmul.m4 > $@
449
450$(i_matmull_c): m4/matmull.m4 $(I_M4_DEPS)
451 m4 -Dfile=$@ -I$(srcdir)/m4 matmull.m4 > $@
452
453$(i_transpose_c): m4/transpose.m4 $(I_M4_DEPS)
454 m4 -Dfile=$@ -I$(srcdir)/m4 transpose.m4 > $@
455
456$(i_shape_c): m4/shape.m4 $(I_M4_DEPS)
457 m4 -Dfile=$@ -I$(srcdir)/m4 shape.m4 > $@
458
459$(i_reshape_c): m4/reshape.m4 $(I_M4_DEPS)
460 m4 -Dfile=$@ -I$(srcdir)/m4 reshape.m4 > $@
461
462$(i_eoshift1_c): m4/eoshift1.m4 $(I_M4_DEPS)
463 m4 -Dfile=$@ -I$(srcdir)/m4 eoshift1.m4 > $@
464
465$(i_eoshift3_c): m4/eoshift3.m4 $(I_M4_DEPS)
466 m4 -Dfile=$@ -I$(srcdir)/m4 eoshift3.m4 > $@
467
468$(i_cshift1_c): m4/cshift1.m4 $(I_M4_DEPS)
469 m4 -Dfile=$@ -I$(srcdir)/m4 cshift1.m4 > $@
470
471$(in_pack_c): m4/in_pack.m4 $(I_M4_DEPS)
472 m4 -Dfile=$@ -I$(srcdir)/m4 in_pack.m4 > $@
473
474$(in_unpack_c): m4/in_unpack.m4 $(I_M4_DEPS)
475 m4 -Dfile=$@ -I$(srcdir)/m4 in_unpack.m4 > $@
476
477$(i_exponent_c): m4/exponent.m4 m4/mtype.m4
478 m4 -Dfile=$@ -I$(srcdir)/m4 exponent.m4 > $@
479
480$(i_fraction_c): m4/fraction.m4 m4/mtype.m4
481 m4 -Dfile=$@ -I$(srcdir)/m4 fraction.m4 > $@
482
483$(i_nearest_c): m4/nearest.m4 m4/mtype.m4
484 m4 -Dfile=$@ -I$(srcdir)/m4 nearest.m4 > $@
485
486$(i_set_exponent_c): m4/set_exponent.m4 m4/mtype.m4
487 m4 -Dfile=$@ -I$(srcdir)/m4 set_exponent.m4 > $@
488
5b200ac2
FW
489$(i_pow_c): m4/pow.m4 $(I_M4_DEPS)
490 m4 -Dfile=$@ -I$(srcdir)/m4 pow.m4 > $@
491
6de9cd9a
DN
492$(gfor_math_trig_c): m4/ctrig.m4 m4/mtype.m4
493 m4 -Dfile=$@ -I$(srcdir)/m4 ctrig.m4 > $@
494
495$(gfor_math_exp_c): m4/cexp.m4 m4/mtype.m4
496 m4 -Dfile=$@ -I$(srcdir)/m4 cexp.m4 > $@
497
498$(gfor_math_hyp_c): m4/chyp.m4 m4/mtype.m4
499 m4 -Dfile=$@ -I$(srcdir)/m4 chyp.m4 > $@
500
501$(gfor_built_specific_src): m4/specific.m4 m4/head.m4
502 m4 -Dfile=$@ -I$(srcdir)/m4 specific.m4 > $@
503
504$(gfor_built_specific2_src): m4/specific2.m4 m4/head.m4
505 m4 -Dfile=$@ -I$(srcdir)/m4 specific2.m4 > $@
506## end of maintainer mode only rules
507endif
508
509EXTRA_DIST = $(m4_files)
510
This page took 0.152673 seconds and 5 git commands to generate.