]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgfortran/Makefile.am
[multiple changes]
[thirdparty/gcc.git] / libgfortran / Makefile.am
CommitLineData
6de9cd9a
DN
1## Process this file with automake to produce Makefile.in
2
e606fb39 3
01a6a27a 4ACLOCAL_AMFLAGS = -I .. -I ../config
6de9cd9a 5
140e859c
ZW
6## May be used by toolexeclibdir.
7gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
8
c0e7e2bf
JB
9## Symbol versioning (copied from libssp).
10if LIBGFOR_USE_SYMVER
49ea7a0e 11if LIBGFOR_USE_SYMVER_GNU
c0e7e2bf 12version_arg = -Wl,--version-script=$(srcdir)/gfortran.map
49ea7a0e
RO
13version_dep = $(srcdir)/gfortran.map
14endif
15if LIBGFOR_USE_SYMVER_SUN
16version_arg = -Wl,-M,gfortran.map-sun
17version_dep = gfortran.map-sun
18gfortran.map-sun : $(srcdir)/gfortran.map \
19 $(top_srcdir)/../contrib/make_sunver.pl \
20 $(libgfortran_la_OBJECTS) $(libgfortran_la_LIBADD)
21 perl $(top_srcdir)/../contrib/make_sunver.pl \
22 $(srcdir)/gfortran.map \
23 $(libgfortran_la_OBJECTS:%.lo=.libs/%.o) \
24 `echo $(libgfortran_la_LIBADD) | \
25 sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
26 > $@ || (rm -f $@ ; exit 1)
27endif
c0e7e2bf
JB
28else
29version_arg =
49ea7a0e 30version_dep =
c0e7e2bf
JB
31endif
32
0a940ddd 33LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) \
7de6ba7a 34 $(lt_host_flags)
7afa92c5 35
f3ed85f6 36toolexeclib_LTLIBRARIES = libgfortran.la
1ec601bf 37toolexeclib_DATA = libgfortran.spec
84fec8a5 38libgfortran_la_LINK = $(LINK) $(libgfortran_la_LDFLAGS)
0efbd687 39libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
ad4f95e3
FXC
40 $(LTLDFLAGS) $(LIBQUADLIB) ../libbacktrace/libbacktrace.la \
41 -lm $(extra_ldflags_libgfortran) \
0efbd687 42 $(version_arg) -Wc,-shared-libgcc
1ec601bf 43libgfortran_la_DEPENDENCIES = $(version_dep) libgfortran.spec $(LIBQUADLIB_DEP)
1657a809 44
7e3d293f
TB
45cafexeclib_LTLIBRARIES = libcaf_single.la
46cafexeclibdir = $(libdir)/gcc/$(target_alias)/$(gcc_version)$(MULTISUBDIR)
47libcaf_single_la_SOURCES = caf/single.c
48libcaf_single_la_LDFLAGS = -static
49libcaf_single_la_DEPENDENCIES = caf/libcaf.h
50libcaf_single_la_LINK = $(LINK) $(libcaf_single_la_LDFLAGS)
51
8b198102
FXC
52if IEEE_SUPPORT
53fincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)$(MULTISUBDIR)/finclude
54nodist_finclude_HEADERS = ieee_arithmetic.mod ieee_exceptions.mod ieee_features.mod
55endif
56
3a923a75 57## io.h conflicts with a system header on some platforms, so
f49b3d36 58## use -iquote
5e805e44 59AM_CPPFLAGS = -iquote$(srcdir)/io -I$(srcdir)/$(MULTISRCTOP)../gcc \
1ec601bf 60 -I$(srcdir)/$(MULTISRCTOP)../gcc/config $(LIBQUADINCLUDE) \
5d1c8e77
RO
61 -I$(MULTIBUILDTOP)../../$(host_subdir)/gcc \
62 -I$(srcdir)/$(MULTISRCTOP)../libgcc \
ad4f95e3
FXC
63 -I$(MULTIBUILDTOP)../libgcc \
64 -I$(srcdir)/$(MULTISRCTOP)../libbacktrace \
65 -I$(MULTIBUILDTOP)../libbacktrace \
66 -I../libbacktrace
6de9cd9a 67
cc4947e6
JB
68# Fortran rules for complex multiplication and division
69AM_CFLAGS += -fcx-fortran-rules
70
c049309d 71# Use -ffunction-sections -fdata-sections if supported by the compiler
c049309d
UW
72AM_CFLAGS += $(SECTION_FLAGS)
73
9fc77574 74# Some targets require additional compiler options for IEEE compatibility.
9fc77574 75AM_CFLAGS += $(IEEE_FLAGS)
8b198102 76AM_FCFLAGS += $(IEEE_FLAGS)
9fc77574 77
ee95f928
BS
78if LIBGFOR_MINIMAL
79AM_CFLAGS += -DLIBGFOR_MINIMAL
80endif
81
6de9cd9a 82gfor_io_src= \
ee95f928
BS
83io/size_from_kind.c
84
85if !LIBGFOR_MINIMAL
86
87gfor_io_src+= \
6de9cd9a 88io/close.c \
6403ec5f 89io/file_pos.c \
6de9cd9a
DN
90io/format.c \
91io/inquire.c \
0dce3ca1 92io/intrinsics.c \
6de9cd9a
DN
93io/list_read.c \
94io/lock.c \
95io/open.c \
96io/read.c \
6de9cd9a 97io/transfer.c \
1ec601bf 98io/transfer128.c \
6de9cd9a
DN
99io/unit.c \
100io/unix.c \
15877a88
JB
101io/write.c \
102io/fbuf.c
6de9cd9a 103
ee95f928
BS
104endif
105
6de9cd9a 106gfor_io_headers= \
92cbdb68
JB
107io/io.h \
108io/fbuf.h \
109io/format.h \
110io/unix.h
6de9cd9a
DN
111
112gfor_helper_src= \
113intrinsics/associated.c \
114intrinsics/abort.c \
4aef80f8 115intrinsics/args.c \
0a05c536 116intrinsics/bit_intrinsics.c \
6de9cd9a
DN
117intrinsics/cshift0.c \
118intrinsics/eoshift0.c \
119intrinsics/eoshift2.c \
f489fba1 120intrinsics/erfc_scaled.c \
7c1dab0d 121intrinsics/extends_type_of.c \
df65f093 122intrinsics/fnum.c \
f77b6ca3 123intrinsics/ierrno.c \
6de9cd9a 124intrinsics/ishftc.c \
a8b3b0b6
CR
125intrinsics/iso_c_generated_procs.c \
126intrinsics/iso_c_binding.c \
0d519038 127intrinsics/malloc.c \
ee569894 128intrinsics/mvbits.c \
ca0551f0 129intrinsics/move_alloc.c \
6de9cd9a 130intrinsics/pack_generic.c \
a39fafac 131intrinsics/selected_char_kind.c \
6de9cd9a
DN
132intrinsics/size.c \
133intrinsics/spread_generic.c \
134intrinsics/string_intrinsics.c \
2bd74949 135intrinsics/rand.c \
6de9cd9a
DN
136intrinsics/random.c \
137intrinsics/reshape_generic.c \
138intrinsics/reshape_packed.c \
625be286
RH
139intrinsics/selected_int_kind.f90 \
140intrinsics/selected_real_kind.f90 \
ee95f928
BS
141intrinsics/transpose_generic.c \
142intrinsics/unpack_generic.c \
143runtime/in_pack_generic.c \
144runtime/in_unpack_generic.c
145
146if !LIBGFOR_MINIMAL
147
148gfor_helper_src+= \
149intrinsics/access.c \
150intrinsics/c99_functions.c \
151intrinsics/chdir.c \
152intrinsics/chmod.c \
153intrinsics/clock.c \
154intrinsics/cpu_time.c \
155intrinsics/ctime.c \
156intrinsics/date_and_time.c \
157intrinsics/dtime.c \
158intrinsics/env.c \
159intrinsics/etime.c \
160intrinsics/execute_command_line.c \
161intrinsics/exit.c \
162intrinsics/gerror.c \
163intrinsics/getcwd.c \
164intrinsics/getlog.c \
165intrinsics/getXid.c \
166intrinsics/hostnm.c \
167intrinsics/kill.c \
168intrinsics/link.c \
169intrinsics/perror.c \
170intrinsics/signal.c \
171intrinsics/sleep.c \
172intrinsics/system.c \
173intrinsics/rename.c \
df65f093 174intrinsics/stat.c \
f77b6ca3 175intrinsics/symlnk.c \
21fdfcc1 176intrinsics/system_clock.c \
f77b6ca3 177intrinsics/time.c \
d8fe26b2 178intrinsics/umask.c \
ee95f928
BS
179intrinsics/unlink.c
180
181endif
6de9cd9a 182
8b198102
FXC
183if IEEE_SUPPORT
184
185gfor_helper_src+=ieee/ieee_helper.c
186
187gfor_ieee_src= \
188ieee/ieee_arithmetic.F90 \
189ieee/ieee_exceptions.F90 \
190ieee/ieee_features.F90
191
192else
193
194gfor_ieee_src=
195
196endif
197
6de9cd9a 198gfor_src= \
16bff921 199runtime/bounds.c \
8b67b708 200runtime/compile_options.c \
ee95f928
BS
201runtime/memory.c \
202runtime/string.c \
203runtime/select.c
204
205if LIBGFOR_MINIMAL
206
207gfor_src+= runtime/minimal.c
208
209else
210
211gfor_src+= \
212runtime/backtrace.c \
3571925e 213runtime/convert_char.c \
6de9cd9a
DN
214runtime/environ.c \
215runtime/error.c \
944b8b35 216runtime/fpu.c \
6de9cd9a 217runtime/main.c \
6de9cd9a 218runtime/pause.c \
ee95f928
BS
219runtime/stop.c
220
221endif
6de9cd9a
DN
222
223i_all_c= \
90469382
TK
224$(srcdir)/generated/all_l1.c \
225$(srcdir)/generated/all_l2.c \
567c915b
TK
226$(srcdir)/generated/all_l4.c \
227$(srcdir)/generated/all_l8.c \
228$(srcdir)/generated/all_l16.c
6de9cd9a
DN
229
230i_any_c= \
90469382
TK
231$(srcdir)/generated/any_l1.c \
232$(srcdir)/generated/any_l2.c \
567c915b
TK
233$(srcdir)/generated/any_l4.c \
234$(srcdir)/generated/any_l8.c \
235$(srcdir)/generated/any_l16.c
6de9cd9a 236
47b99694
TB
237i_bessel_c= \
238$(srcdir)/generated/bessel_r4.c \
239$(srcdir)/generated/bessel_r8.c \
240$(srcdir)/generated/bessel_r10.c \
241$(srcdir)/generated/bessel_r16.c
242
6de9cd9a 243i_count_c= \
90469382
TK
244$(srcdir)/generated/count_1_l.c \
245$(srcdir)/generated/count_2_l.c \
246$(srcdir)/generated/count_4_l.c \
247$(srcdir)/generated/count_8_l.c \
248$(srcdir)/generated/count_16_l.c
6de9cd9a 249
195a95c4
TB
250i_iall_c= \
251$(srcdir)/generated/iall_i1.c \
252$(srcdir)/generated/iall_i2.c \
253$(srcdir)/generated/iall_i4.c \
254$(srcdir)/generated/iall_i8.c \
255$(srcdir)/generated/iall_i16.c
256
257i_iany_c= \
258$(srcdir)/generated/iany_i1.c \
259$(srcdir)/generated/iany_i2.c \
260$(srcdir)/generated/iany_i4.c \
261$(srcdir)/generated/iany_i8.c \
262$(srcdir)/generated/iany_i16.c
263
264i_iparity_c= \
265$(srcdir)/generated/iparity_i1.c \
266$(srcdir)/generated/iparity_i2.c \
267$(srcdir)/generated/iparity_i4.c \
268$(srcdir)/generated/iparity_i8.c \
269$(srcdir)/generated/iparity_i16.c
270
6de9cd9a 271i_maxloc0_c= \
567c915b
TK
272$(srcdir)/generated/maxloc0_4_i1.c \
273$(srcdir)/generated/maxloc0_8_i1.c \
274$(srcdir)/generated/maxloc0_16_i1.c \
275$(srcdir)/generated/maxloc0_4_i2.c \
276$(srcdir)/generated/maxloc0_8_i2.c \
277$(srcdir)/generated/maxloc0_16_i2.c \
278$(srcdir)/generated/maxloc0_4_i4.c \
279$(srcdir)/generated/maxloc0_8_i4.c \
280$(srcdir)/generated/maxloc0_16_i4.c \
281$(srcdir)/generated/maxloc0_4_i8.c \
282$(srcdir)/generated/maxloc0_8_i8.c \
283$(srcdir)/generated/maxloc0_16_i8.c \
284$(srcdir)/generated/maxloc0_4_i16.c \
285$(srcdir)/generated/maxloc0_8_i16.c \
286$(srcdir)/generated/maxloc0_16_i16.c \
287$(srcdir)/generated/maxloc0_4_r4.c \
288$(srcdir)/generated/maxloc0_8_r4.c \
289$(srcdir)/generated/maxloc0_16_r4.c \
290$(srcdir)/generated/maxloc0_4_r8.c \
291$(srcdir)/generated/maxloc0_8_r8.c \
292$(srcdir)/generated/maxloc0_16_r8.c \
293$(srcdir)/generated/maxloc0_4_r10.c \
294$(srcdir)/generated/maxloc0_8_r10.c \
295$(srcdir)/generated/maxloc0_16_r10.c \
296$(srcdir)/generated/maxloc0_4_r16.c \
297$(srcdir)/generated/maxloc0_8_r16.c \
298$(srcdir)/generated/maxloc0_16_r16.c
6de9cd9a
DN
299
300i_maxloc1_c= \
567c915b
TK
301$(srcdir)/generated/maxloc1_4_i1.c \
302$(srcdir)/generated/maxloc1_8_i1.c \
303$(srcdir)/generated/maxloc1_16_i1.c \
304$(srcdir)/generated/maxloc1_4_i2.c \
305$(srcdir)/generated/maxloc1_8_i2.c \
306$(srcdir)/generated/maxloc1_16_i2.c \
307$(srcdir)/generated/maxloc1_4_i4.c \
308$(srcdir)/generated/maxloc1_8_i4.c \
309$(srcdir)/generated/maxloc1_16_i4.c \
310$(srcdir)/generated/maxloc1_4_i8.c \
311$(srcdir)/generated/maxloc1_8_i8.c \
312$(srcdir)/generated/maxloc1_16_i8.c \
313$(srcdir)/generated/maxloc1_4_i16.c \
314$(srcdir)/generated/maxloc1_8_i16.c \
315$(srcdir)/generated/maxloc1_16_i16.c \
316$(srcdir)/generated/maxloc1_4_r4.c \
317$(srcdir)/generated/maxloc1_8_r4.c \
318$(srcdir)/generated/maxloc1_16_r4.c \
319$(srcdir)/generated/maxloc1_4_r8.c \
320$(srcdir)/generated/maxloc1_8_r8.c \
321$(srcdir)/generated/maxloc1_16_r8.c \
322$(srcdir)/generated/maxloc1_4_r10.c \
323$(srcdir)/generated/maxloc1_8_r10.c \
324$(srcdir)/generated/maxloc1_16_r10.c \
325$(srcdir)/generated/maxloc1_4_r16.c \
326$(srcdir)/generated/maxloc1_8_r16.c \
327$(srcdir)/generated/maxloc1_16_r16.c
6de9cd9a
DN
328
329i_maxval_c= \
567c915b
TK
330$(srcdir)/generated/maxval_i1.c \
331$(srcdir)/generated/maxval_i2.c \
332$(srcdir)/generated/maxval_i4.c \
333$(srcdir)/generated/maxval_i8.c \
334$(srcdir)/generated/maxval_i16.c \
335$(srcdir)/generated/maxval_r4.c \
336$(srcdir)/generated/maxval_r8.c \
337$(srcdir)/generated/maxval_r10.c \
338$(srcdir)/generated/maxval_r16.c
6de9cd9a
DN
339
340i_minloc0_c= \
567c915b
TK
341$(srcdir)/generated/minloc0_4_i1.c \
342$(srcdir)/generated/minloc0_8_i1.c \
343$(srcdir)/generated/minloc0_16_i1.c \
344$(srcdir)/generated/minloc0_4_i2.c \
345$(srcdir)/generated/minloc0_8_i2.c \
346$(srcdir)/generated/minloc0_16_i2.c \
347$(srcdir)/generated/minloc0_4_i4.c \
348$(srcdir)/generated/minloc0_8_i4.c \
349$(srcdir)/generated/minloc0_16_i4.c \
350$(srcdir)/generated/minloc0_4_i8.c \
351$(srcdir)/generated/minloc0_8_i8.c \
352$(srcdir)/generated/minloc0_16_i8.c \
353$(srcdir)/generated/minloc0_4_i16.c \
354$(srcdir)/generated/minloc0_8_i16.c \
355$(srcdir)/generated/minloc0_16_i16.c \
356$(srcdir)/generated/minloc0_4_r4.c \
357$(srcdir)/generated/minloc0_8_r4.c \
358$(srcdir)/generated/minloc0_16_r4.c \
359$(srcdir)/generated/minloc0_4_r8.c \
360$(srcdir)/generated/minloc0_8_r8.c \
361$(srcdir)/generated/minloc0_16_r8.c \
362$(srcdir)/generated/minloc0_4_r10.c \
363$(srcdir)/generated/minloc0_8_r10.c \
364$(srcdir)/generated/minloc0_16_r10.c \
365$(srcdir)/generated/minloc0_4_r16.c \
366$(srcdir)/generated/minloc0_8_r16.c \
367$(srcdir)/generated/minloc0_16_r16.c
6de9cd9a
DN
368
369i_minloc1_c= \
567c915b
TK
370$(srcdir)/generated/minloc1_4_i1.c \
371$(srcdir)/generated/minloc1_8_i1.c \
372$(srcdir)/generated/minloc1_16_i1.c \
373$(srcdir)/generated/minloc1_4_i2.c \
374$(srcdir)/generated/minloc1_8_i2.c \
375$(srcdir)/generated/minloc1_16_i2.c \
376$(srcdir)/generated/minloc1_4_i4.c \
377$(srcdir)/generated/minloc1_8_i4.c \
378$(srcdir)/generated/minloc1_16_i4.c \
379$(srcdir)/generated/minloc1_4_i8.c \
380$(srcdir)/generated/minloc1_8_i8.c \
381$(srcdir)/generated/minloc1_16_i8.c \
382$(srcdir)/generated/minloc1_4_i16.c \
383$(srcdir)/generated/minloc1_8_i16.c \
384$(srcdir)/generated/minloc1_16_i16.c \
385$(srcdir)/generated/minloc1_4_r4.c \
386$(srcdir)/generated/minloc1_8_r4.c \
387$(srcdir)/generated/minloc1_16_r4.c \
388$(srcdir)/generated/minloc1_4_r8.c \
389$(srcdir)/generated/minloc1_8_r8.c \
390$(srcdir)/generated/minloc1_16_r8.c \
391$(srcdir)/generated/minloc1_4_r10.c \
392$(srcdir)/generated/minloc1_8_r10.c \
393$(srcdir)/generated/minloc1_16_r10.c \
394$(srcdir)/generated/minloc1_4_r16.c \
395$(srcdir)/generated/minloc1_8_r16.c \
396$(srcdir)/generated/minloc1_16_r16.c
6de9cd9a
DN
397
398i_minval_c= \
567c915b
TK
399$(srcdir)/generated/minval_i1.c \
400$(srcdir)/generated/minval_i2.c \
401$(srcdir)/generated/minval_i4.c \
402$(srcdir)/generated/minval_i8.c \
403$(srcdir)/generated/minval_i16.c \
404$(srcdir)/generated/minval_r4.c \
405$(srcdir)/generated/minval_r8.c \
406$(srcdir)/generated/minval_r10.c \
407$(srcdir)/generated/minval_r16.c
6de9cd9a 408
0cd0559e
TB
409i_norm2_c= \
410$(srcdir)/generated/norm2_r4.c \
411$(srcdir)/generated/norm2_r8.c \
412$(srcdir)/generated/norm2_r10.c \
413$(srcdir)/generated/norm2_r16.c
414
415i_parity_c = \
416$(srcdir)/generated/parity_l1.c \
417$(srcdir)/generated/parity_l2.c \
418$(srcdir)/generated/parity_l4.c \
419$(srcdir)/generated/parity_l8.c \
420$(srcdir)/generated/parity_l16.c
421
6de9cd9a 422i_sum_c= \
567c915b
TK
423$(srcdir)/generated/sum_i1.c \
424$(srcdir)/generated/sum_i2.c \
425$(srcdir)/generated/sum_i4.c \
426$(srcdir)/generated/sum_i8.c \
427$(srcdir)/generated/sum_i16.c \
428$(srcdir)/generated/sum_r4.c \
429$(srcdir)/generated/sum_r8.c \
430$(srcdir)/generated/sum_r10.c \
431$(srcdir)/generated/sum_r16.c \
432$(srcdir)/generated/sum_c4.c \
433$(srcdir)/generated/sum_c8.c \
434$(srcdir)/generated/sum_c10.c \
435$(srcdir)/generated/sum_c16.c
6de9cd9a
DN
436
437i_product_c= \
567c915b
TK
438$(srcdir)/generated/product_i1.c \
439$(srcdir)/generated/product_i2.c \
440$(srcdir)/generated/product_i4.c \
441$(srcdir)/generated/product_i8.c \
442$(srcdir)/generated/product_i16.c \
443$(srcdir)/generated/product_r4.c \
444$(srcdir)/generated/product_r8.c \
445$(srcdir)/generated/product_r10.c \
446$(srcdir)/generated/product_r16.c \
447$(srcdir)/generated/product_c4.c \
448$(srcdir)/generated/product_c8.c \
449$(srcdir)/generated/product_c10.c \
450$(srcdir)/generated/product_c16.c
6de9cd9a 451
6de9cd9a 452i_matmul_c= \
567c915b
TK
453$(srcdir)/generated/matmul_i1.c \
454$(srcdir)/generated/matmul_i2.c \
455$(srcdir)/generated/matmul_i4.c \
456$(srcdir)/generated/matmul_i8.c \
457$(srcdir)/generated/matmul_i16.c \
458$(srcdir)/generated/matmul_r4.c \
459$(srcdir)/generated/matmul_r8.c \
460$(srcdir)/generated/matmul_r10.c \
461$(srcdir)/generated/matmul_r16.c \
462$(srcdir)/generated/matmul_c4.c \
463$(srcdir)/generated/matmul_c8.c \
464$(srcdir)/generated/matmul_c10.c \
465$(srcdir)/generated/matmul_c16.c
6de9cd9a
DN
466
467i_matmull_c= \
567c915b
TK
468$(srcdir)/generated/matmul_l4.c \
469$(srcdir)/generated/matmul_l8.c \
470$(srcdir)/generated/matmul_l16.c
6de9cd9a
DN
471
472i_transpose_c= \
567c915b
TK
473$(srcdir)/generated/transpose_i4.c \
474$(srcdir)/generated/transpose_i8.c \
475$(srcdir)/generated/transpose_i16.c \
476$(srcdir)/generated/transpose_r4.c \
477$(srcdir)/generated/transpose_r8.c \
478$(srcdir)/generated/transpose_r10.c \
479$(srcdir)/generated/transpose_r16.c \
480$(srcdir)/generated/transpose_c4.c \
481$(srcdir)/generated/transpose_c8.c \
482$(srcdir)/generated/transpose_c10.c \
483$(srcdir)/generated/transpose_c16.c
6de9cd9a
DN
484
485i_shape_c= \
ed019753
FXC
486$(srcdir)/generated/shape_i1.c \
487$(srcdir)/generated/shape_i2.c \
567c915b
TK
488$(srcdir)/generated/shape_i4.c \
489$(srcdir)/generated/shape_i8.c \
490$(srcdir)/generated/shape_i16.c
6de9cd9a
DN
491
492i_reshape_c= \
567c915b
TK
493$(srcdir)/generated/reshape_i4.c \
494$(srcdir)/generated/reshape_i8.c \
495$(srcdir)/generated/reshape_i16.c \
496$(srcdir)/generated/reshape_r4.c \
497$(srcdir)/generated/reshape_r8.c \
498$(srcdir)/generated/reshape_r10.c \
499$(srcdir)/generated/reshape_r16.c \
500$(srcdir)/generated/reshape_c4.c \
501$(srcdir)/generated/reshape_c8.c \
502$(srcdir)/generated/reshape_c10.c \
503$(srcdir)/generated/reshape_c16.c
6de9cd9a
DN
504
505i_eoshift1_c= \
567c915b
TK
506$(srcdir)/generated/eoshift1_4.c \
507$(srcdir)/generated/eoshift1_8.c \
508$(srcdir)/generated/eoshift1_16.c
6de9cd9a
DN
509
510i_eoshift3_c= \
567c915b
TK
511$(srcdir)/generated/eoshift3_4.c \
512$(srcdir)/generated/eoshift3_8.c \
513$(srcdir)/generated/eoshift3_16.c
6de9cd9a 514
c2b00cdc
TK
515i_cshift0_c= \
516$(srcdir)/generated/cshift0_i1.c \
517$(srcdir)/generated/cshift0_i2.c \
518$(srcdir)/generated/cshift0_i4.c \
519$(srcdir)/generated/cshift0_i8.c \
520$(srcdir)/generated/cshift0_i16.c \
521$(srcdir)/generated/cshift0_r4.c \
522$(srcdir)/generated/cshift0_r8.c \
523$(srcdir)/generated/cshift0_r10.c \
524$(srcdir)/generated/cshift0_r16.c \
525$(srcdir)/generated/cshift0_c4.c \
526$(srcdir)/generated/cshift0_c8.c \
527$(srcdir)/generated/cshift0_c10.c \
528$(srcdir)/generated/cshift0_c16.c
529
530
6de9cd9a 531i_cshift1_c= \
567c915b
TK
532$(srcdir)/generated/cshift1_4.c \
533$(srcdir)/generated/cshift1_8.c \
534$(srcdir)/generated/cshift1_16.c
6de9cd9a
DN
535
536in_pack_c = \
8e1d7686
TK
537$(srcdir)/generated/in_pack_i1.c \
538$(srcdir)/generated/in_pack_i2.c \
567c915b
TK
539$(srcdir)/generated/in_pack_i4.c \
540$(srcdir)/generated/in_pack_i8.c \
541$(srcdir)/generated/in_pack_i16.c \
8e1d7686
TK
542$(srcdir)/generated/in_pack_r4.c \
543$(srcdir)/generated/in_pack_r8.c \
544$(srcdir)/generated/in_pack_r10.c \
545$(srcdir)/generated/in_pack_r16.c \
567c915b
TK
546$(srcdir)/generated/in_pack_c4.c \
547$(srcdir)/generated/in_pack_c8.c \
548$(srcdir)/generated/in_pack_c10.c \
549$(srcdir)/generated/in_pack_c16.c
6de9cd9a
DN
550
551in_unpack_c = \
8e1d7686
TK
552$(srcdir)/generated/in_unpack_i1.c \
553$(srcdir)/generated/in_unpack_i2.c \
567c915b
TK
554$(srcdir)/generated/in_unpack_i4.c \
555$(srcdir)/generated/in_unpack_i8.c \
556$(srcdir)/generated/in_unpack_i16.c \
8e1d7686
TK
557$(srcdir)/generated/in_unpack_r4.c \
558$(srcdir)/generated/in_unpack_r8.c \
559$(srcdir)/generated/in_unpack_r10.c \
560$(srcdir)/generated/in_unpack_r16.c \
567c915b
TK
561$(srcdir)/generated/in_unpack_c4.c \
562$(srcdir)/generated/in_unpack_c8.c \
563$(srcdir)/generated/in_unpack_c10.c \
564$(srcdir)/generated/in_unpack_c16.c
6de9cd9a
DN
565
566i_exponent_c = \
567c915b
TK
567$(srcdir)/generated/exponent_r4.c \
568$(srcdir)/generated/exponent_r8.c \
569$(srcdir)/generated/exponent_r10.c \
570$(srcdir)/generated/exponent_r16.c
6de9cd9a 571
cc6d3bde 572i_spacing_c = \
567c915b
TK
573$(srcdir)/generated/spacing_r4.c \
574$(srcdir)/generated/spacing_r8.c \
575$(srcdir)/generated/spacing_r10.c \
576$(srcdir)/generated/spacing_r16.c
cc6d3bde
SK
577
578i_rrspacing_c = \
567c915b
TK
579$(srcdir)/generated/rrspacing_r4.c \
580$(srcdir)/generated/rrspacing_r8.c \
581$(srcdir)/generated/rrspacing_r10.c \
582$(srcdir)/generated/rrspacing_r16.c
cc6d3bde 583
6de9cd9a 584i_fraction_c = \
567c915b
TK
585$(srcdir)/generated/fraction_r4.c \
586$(srcdir)/generated/fraction_r8.c \
587$(srcdir)/generated/fraction_r10.c \
588$(srcdir)/generated/fraction_r16.c
6de9cd9a
DN
589
590i_nearest_c = \
567c915b
TK
591$(srcdir)/generated/nearest_r4.c \
592$(srcdir)/generated/nearest_r8.c \
593$(srcdir)/generated/nearest_r10.c \
594$(srcdir)/generated/nearest_r16.c
6de9cd9a
DN
595
596i_set_exponent_c = \
567c915b
TK
597$(srcdir)/generated/set_exponent_r4.c \
598$(srcdir)/generated/set_exponent_r8.c \
599$(srcdir)/generated/set_exponent_r10.c \
600$(srcdir)/generated/set_exponent_r16.c
6de9cd9a 601
5b200ac2 602i_pow_c = \
567c915b
TK
603$(srcdir)/generated/pow_i4_i4.c \
604$(srcdir)/generated/pow_i8_i4.c \
605$(srcdir)/generated/pow_i16_i4.c \
1ec601bf 606$(srcdir)/generated/pow_r16_i4.c \
567c915b
TK
607$(srcdir)/generated/pow_c4_i4.c \
608$(srcdir)/generated/pow_c8_i4.c \
609$(srcdir)/generated/pow_c10_i4.c \
610$(srcdir)/generated/pow_c16_i4.c \
611$(srcdir)/generated/pow_i4_i8.c \
612$(srcdir)/generated/pow_i8_i8.c \
613$(srcdir)/generated/pow_i16_i8.c \
614$(srcdir)/generated/pow_r4_i8.c \
615$(srcdir)/generated/pow_r8_i8.c \
616$(srcdir)/generated/pow_r10_i8.c \
617$(srcdir)/generated/pow_r16_i8.c \
618$(srcdir)/generated/pow_c4_i8.c \
619$(srcdir)/generated/pow_c8_i8.c \
620$(srcdir)/generated/pow_c10_i8.c \
621$(srcdir)/generated/pow_c16_i8.c \
622$(srcdir)/generated/pow_i4_i16.c \
623$(srcdir)/generated/pow_i8_i16.c \
624$(srcdir)/generated/pow_i16_i16.c \
625$(srcdir)/generated/pow_r4_i16.c \
626$(srcdir)/generated/pow_r8_i16.c \
627$(srcdir)/generated/pow_r10_i16.c \
628$(srcdir)/generated/pow_r16_i16.c \
629$(srcdir)/generated/pow_c4_i16.c \
630$(srcdir)/generated/pow_c8_i16.c \
631$(srcdir)/generated/pow_c10_i16.c \
632$(srcdir)/generated/pow_c16_i16.c
5b200ac2 633
3ef2513a
TK
634i_pack_c = \
635$(srcdir)/generated/pack_i1.c \
636$(srcdir)/generated/pack_i2.c \
637$(srcdir)/generated/pack_i4.c \
638$(srcdir)/generated/pack_i8.c \
639$(srcdir)/generated/pack_i16.c \
640$(srcdir)/generated/pack_r4.c \
641$(srcdir)/generated/pack_r8.c \
642$(srcdir)/generated/pack_r10.c \
643$(srcdir)/generated/pack_r16.c \
644$(srcdir)/generated/pack_c4.c \
645$(srcdir)/generated/pack_c8.c \
646$(srcdir)/generated/pack_c10.c \
647$(srcdir)/generated/pack_c16.c
648
3478bba4
TK
649i_unpack_c = \
650$(srcdir)/generated/unpack_i1.c \
651$(srcdir)/generated/unpack_i2.c \
652$(srcdir)/generated/unpack_i4.c \
653$(srcdir)/generated/unpack_i8.c \
654$(srcdir)/generated/unpack_i16.c \
655$(srcdir)/generated/unpack_r4.c \
656$(srcdir)/generated/unpack_r8.c \
657$(srcdir)/generated/unpack_r10.c \
658$(srcdir)/generated/unpack_r16.c \
659$(srcdir)/generated/unpack_c4.c \
660$(srcdir)/generated/unpack_c8.c \
661$(srcdir)/generated/unpack_c10.c \
662$(srcdir)/generated/unpack_c16.c
663
75f2543f
TK
664i_spread_c = \
665$(srcdir)/generated/spread_i1.c \
666$(srcdir)/generated/spread_i2.c \
667$(srcdir)/generated/spread_i4.c \
668$(srcdir)/generated/spread_i8.c \
669$(srcdir)/generated/spread_i16.c \
670$(srcdir)/generated/spread_r4.c \
671$(srcdir)/generated/spread_r8.c \
672$(srcdir)/generated/spread_r10.c \
673$(srcdir)/generated/spread_r16.c \
674$(srcdir)/generated/spread_c4.c \
675$(srcdir)/generated/spread_c8.c \
676$(srcdir)/generated/spread_c10.c \
677$(srcdir)/generated/spread_c16.c
678
c9e66eda 679m4_files= m4/iparm.m4 m4/ifunction.m4 m4/iforeach.m4 m4/all.m4 \
6de9cd9a
DN
680 m4/any.m4 m4/count.m4 m4/maxloc0.m4 m4/maxloc1.m4 m4/maxval.m4 \
681 m4/minloc0.m4 m4/minloc1.m4 m4/minval.m4 m4/product.m4 m4/sum.m4 \
90469382 682 m4/matmul.m4 m4/matmull.m4 m4/ifunction_logical.m4 \
6de9cd9a
DN
683 m4/ctrig.m4 m4/cexp.m4 m4/chyp.m4 m4/mtype.m4 \
684 m4/specific.m4 m4/specific2.m4 m4/head.m4 m4/shape.m4 m4/reshape.m4 \
685 m4/transpose.m4 m4/eoshift1.m4 m4/eoshift3.m4 m4/exponent.m4 \
0e7e7e6e 686 m4/fraction.m4 m4/nearest.m4 m4/set_exponent.m4 m4/pow.m4 \
3478bba4 687 m4/misc_specifics.m4 m4/rrspacing.m4 m4/spacing.m4 m4/pack.m4 \
195a95c4
TB
688 m4/unpack.m4 m4/spread.m4 m4/bessel.m4 m4/norm2.m4 m4/parity.m4 \
689 m4/iall.m4 m4/iany.m4 m4/iparity.m4
6de9cd9a
DN
690
691gfor_built_src= $(i_all_c) $(i_any_c) $(i_count_c) $(i_maxloc0_c) \
692 $(i_maxloc1_c) $(i_maxval_c) $(i_minloc0_c) $(i_minloc1_c) $(i_minval_c) \
195a95c4
TB
693 $(i_product_c) $(i_sum_c) $(i_bessel_c) $(i_iall_c) $(i_iany_c) \
694 $(i_iparity_c) $(i_norm2_c) $(i_parity_c) \
fd9b5249 695 $(i_matmul_c) $(i_matmull_c) $(i_transpose_c) $(i_shape_c) $(i_eoshift1_c) \
6de9cd9a 696 $(i_eoshift3_c) $(i_cshift1_c) $(i_reshape_c) $(in_pack_c) $(in_unpack_c) \
5b200ac2 697 $(i_exponent_c) $(i_fraction_c) $(i_nearest_c) $(i_set_exponent_c) \
3478bba4 698 $(i_pow_c) $(i_rrspacing_c) $(i_spacing_c) $(i_pack_c) $(i_unpack_c) \
75f2543f 699 $(i_spread_c) selected_int_kind.inc selected_real_kind.inc kinds.h \
8b198102 700 $(i_cshift0_c) kinds.inc c99_protos.inc fpu-target.h fpu-target.inc
6de9cd9a 701
6de9cd9a
DN
702# Machine generated specifics
703gfor_built_specific_src= \
567c915b
TK
704$(srcdir)/generated/_abs_c4.F90 \
705$(srcdir)/generated/_abs_c8.F90 \
706$(srcdir)/generated/_abs_c10.F90 \
707$(srcdir)/generated/_abs_c16.F90 \
708$(srcdir)/generated/_abs_i4.F90 \
709$(srcdir)/generated/_abs_i8.F90 \
710$(srcdir)/generated/_abs_i16.F90 \
711$(srcdir)/generated/_abs_r4.F90 \
712$(srcdir)/generated/_abs_r8.F90 \
713$(srcdir)/generated/_abs_r10.F90 \
714$(srcdir)/generated/_abs_r16.F90 \
715$(srcdir)/generated/_aimag_c4.F90 \
716$(srcdir)/generated/_aimag_c8.F90 \
717$(srcdir)/generated/_aimag_c10.F90 \
718$(srcdir)/generated/_aimag_c16.F90 \
719$(srcdir)/generated/_exp_r4.F90 \
720$(srcdir)/generated/_exp_r8.F90 \
721$(srcdir)/generated/_exp_r10.F90 \
722$(srcdir)/generated/_exp_r16.F90 \
723$(srcdir)/generated/_exp_c4.F90 \
724$(srcdir)/generated/_exp_c8.F90 \
725$(srcdir)/generated/_exp_c10.F90 \
726$(srcdir)/generated/_exp_c16.F90 \
727$(srcdir)/generated/_log_r4.F90 \
728$(srcdir)/generated/_log_r8.F90 \
729$(srcdir)/generated/_log_r10.F90 \
730$(srcdir)/generated/_log_r16.F90 \
731$(srcdir)/generated/_log_c4.F90 \
732$(srcdir)/generated/_log_c8.F90 \
733$(srcdir)/generated/_log_c10.F90 \
734$(srcdir)/generated/_log_c16.F90 \
735$(srcdir)/generated/_log10_r4.F90 \
736$(srcdir)/generated/_log10_r8.F90 \
737$(srcdir)/generated/_log10_r10.F90 \
738$(srcdir)/generated/_log10_r16.F90 \
739$(srcdir)/generated/_sqrt_r4.F90 \
740$(srcdir)/generated/_sqrt_r8.F90 \
741$(srcdir)/generated/_sqrt_r10.F90 \
742$(srcdir)/generated/_sqrt_r16.F90 \
743$(srcdir)/generated/_sqrt_c4.F90 \
744$(srcdir)/generated/_sqrt_c8.F90 \
745$(srcdir)/generated/_sqrt_c10.F90 \
746$(srcdir)/generated/_sqrt_c16.F90 \
747$(srcdir)/generated/_asin_r4.F90 \
748$(srcdir)/generated/_asin_r8.F90 \
749$(srcdir)/generated/_asin_r10.F90 \
750$(srcdir)/generated/_asin_r16.F90 \
751$(srcdir)/generated/_asinh_r4.F90 \
752$(srcdir)/generated/_asinh_r8.F90 \
753$(srcdir)/generated/_asinh_r10.F90 \
754$(srcdir)/generated/_asinh_r16.F90 \
755$(srcdir)/generated/_acos_r4.F90 \
756$(srcdir)/generated/_acos_r8.F90 \
757$(srcdir)/generated/_acos_r10.F90 \
758$(srcdir)/generated/_acos_r16.F90 \
759$(srcdir)/generated/_acosh_r4.F90 \
760$(srcdir)/generated/_acosh_r8.F90 \
761$(srcdir)/generated/_acosh_r10.F90 \
762$(srcdir)/generated/_acosh_r16.F90 \
763$(srcdir)/generated/_atan_r4.F90 \
764$(srcdir)/generated/_atan_r8.F90 \
765$(srcdir)/generated/_atan_r10.F90 \
766$(srcdir)/generated/_atan_r16.F90 \
767$(srcdir)/generated/_atanh_r4.F90 \
768$(srcdir)/generated/_atanh_r8.F90 \
769$(srcdir)/generated/_atanh_r10.F90 \
770$(srcdir)/generated/_atanh_r16.F90 \
771$(srcdir)/generated/_sin_r4.F90 \
772$(srcdir)/generated/_sin_r8.F90 \
773$(srcdir)/generated/_sin_r10.F90 \
774$(srcdir)/generated/_sin_r16.F90 \
775$(srcdir)/generated/_sin_c4.F90 \
776$(srcdir)/generated/_sin_c8.F90 \
777$(srcdir)/generated/_sin_c10.F90 \
778$(srcdir)/generated/_sin_c16.F90 \
779$(srcdir)/generated/_cos_r4.F90 \
780$(srcdir)/generated/_cos_r8.F90 \
781$(srcdir)/generated/_cos_r10.F90 \
782$(srcdir)/generated/_cos_r16.F90 \
783$(srcdir)/generated/_cos_c4.F90 \
784$(srcdir)/generated/_cos_c8.F90 \
785$(srcdir)/generated/_cos_c10.F90 \
786$(srcdir)/generated/_cos_c16.F90 \
787$(srcdir)/generated/_tan_r4.F90 \
788$(srcdir)/generated/_tan_r8.F90 \
789$(srcdir)/generated/_tan_r10.F90 \
790$(srcdir)/generated/_tan_r16.F90 \
791$(srcdir)/generated/_sinh_r4.F90 \
792$(srcdir)/generated/_sinh_r8.F90 \
793$(srcdir)/generated/_sinh_r10.F90 \
794$(srcdir)/generated/_sinh_r16.F90 \
795$(srcdir)/generated/_cosh_r4.F90 \
796$(srcdir)/generated/_cosh_r8.F90 \
797$(srcdir)/generated/_cosh_r10.F90 \
798$(srcdir)/generated/_cosh_r16.F90 \
799$(srcdir)/generated/_tanh_r4.F90 \
800$(srcdir)/generated/_tanh_r8.F90 \
801$(srcdir)/generated/_tanh_r10.F90 \
802$(srcdir)/generated/_tanh_r16.F90 \
803$(srcdir)/generated/_conjg_c4.F90 \
804$(srcdir)/generated/_conjg_c8.F90 \
805$(srcdir)/generated/_conjg_c10.F90 \
806$(srcdir)/generated/_conjg_c16.F90 \
807$(srcdir)/generated/_aint_r4.F90 \
808$(srcdir)/generated/_aint_r8.F90 \
809$(srcdir)/generated/_aint_r10.F90 \
810$(srcdir)/generated/_aint_r16.F90 \
811$(srcdir)/generated/_anint_r4.F90 \
812$(srcdir)/generated/_anint_r8.F90 \
813$(srcdir)/generated/_anint_r10.F90 \
814$(srcdir)/generated/_anint_r16.F90
6de9cd9a
DN
815
816gfor_built_specific2_src= \
567c915b
TK
817$(srcdir)/generated/_sign_i4.F90 \
818$(srcdir)/generated/_sign_i8.F90 \
819$(srcdir)/generated/_sign_i16.F90 \
820$(srcdir)/generated/_sign_r4.F90 \
821$(srcdir)/generated/_sign_r8.F90 \
822$(srcdir)/generated/_sign_r10.F90 \
823$(srcdir)/generated/_sign_r16.F90 \
824$(srcdir)/generated/_dim_i4.F90 \
825$(srcdir)/generated/_dim_i8.F90 \
826$(srcdir)/generated/_dim_i16.F90 \
827$(srcdir)/generated/_dim_r4.F90 \
828$(srcdir)/generated/_dim_r8.F90 \
829$(srcdir)/generated/_dim_r10.F90 \
830$(srcdir)/generated/_dim_r16.F90 \
831$(srcdir)/generated/_atan2_r4.F90 \
832$(srcdir)/generated/_atan2_r8.F90 \
833$(srcdir)/generated/_atan2_r10.F90 \
834$(srcdir)/generated/_atan2_r16.F90 \
835$(srcdir)/generated/_mod_i4.F90 \
836$(srcdir)/generated/_mod_i8.F90 \
837$(srcdir)/generated/_mod_i16.F90 \
838$(srcdir)/generated/_mod_r4.F90 \
839$(srcdir)/generated/_mod_r8.F90 \
840$(srcdir)/generated/_mod_r10.F90 \
841$(srcdir)/generated/_mod_r16.F90
842
843gfor_misc_specifics = $(srcdir)/generated/misc_specifics.F90
0e7e7e6e 844
6de9cd9a
DN
845gfor_specific_src= \
846$(gfor_built_specific_src) \
847$(gfor_built_specific2_src) \
0e7e7e6e 848$(gfor_misc_specifics) \
973ff4c0
TS
849intrinsics/dprod_r8.f90 \
850intrinsics/f2c_specifics.F90
6de9cd9a 851
74f04a6a 852# Turn on vectorization and loop unrolling for matmul.
5d70ab07 853$(patsubst %.c,%.lo,$(notdir $(i_matmul_c))): AM_CFLAGS += -ffast-math -fno-protect-parens -fstack-arrays -ftree-vectorize -funroll-loops --param max-unroll-times=4
74f04a6a
JB
854# Logical matmul doesn't vectorize.
855$(patsubst %.c,%.lo,$(notdir $(i_matmull_c))): AM_CFLAGS += -funroll-loops
85206901 856
e6472bce
FXC
857# Add the -fallow-leading-underscore option when needed
858$(patsubst %.F90,%.lo,$(patsubst %.f90,%.lo,$(notdir $(gfor_specific_src)))): AM_FCFLAGS += -fallow-leading-underscore
859selected_real_kind.lo selected_int_kind.lo: AM_FCFLAGS += -fallow-leading-underscore
860
8b198102
FXC
861if IEEE_SUPPORT
862# Add flags for IEEE modules
863$(patsubst %.F90,%.lo,$(notdir $(gfor_ieee_src))): AM_FCFLAGS += -Wno-unused-dummy-argument -Wno-c-binding-type -ffree-line-length-0 -fallow-leading-underscore
864endif
865
866# Dependencies between IEEE_ARITHMETIC and IEEE_EXCEPTIONS
867ieee_arithmetic.lo: ieee/ieee_arithmetic.F90 ieee_exceptions.lo
868 $(LTPPFCCOMPILE) -c -o $@ $<
869
870ieee_features.mod: ieee_features.lo
871 :
872ieee_exceptions.mod: ieee_exceptions.lo
873 :
874ieee_arithmetic.mod: ieee_arithmetic.lo
875 :
876
1409cd0b 877BUILT_SOURCES=$(gfor_built_src) $(gfor_built_specific_src) \
0e7e7e6e 878 $(gfor_built_specific2_src) $(gfor_misc_specifics)
b808ac33
BF
879
880prereq_SRC = $(gfor_src) $(gfor_built_src) $(gfor_io_src) \
8b198102 881 $(gfor_helper_src) $(gfor_ieee_src) $(gfor_io_headers) $(gfor_specific_src)
6de9cd9a 882
b808ac33
BF
883if onestep
884# dummy sources for libtool
885BUILT_SOURCES+=libgfortran_c.c libgfortran_f.f90
886libgfortran_c.c libgfortran_f.f90 libgfortran_F.F90:
887 echo > $@
888# overrides for libtool perusing the dummy sources
889libgfortran_c.o: $(filter %.c,$(prereq_SRC))
890 $(COMPILE) -c $^ -o $@ -combine
891
892libgfortran_c.lo: $(filter %.c,$(prereq_SRC))
893 $(LTCOMPILE) -c -o $@ $^ -combine
894
895#libgfortran_f.o: $(filter %.f %.f90,$(prereq_SRC))
896# $(FCCOMPILE) -c $^ -o $@ -combine
897
898#libgfortran_f.lo: $(filter %.f %.f90,$(prereq_SRC))
899# $(LTFCCOMPILE) -c -o $@ $^ -combine
900# not currently used:
901#libgfortran_F.o: $(filter %.F %.F90,$(prereq_SRC))
902# $(PPFCCOMPILE) -c $^ -o $@ -combine
903#
904#libgfortran_F.lo:
905# $(LTPPFCCOMPILE) -c -o $@ $^ -combine
906
907libgfortran_la_SOURCES = libgfortran_c.c $(filter-out %.c,$(prereq_SRC))
908
909else
910libgfortran_la_SOURCES = $(prereq_SRC)
911
912endif
913
c9e66eda 914I_M4_DEPS=m4/iparm.m4
6de9cd9a
DN
915I_M4_DEPS0=$(I_M4_DEPS) m4/iforeach.m4
916I_M4_DEPS1=$(I_M4_DEPS) m4/ifunction.m4
90469382 917I_M4_DEPS2=$(I_M4_DEPS) m4/ifunction_logical.m4
6de9cd9a 918
32aa3bff 919kinds.h: $(srcdir)/mk-kinds-h.sh
06bc79e0 920 $(SHELL) $(srcdir)/mk-kinds-h.sh '$(FCCOMPILE)' > $@ || rm $@
32aa3bff 921
644cb69f
FXC
922kinds.inc: kinds.h
923 grep '^#' < kinds.h > $@
924
925c99_protos.inc: $(srcdir)/c99_protos.h
926 grep '^#' < $(srcdir)/c99_protos.h > $@
927
625be286 928selected_int_kind.inc: $(srcdir)/mk-sik-inc.sh
06bc79e0 929 $(SHELL) $(srcdir)/mk-sik-inc.sh '$(FCCOMPILE)' > $@ || rm $@
625be286
RH
930
931selected_real_kind.inc: $(srcdir)/mk-srk-inc.sh
06bc79e0 932 $(SHELL) $(srcdir)/mk-srk-inc.sh '$(FCCOMPILE)' > $@ || rm $@
625be286 933
944b8b35
FXC
934fpu-target.h: $(srcdir)/$(FPU_HOST_HEADER)
935 cp $(srcdir)/$(FPU_HOST_HEADER) $@
936
8b198102
FXC
937fpu-target.inc: fpu-target.h $(srcdir)/libgfortran.h
938 grep '^#define GFC_FPE_' < $(top_srcdir)/../gcc/fortran/libgfortran.h > $@ || true
939 grep '^#define GFC_FPE_' < $(srcdir)/libgfortran.h >> $@ || true
940
6de9cd9a
DN
941## A 'normal' build shouldn't need to regenerate these
942## so we only include them in maintainer mode
943
944if MAINTAINER_MODE
90469382 945$(i_all_c): m4/all.m4 $(I_M4_DEPS2)
7e10187c 946 $(M4) -Dfile=$@ -I$(srcdir)/m4 all.m4 > $@
6de9cd9a 947
47b99694
TB
948$(i_bessel_c): m4/bessel.m4 $(I_M4_DEPS)
949 $(M4) -Dfile=$@ -I$(srcdir)/m4 bessel.m4 > $@
950
90469382 951$(i_any_c): m4/any.m4 $(I_M4_DEPS2)
7e10187c 952 $(M4) -Dfile=$@ -I$(srcdir)/m4 any.m4 > $@
6de9cd9a 953
90469382 954$(i_count_c): m4/count.m4 $(I_M4_DEPS2)
7e10187c 955 $(M4) -Dfile=$@ -I$(srcdir)/m4 count.m4 > $@
6de9cd9a 956
1a0fd3d3 957$(i_iall_c): m4/iall.m4 $(I_M4_DEPS1)
195a95c4
TB
958 $(M4) -Dfile=$@ -I$(srcdir)/m4 iall.m4 > $@
959
1a0fd3d3 960$(i_iany_c): m4/iany.m4 $(I_M4_DEPS1)
195a95c4
TB
961 $(M4) -Dfile=$@ -I$(srcdir)/m4 iany.m4 > $@
962
1a0fd3d3 963$(i_iparity_c): m4/iparity.m4 $(I_M4_DEPS1)
195a95c4
TB
964 $(M4) -Dfile=$@ -I$(srcdir)/m4 iparity.m4 > $@
965
6de9cd9a 966$(i_maxloc0_c): m4/maxloc0.m4 $(I_M4_DEPS0)
7e10187c 967 $(M4) -Dfile=$@ -I$(srcdir)/m4 maxloc0.m4 > $@
6de9cd9a
DN
968
969$(i_maxloc1_c): m4/maxloc1.m4 $(I_M4_DEPS1)
7e10187c 970 $(M4) -Dfile=$@ -I$(srcdir)/m4 maxloc1.m4 > $@
6de9cd9a
DN
971
972$(i_maxval_c): m4/maxval.m4 $(I_M4_DEPS1)
7e10187c 973 $(M4) -Dfile=$@ -I$(srcdir)/m4 maxval.m4 > $@
6de9cd9a
DN
974
975$(i_minloc0_c): m4/minloc0.m4 $(I_M4_DEPS0)
7e10187c 976 $(M4) -Dfile=$@ -I$(srcdir)/m4 minloc0.m4 > $@
6de9cd9a
DN
977
978$(i_minloc1_c): m4/minloc1.m4 $(I_M4_DEPS1)
7e10187c 979 $(M4) -Dfile=$@ -I$(srcdir)/m4 minloc1.m4 > $@
6de9cd9a
DN
980
981$(i_minval_c): m4/minval.m4 $(I_M4_DEPS1)
7e10187c 982 $(M4) -Dfile=$@ -I$(srcdir)/m4 minval.m4 > $@
6de9cd9a
DN
983
984$(i_product_c): m4/product.m4 $(I_M4_DEPS1)
7e10187c 985 $(M4) -Dfile=$@ -I$(srcdir)/m4 product.m4 > $@
6de9cd9a
DN
986
987$(i_sum_c): m4/sum.m4 $(I_M4_DEPS1)
7e10187c 988 $(M4) -Dfile=$@ -I$(srcdir)/m4 sum.m4 > $@
6de9cd9a 989
6de9cd9a 990$(i_matmul_c): m4/matmul.m4 $(I_M4_DEPS)
7e10187c 991 $(M4) -Dfile=$@ -I$(srcdir)/m4 matmul.m4 > $@
6de9cd9a
DN
992
993$(i_matmull_c): m4/matmull.m4 $(I_M4_DEPS)
7e10187c 994 $(M4) -Dfile=$@ -I$(srcdir)/m4 matmull.m4 > $@
6de9cd9a 995
1a0fd3d3 996$(i_norm2_c): m4/norm2.m4 $(I_M4_DEPS1)
0cd0559e
TB
997 $(M4) -Dfile=$@ -I$(srcdir)/m4 norm2.m4 > $@
998
1a0fd3d3 999$(i_parity_c): m4/parity.m4 $(I_M4_DEPS1)
0cd0559e
TB
1000 $(M4) -Dfile=$@ -I$(srcdir)/m4 parity.m4 > $@
1001
6de9cd9a 1002$(i_transpose_c): m4/transpose.m4 $(I_M4_DEPS)
7e10187c 1003 $(M4) -Dfile=$@ -I$(srcdir)/m4 transpose.m4 > $@
6de9cd9a
DN
1004
1005$(i_shape_c): m4/shape.m4 $(I_M4_DEPS)
7e10187c 1006 $(M4) -Dfile=$@ -I$(srcdir)/m4 shape.m4 > $@
6de9cd9a
DN
1007
1008$(i_reshape_c): m4/reshape.m4 $(I_M4_DEPS)
7e10187c 1009 $(M4) -Dfile=$@ -I$(srcdir)/m4 reshape.m4 > $@
6de9cd9a
DN
1010
1011$(i_eoshift1_c): m4/eoshift1.m4 $(I_M4_DEPS)
7e10187c 1012 $(M4) -Dfile=$@ -I$(srcdir)/m4 eoshift1.m4 > $@
6de9cd9a
DN
1013
1014$(i_eoshift3_c): m4/eoshift3.m4 $(I_M4_DEPS)
7e10187c 1015 $(M4) -Dfile=$@ -I$(srcdir)/m4 eoshift3.m4 > $@
6de9cd9a 1016
c2b00cdc
TK
1017$(i_cshift0_c): m4/cshift0.m4 $(I_M4_DEPS)
1018 $(M4) -Dfile=$@ -I$(srcdir)/m4 cshift0.m4 > $@
1019
6de9cd9a 1020$(i_cshift1_c): m4/cshift1.m4 $(I_M4_DEPS)
7e10187c 1021 $(M4) -Dfile=$@ -I$(srcdir)/m4 cshift1.m4 > $@
6de9cd9a
DN
1022
1023$(in_pack_c): m4/in_pack.m4 $(I_M4_DEPS)
7e10187c 1024 $(M4) -Dfile=$@ -I$(srcdir)/m4 in_pack.m4 > $@
6de9cd9a
DN
1025
1026$(in_unpack_c): m4/in_unpack.m4 $(I_M4_DEPS)
7e10187c 1027 $(M4) -Dfile=$@ -I$(srcdir)/m4 in_unpack.m4 > $@
6de9cd9a
DN
1028
1029$(i_exponent_c): m4/exponent.m4 m4/mtype.m4
7e10187c 1030 $(M4) -Dfile=$@ -I$(srcdir)/m4 exponent.m4 > $@
6de9cd9a 1031
cc6d3bde 1032$(i_rrspacing_c): m4/rrspacing.m4 m4/mtype.m4
7e10187c 1033 $(M4) -Dfile=$@ -I$(srcdir)/m4 rrspacing.m4 > $@
cc6d3bde
SK
1034
1035$(i_spacing_c): m4/spacing.m4 m4/mtype.m4
7e10187c 1036 $(M4) -Dfile=$@ -I$(srcdir)/m4 spacing.m4 > $@
cc6d3bde 1037
6de9cd9a 1038$(i_fraction_c): m4/fraction.m4 m4/mtype.m4
7e10187c 1039 $(M4) -Dfile=$@ -I$(srcdir)/m4 fraction.m4 > $@
6de9cd9a
DN
1040
1041$(i_nearest_c): m4/nearest.m4 m4/mtype.m4
7e10187c 1042 $(M4) -Dfile=$@ -I$(srcdir)/m4 nearest.m4 > $@
6de9cd9a
DN
1043
1044$(i_set_exponent_c): m4/set_exponent.m4 m4/mtype.m4
7e10187c 1045 $(M4) -Dfile=$@ -I$(srcdir)/m4 set_exponent.m4 > $@
6de9cd9a 1046
5b200ac2 1047$(i_pow_c): m4/pow.m4 $(I_M4_DEPS)
7e10187c 1048 $(M4) -Dfile=$@ -I$(srcdir)/m4 pow.m4 > $@
5b200ac2 1049
3ef2513a
TK
1050$(i_pack_c): m4/pack.m4 $(I_M4_DEPS)
1051 $(M4) -Dfile=$@ -I$(srcdir)/m4 pack.m4 > $@
1052
3478bba4
TK
1053$(i_unpack_c): m4/unpack.m4 $(I_M4_DEPS)
1054 $(M4) -Dfile=$@ -I$(srcdir)/m4 unpack.m4 > $@
1055
75f2543f
TK
1056$(i_spread_c): m4/spread.m4 $(I_M4_DEPS)
1057 $(M4) -Dfile=$@ -I$(srcdir)/m4 spread.m4 > $@
1058
6de9cd9a 1059$(gfor_built_specific_src): m4/specific.m4 m4/head.m4
567c915b 1060 $(M4) -Dfile=$@ -I$(srcdir)/m4 specific.m4 > $@
6de9cd9a
DN
1061
1062$(gfor_built_specific2_src): m4/specific2.m4 m4/head.m4
567c915b 1063 $(M4) -Dfile=$@ -I$(srcdir)/m4 specific2.m4 > $@
0e7e7e6e
FXC
1064
1065$(gfor_misc_specifics): m4/misc_specifics.m4 m4/head.m4
567c915b 1066 $(M4) -Dfile=$@ -I$(srcdir)/m4 misc_specifics.m4 > $@
6de9cd9a
DN
1067## end of maintainer mode only rules
1068endif
1069
1070EXTRA_DIST = $(m4_files)