# Process this file with autoconf to produce a configure script. # Copyright (C) 1995, 1997, 1998 Free Software Foundation, Inc. # Contributed by Dave Love (d.love@dl.ac.uk). # #This file is part of GNU Fortran. # #GNU Fortran 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 2, or (at your option) #any later version. # #GNU Fortran 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 GNU Fortran; see the file COPYING. If not, write to #the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA #02111-1307, USA. AC_INIT(libF77/Version.c) if test "${srcdir}" = "." ; then if test "${with_target_subdir}" != "." ; then topsrcdir=${with_multisrctop}../.. else topsrcdir=${with_multisrctop}.. fi else topsrcdir=${srcdir}/.. fi dnl This is needed for a multilibbed build in the source tree so dnl that install-sh and config.sub get found. AC_CONFIG_AUX_DIR($topsrcdir) dnl Checks for programs. # For g77 we'll set CC to point at the built gcc, but this will get it into # the makefiles AC_PROG_CC dnl These should be inherited in the recursive make, but ensure they are dnl defined: test "$AR" || AR=ar AC_SUBST(AR) if test "$RANLIB"; then : AC_SUBST(RANLIB) else AC_PROG_RANLIB fi AC_PROG_INSTALL AC_PROG_MAKE_SET dnl Checks for header files. # Sanity check for the cross-compilation case: AC_CHECK_HEADER(stdio.h,:, [AC_MSG_ERROR([Can't find stdio.h. You must have a usable C system for the target already installed, at least including headers and, preferably, the library, before you can configure the G77 runtime system. If necessary, install gcc now with \`LANGUAGES=c', then the target library, then build with \`LANGUAGES=f77'.])]) # We have to firkle with the info in hconfig.h to figure out suitable types # (via com.h). proj.h and com.h are in gcc/f/, config.h which they need # is in gcc/ and the config files are in gcc/config/. AC_MSG_CHECKING(f2c integer type) late_ac_cpp=$ac_cpp ac_cpp="$late_ac_cpp -I../../gcc/f -I../../gcc -I../../gcc/config" if test "$srcdir" != . ; then ac_cpp="$ac_cpp -I$srcdir/../gcc/f -I$srcdir/../gcc -I$srcdir/../gcc/config" fi AC_CACHE_VAL(g77_cv_sys_f2cinteger, echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC AC_EGREP_CPP(F2C_INTEGER=long int, [#include "proj.h" #define FFECOM_DETERMINE_TYPES 1 #include "com.h" #if FFECOM_f2cINTEGER == FFECOM_f2ccodeLONG F2C_INTEGER=long int #elif FFECOM_f2cINTEGER == FFECOM_f2ccodeINT F2C_INTEGER=int #else # error "Cannot find a suitable type for F2C_INTEGER" #endif ], g77_cv_sys_f2cinteger="long int",) if test "$g77_cv_sys_f2cinteger" = ""; then echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC AC_EGREP_CPP(F2C_INTEGER=int, [#include "proj.h" #define FFECOM_DETERMINE_TYPES 1 #include "com.h" #if FFECOM_f2cINTEGER == FFECOM_f2ccodeLONG F2C_INTEGER=long int #elif FFECOM_f2cINTEGER == FFECOM_f2ccodeINT F2C_INTEGER=int #else # error "Cannot find a suitable type for F2C_INTEGER" #endif ], g77_cv_sys_f2cinteger=int,) fi if test "$g77_cv_sys_f2cinteger" = ""; then AC_MSG_RESULT("") AC_MSG_ERROR([Can't determine type for f2c integer; config.log may help.]) fi ) AC_MSG_RESULT($g77_cv_sys_f2cinteger) F2C_INTEGER=$g77_cv_sys_f2cinteger ac_cpp=$late_ac_cpp AC_SUBST(F2C_INTEGER) AC_MSG_CHECKING(f2c long int type) late_ac_cpp=$ac_cpp ac_cpp="$late_ac_cpp -I../../gcc/f -I../../gcc -I../../gcc/config" if test "$srcdir" != . ; then ac_cpp="$ac_cpp -I$srcdir/../gcc/f -I$srcdir/../gcc -I$srcdir/../gcc/config" fi AC_CACHE_VAL(g77_cv_sys_f2clongint, echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC AC_EGREP_CPP(F2C_LONGINT=long int, [#include "proj.h" #define FFECOM_DETERMINE_TYPES 1 #include "com.h" #if FFECOM_f2cLONGINT == FFECOM_f2ccodeLONG F2C_LONGINT=long int #elif FFECOM_f2cLONGINT == FFECOM_f2ccodeLONGLONG F2C_LONGINT=long long int #else # error "Cannot find a suitable type for F2C_LONGINT" #endif ], g77_cv_sys_f2clongint="long int",) if test "$g77_cv_sys_f2clongint" = ""; then echo "configure:__oline__: using $ac_cpp" >&AC_FD_CC AC_EGREP_CPP(F2C_LONGINT=long long int, [#include "proj.h" #define FFECOM_DETERMINE_TYPES 1 #include "com.h" #if FFECOM_f2cLONGINT == FFECOM_f2ccodeLONG F2C_LONGINT=long int #elif FFECOM_f2cLONGINT == FFECOM_f2ccodeLONGLONG F2C_LONGINT=long long int #else # error "Cannot find a suitable type for F2C_LONGINT" #endif ], g77_cv_sys_f2clongint="long long int",) fi if test "$g77_cv_sys_f2clongint" = ""; then AC_MSG_RESULT("") AC_MSG_ERROR([Can't determine type for f2c long int; config.log may help.]) fi ) AC_MSG_RESULT($g77_cv_sys_f2clongint) F2C_LONGINT=$g77_cv_sys_f2clongint ac_cpp=$late_ac_cpp AC_SUBST(F2C_LONGINT) # avoid confusion in case the `makefile's from the f2c distribution have # got put here test -f libF77/makefile && mv libF77/makefile libF77/makefile.ori test -f libI77/makefile && mv libI77/makefile libI77/makefile.ori test -f libU77/makefile && mv libU77/makefile libU77/makefile.ori # Get the version trigger filename from the toplevel if [[ "${with_gcc_version_trigger+set}" = set ]]; then gcc_version_trigger=$with_gcc_version_trigger gcc_version=`sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/' < ${gcc_version_trigger}` else gcc_version_trigger= gcc_version=UNKNOWN fi AC_SUBST(gcc_version) AC_SUBST(gcc_version_trigger) AC_CANONICAL_SYSTEM AC_SUBST(target_alias) AC_CONFIG_SUBDIRS(libU77 libI77 libF77) # Do Makefile first since g2c.h depends on it and shouldn't get an # earlier timestamp. Of course, it does when the multilib gunk below # edits Makefile, sigh; see additional touch below. AC_OUTPUT(Makefile g2c.h:g2c.hin, [test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h if test -n "$CONFIG_FILES"; then if test -n "${with_target_subdir}"; then # FIXME: We shouldn't need to set ac_file ac_file=Makefile . ${topsrcdir}/config-ml.in touch g2c.h # to keep it more recent than Makefile fi fi], srcdir=${srcdir} host=${host} target=${target} with_target_subdir=${with_target_subdir} with_multisubdir=${with_multisubdir} ac_configure_args="--enable-multilib ${ac_configure_args}" CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} topsrcdir=${topsrcdir} ) dnl Local Variables: dnl comment-start: "dnl " dnl comment-end: "" dnl comment-start-skip: "\\bdnl\\b\\s *" dnl End: