1 # Process this file with autoconf to produce a configure script.
2 # Copyright (C) 1995, 1997, 1998 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
22 AC_INIT(libF77/Version.c)
24 if test "${srcdir}" = "." ; then
25 if test "${with_target_subdir}" != "." ; then
26 topsrcdir=${with_multisrctop}../..
28 topsrcdir=${with_multisrctop}..
31 topsrcdir=${srcdir}/..
34 dnl Checks for programs.
35 # For g77 we'll set CC to point at the built gcc, but this will get it into
39 dnl These should be inherited in the recursive make, but ensure they are
43 if test "$RANLIB"; then :
51 dnl Checks for header files.
52 # Sanity check for the cross-compilation case:
53 AC_CHECK_HEADER(stdio.h,:,
54 [AC_MSG_ERROR([Can't find stdio.h.
55 You must have a usable C system for the target already installed, at least
56 including headers and, preferably, the library, before you can configure
57 the G77 runtime system. If necessary, install gcc now with \`LANGUAGES=c',
58 then the target library, then build with \`LANGUAGES=f77'.])])
60 # We have to firkle with the info in hconfig.h to figure out suitable types
61 # (via com.h). proj.h and com.h are in gcc/f/, config.h which they need
62 # is in gcc/ and the config files are in gcc/config/.
63 AC_MSG_CHECKING(f2c integer type)
65 ac_cpp="$late_ac_cpp -I../../gcc/f -I../../gcc -I../../gcc/config"
66 if test "$srcdir" != . ; then
67 ac_cpp="$ac_cpp -I$srcdir/../gcc/f -I$srcdir/../gcc -I$srcdir/../gcc/config"
69 AC_CACHE_VAL(g77_cv_sys_f2cinteger,
70 echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC
71 AC_EGREP_CPP(F2C_INTEGER=long int,
73 #define FFECOM_DETERMINE_TYPES 1
75 #if FFECOM_f2cINTEGER == FFECOM_f2ccodeLONG
77 #elif FFECOM_f2cINTEGER == FFECOM_f2ccodeINT
80 # error "Cannot find a suitable type for F2C_INTEGER"
83 g77_cv_sys_f2cinteger="long int",)
84 if test "$g77_cv_sys_f2cinteger" = ""; then
85 echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC
86 AC_EGREP_CPP(F2C_INTEGER=int,
88 #define FFECOM_DETERMINE_TYPES 1
90 #if FFECOM_f2cINTEGER == FFECOM_f2ccodeLONG
92 #elif FFECOM_f2cINTEGER == FFECOM_f2ccodeINT
95 # error "Cannot find a suitable type for F2C_INTEGER"
98 g77_cv_sys_f2cinteger=int,)
100 if test "$g77_cv_sys_f2cinteger" = ""; then
102 AC_MSG_ERROR([Can't determine type for f2c integer; config.log may help.])
105 AC_MSG_RESULT($g77_cv_sys_f2cinteger)
106 F2C_INTEGER=$g77_cv_sys_f2cinteger
108 AC_SUBST(F2C_INTEGER)
110 AC_MSG_CHECKING(f2c long int type)
112 ac_cpp="$late_ac_cpp -I../../gcc/f -I../../gcc -I../../gcc/config"
113 if test "$srcdir" != . ; then
114 ac_cpp="$ac_cpp -I$srcdir/../gcc/f -I$srcdir/../gcc -I$srcdir/../gcc/config"
116 AC_CACHE_VAL(g77_cv_sys_f2clongint,
117 echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC
118 AC_EGREP_CPP(F2C_LONGINT=long int,
120 #define FFECOM_DETERMINE_TYPES 1
122 #if FFECOM_f2cLONGINT == FFECOM_f2ccodeLONG
124 #elif FFECOM_f2cLONGINT == FFECOM_f2ccodeLONGLONG
125 F2C_LONGINT=long long int
127 # error "Cannot find a suitable type for F2C_LONGINT"
130 g77_cv_sys_f2clongint="long int",)
131 if test "$g77_cv_sys_f2clongint" = ""; then
132 echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC
133 AC_EGREP_CPP(F2C_LONGINT=long long int,
135 #define FFECOM_DETERMINE_TYPES 1
137 #if FFECOM_f2cLONGINT == FFECOM_f2ccodeLONG
139 #elif FFECOM_f2cLONGINT == FFECOM_f2ccodeLONGLONG
140 F2C_LONGINT=long long int
142 # error "Cannot find a suitable type for F2C_LONGINT"
145 g77_cv_sys_f2clongint="long long int",)
147 if test "$g77_cv_sys_f2clongint" = ""; then
149 AC_MSG_ERROR([Can't determine type for f2c long int; config.log may help.])
152 AC_MSG_RESULT($g77_cv_sys_f2clongint)
153 F2C_LONGINT=$g77_cv_sys_f2clongint
155 AC_SUBST(F2C_LONGINT)
157 # avoid confusion in case the `makefile's from the f2c distribution have
159 test -f libF77/makefile && mv libF77/makefile libF77/makefile.ori
160 test -f libI77/makefile && mv libI77/makefile libI77/makefile.ori
161 test -f libU77/makefile && mv libU77/makefile libU77/makefile.ori
163 # Get the version trigger filename from the toplevel
164 if [[ "${with_gcc_version_trigger+set}" = set ]]; then
165 gcc_version_trigger=$with_gcc_version_trigger
166 gcc_version=`sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/' < ${gcc_version_trigger}`
172 AC_SUBST(gcc_version)
173 AC_SUBST(gcc_version_trigger)
175 AC_SUBST(target_alias)
176 AC_CONFIG_SUBDIRS(libU77 libI77 libF77)
177 # Do Makefile first since g2c.h depends on it and shouldn't get an
179 AC_OUTPUT(Makefile g2c.h:g2c.hin,
180 [test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
181 if test -n "$CONFIG_FILES"; then
182 if test -n "${with_target_subdir}"; then
183 # FIXME: We shouldn't need to set ac_file
185 . ${topsrcdir}/config-ml.in
191 with_target_subdir=${with_target_subdir}
192 with_multisubdir=${with_multisubdir}
193 ac_configure_args="--enable-multilib ${ac_configure_args}"
194 CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
195 topsrcdir=${topsrcdir}
200 dnl comment-start: "dnl "
202 dnl comment-start-skip: "\\bdnl\\b\\s *"