1 # Process this file with autoconf to produce a configure script.
2 # Copyright (C) 1995, 1997, 1998, 1999 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
23 AC_INIT(libF77/Version.c)
25 if test "${srcdir}" = "." ; then
26 if test "${with_target_subdir}" != "." ; then
27 topsrcdir=${with_multisrctop}../..
29 topsrcdir=${with_multisrctop}..
32 topsrcdir=${srcdir}/..
34 dnl This is needed for a multilibbed build in the source tree so
35 dnl that install-sh and config.sub get found.
36 AC_CONFIG_AUX_DIR($topsrcdir)
38 # If the language specific compiler does not exist, but the "gcc" directory
39 # does, we do not build anything. Note, $r is set by the top-level Makefile.
40 # Note that when we look for the compiler, we search both with and without
41 # extension to handle cross and canadian cross builds.
44 AC_MSG_CHECKING(if compiler $compiler_name has been built)
45 AC_CACHE_VAL(g77_cv_compiler_exists,
46 [g77_cv_compiler_exists=yes
48 if test -d "$r"/gcc; then
49 if test -f "$r"/gcc/$compiler_name \
50 || test -f "$r"/gcc/$compiler_name.exe; then
53 g77_cv_compiler_exists=no
54 echo "rm -f config.cache config.log multilib.out" > skip-this-dir
59 AC_MSG_RESULT($g77_cv_compiler_exists)
60 if test x$g77_cv_compiler_exists = xno
62 rm -f Makefile conftest* confdefs* core
66 dnl Checks for programs.
67 # For g77 we'll set CC to point at the built gcc, but this will get it into
71 dnl These should be inherited in the recursive make, but ensure they are
75 if test "$RANLIB"; then :
83 dnl Checks for header files.
84 # Sanity check for the cross-compilation case:
85 AC_CHECK_HEADER(stdio.h,:,
86 [AC_MSG_ERROR([Can't find stdio.h.
87 You must have a usable C system for the target already installed, at least
88 including headers and, preferably, the library, before you can configure
89 the G77 runtime system. If necessary, install gcc now with \`LANGUAGES=c',
90 then the target library, then build with \`LANGUAGES=f77'.])])
92 dnl Checks for g77 integer types built into gcc's C front end.
93 AC_MSG_CHECKING(for built-in g77 integer types)
94 AC_CACHE_VAL(libf2c_cv_has_g77_builtin_types,
99 __g77_ulongint g77ul;],
100 libf2c_cv_has_g77_builtin_types=yes,
101 libf2c_cv_has_g77_builtin_types=no)])
102 AC_MSG_RESULT($libf2c_cv_has_g77_builtin_types)
103 if test $libf2c_cv_has_g77_builtin_types = no; then
104 AC_MSG_ERROR([gcc doesn't define all of the built in types __g77_integer,
105 __g77_uinteger, __g77_longint, and __g77_ulongint. You may not be using
106 a new enough version of gcc, or your target may not have type sizes which
107 accommodate those types.])
110 # avoid confusion in case the `makefile's from the f2c distribution have
112 test -f libF77/makefile && mv libF77/makefile libF77/makefile.ori
113 test -f libI77/makefile && mv libI77/makefile libI77/makefile.ori
114 test -f libU77/makefile && mv libU77/makefile libU77/makefile.ori
116 # Get the version trigger filename from the toplevel
117 if [[ "${with_gcc_version_trigger+set}" = set ]]; then
118 gcc_version_trigger=$with_gcc_version_trigger
119 gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/'`
125 AC_SUBST(gcc_version)
126 AC_SUBST(gcc_version_trigger)
128 AC_SUBST(target_alias)
129 AC_CONFIG_SUBDIRS(libU77 libI77 libF77)
130 # Do Makefile first since g2c.h depends on it and shouldn't get an
131 # earlier timestamp. Of course, it does when the multilib gunk below
132 # edits Makefile, sigh; see additional touch below.
133 AC_OUTPUT(Makefile g2c.h:g2c.hin,
134 [test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
135 if test -n "$CONFIG_FILES"; then
136 if test -n "${with_target_subdir}"; then
137 # FIXME: We shouldn't need to set ac_file
139 . ${topsrcdir}/config-ml.in
140 touch g2c.h # to keep it more recent than Makefile
146 with_target_subdir=${with_target_subdir}
147 with_multisubdir=${with_multisubdir}
148 ac_configure_args="--enable-multilib ${ac_configure_args}"
149 CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
150 topsrcdir=${topsrcdir}
155 dnl comment-start: "dnl "
157 dnl comment-start-skip: "\\bdnl\\b\\s *"