1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# -*- Autotest -*-
AT_BANNER([Fortran low level compiling/preprocessing macros.])
# Copyright (C) 2000, 2001, 2003, 2008, 2009 Free Software Foundation,
# Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Since the macros which compile are required by most tests, check
# them first. But remember that looking for a compiler is even more
# primitive, so check those first.
## --------------------- ##
## Fortran 77 Compiler. ##
## --------------------- ##
AT_CHECK_MACRO([GNU Fortran 77],
[[AC_LANG(Fortran 77)
AC_LANG_COMPILER
if AC_TRY_COMMAND([$F77 --version | grep GNU >&2]); then
# Be sure to remove files which might be created by compilers that
# don't support --version.
rm -f a.exe a.out
# Has GNU in --version.
test "$G77" != yes &&
AC_MSG_ERROR([failed to recognize GNU Fortran 77 compiler])
else
# Be sure to remove files which might be created by compilers that
# don't support --version.
rm -f a.exe a.out
# Has not.
test "$G77" = yes &&
AC_MSG_ERROR([incorrectly recognized a GNU Fortran 77 compiler])
fi
]])
## ------------------ ##
## Fortran Compiler. ##
## ------------------ ##
AT_CHECK_MACRO([GNU Fortran],
[[AC_LANG(Fortran)
AC_LANG_COMPILER
# No Fortran compiler is known not to support "*.f".
AC_FC_SRCEXT([f])
# GNU Fortran is known to support freeform.
AC_FC_FREEFORM([],
[AC_MSG_WARN([Fortran does not accept free-form source])])
if test "$ac_compiler_gnu" = yes; then
case $FCFLAGS in
*-ffree-form*) ;;
*) AC_MSG_ERROR([failed to recognize GNU Fortran's -ffree-form option]);;
esac
fi
]])
|