1#							-*- Autotest -*-
2
3AT_BANNER([Fortran low level compiling/preprocessing macros.])
4
5# Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc.
6#
7# This program 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)
10# any later version.
11#
12# This program 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.
16#
17# You should have received a copy of the GNU General Public License
18# along with this program; if not, write to the Free Software
19# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
20# 02110-1301, USA.
21
22
23# Since the macros which compile are required by most tests, check
24# them first.  But remember that looking for a compiler is even more
25# primitive, so check those first.
26
27
28## --------------------- ##
29## Fortran 77 Compiler.  ##
30## --------------------- ##
31
32
33AT_CHECK_MACRO([GNU Fortran 77],
34[[AC_LANG(Fortran 77)
35AC_LANG_COMPILER
36
37if AC_TRY_COMMAND([$F77 --version | grep GNU >&2]); then
38  # Be sure to remove files which might be created by compilers that
39  # don't support --version.
40  rm -f a.exe a.out
41  # Has GNU in --version.
42  test "$G77" != yes &&
43    AC_MSG_ERROR([failed to recognize GNU Fortran 77 compiler])
44else
45  # Be sure to remove files which might be created by compilers that
46  # don't support --version.
47  rm -f a.exe a.out
48  # Has not.
49  test "$G77" = yes &&
50    AC_MSG_ERROR([incorrectly recognized a GNU Fortran 77 compiler])
51fi
52]])
53
54
55
56## ------------------ ##
57## Fortran Compiler.  ##
58## ------------------ ##
59
60
61AT_CHECK_MACRO([GNU Fortran],
62[[AC_LANG(Fortran)
63AC_LANG_COMPILER
64
65# No Fortran compiler is known not to support "*.f".
66AC_FC_SRCEXT([f])
67
68# GNU Fortran is known to support freeform.
69AC_FC_FREEFORM([],
70               [AC_MSG_WARN([Fortran does not accept free-form source])])
71if test "$ac_compiler_gnu" = yes; then
72  case $FCFLAGS in
73   *-ffree-form*) ;;
74   *) AC_MSG_ERROR([failed to recognize GNU Fortran's -ffree-form option.]);;
75  esac
76fi
77]])
78