gcc/libf2c/configure.in

209 lines
6.5 KiB
Plaintext
Raw Normal View History

# 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)
Makefile.in (install): Don't install if $(libsubdir) is empty... Sat Jun 13 03:46:40 1998 Craig Burley <burley@gnu.org> * Makefile.in (install): Don't install if $(libsubdir) is empty; issue a diagnostic saying top-level Makefile must pass it in instead, and exit. * Makefile.in (g2c.h): Rename from f2c.h. * Makefile.in, libF77/Makefile.in, libI77/Makefile.in, libU77/Makefile.in: Rewrite config and var assignment sections to be even more minimal than before, and to more clearly documented what macros are expected to be set and to what sorts of values. Eliminate CROSS and related stuff, since there's no such things as CROSS in egcs. Rename GCC_FOR_TARGET to CC throughout. * Makefile.in (stamp-libi77, stamp-libf77, stamp-libu77): Eliminate CROSS. * configure.in: Eliminate CROSS. Rename libf2c.a and f2c.h to libg2c.a and g2c.h, normalize and simplify g77/libg2c build process: * Makefile.in: Remove all stuff pertaining to installation, cleaning, and so on. Parent Makefile does all that now. Pass F2C_H_DIR, G2C_H_DIR, and GCC_H_DIR, the pathnames for the directories containing f2c.h, g2c.h, and other #include files, to subdirectory Makefiles. (stamp-libf77, stamp-libi77, stamp-libu77): Don't specify `-f Makefile' anymore, it's not needed now that subdirectory makefile's from netlib are renamed to makefile.netlib in g77 source (and to makefile.ori by configuration process, in case they're still around somehow). (stamp-libe77): Don't make libE77 dir unless it doesn't exist, if it does just delete all objects in it. Compile using $(GCC_FOR_TARGET), not $(CC). (rebuilt): Remove this and all subordinate targets, as parent Makefile now handles all that. (*clean): Remove. * configure.in (Pad_UDread, ALWAYS_FLUSH, WANT_LEAD_0): Remove these and commentary to new f2c.h file. AC_OUTPUT g2c.h instead of f2c.h. Remove old commentary regarding concatenation. * g2c.h.in: Rename from f2c.h.in, add appropriate commentary. * f2c.h: New file, a wrapper for g2c.h that does libg2c-specific stuff. * libF77/Makefile.in, libI77/Makefile.in, libU77/Makefile.in: Change $(ALL_CFLAGS) to use F2C_H_DIR, G2C_H_DIR, and GCC_H_DIR macros. Remove F2C_H macro, replace use with explicit dependencies on f2c.h and g2c.h. (*clean): Remove. From-SVN: r20507
1998-06-15 15:52:05 +08:00
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
Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. d egcs/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Depend on $(gcc_version_trigger). * configure (gcc_version): Change default initializer to empty string. (gcc_version_trigger): New variable; pass this variable down to subdir configures to enable them checking gcc's version themselves. Emit make macros for both gcc_version vars. (topsrcdir): Initialize reliably. (recursion line): Remove --with-gcc-version=${gcc_version}. egcs/gcc/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version, gcc_version_trigger): New macros. (version): Initialize from $(gcc_version). * configure.in (version): Rename to gcc_version. (gcc_version_trigger): New variable; call AC_SUBST for it and emit it into the generated config.status. * configure: Regenerate. egcs/libf2c/ChangeLog.egcs: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version_trigger): Add new macro. (config.status): Add dependency upon $(gcc_version_trigger). * configure.in (gcc_version_trigger): New variable; initialize using value from toplevel configure; add AC_SUBST for it. (gcc_version): Change initialization to use this new variable. * configure: Regenerate. egcs/libio/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * config.shared (FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Add dependency upon $(gcc_version_trigger). From-SVN: r20736
1998-06-26 10:13:51 +08:00
# 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
Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. d egcs/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Depend on $(gcc_version_trigger). * configure (gcc_version): Change default initializer to empty string. (gcc_version_trigger): New variable; pass this variable down to subdir configures to enable them checking gcc's version themselves. Emit make macros for both gcc_version vars. (topsrcdir): Initialize reliably. (recursion line): Remove --with-gcc-version=${gcc_version}. egcs/gcc/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version, gcc_version_trigger): New macros. (version): Initialize from $(gcc_version). * configure.in (version): Rename to gcc_version. (gcc_version_trigger): New variable; call AC_SUBST for it and emit it into the generated config.status. * configure: Regenerate. egcs/libf2c/ChangeLog.egcs: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version_trigger): Add new macro. (config.status): Add dependency upon $(gcc_version_trigger). * configure.in (gcc_version_trigger): New variable; initialize using value from toplevel configure; add AC_SUBST for it. (gcc_version): Change initialization to use this new variable. * configure: Regenerate. egcs/libio/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * config.shared (FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Add dependency upon $(gcc_version_trigger). From-SVN: r20736
1998-06-26 10:13:51 +08:00
gcc_version_trigger=
gcc_version=UNKNOWN
fi
Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. d egcs/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Depend on $(gcc_version_trigger). * configure (gcc_version): Change default initializer to empty string. (gcc_version_trigger): New variable; pass this variable down to subdir configures to enable them checking gcc's version themselves. Emit make macros for both gcc_version vars. (topsrcdir): Initialize reliably. (recursion line): Remove --with-gcc-version=${gcc_version}. egcs/gcc/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version, gcc_version_trigger): New macros. (version): Initialize from $(gcc_version). * configure.in (version): Rename to gcc_version. (gcc_version_trigger): New variable; call AC_SUBST for it and emit it into the generated config.status. * configure: Regenerate. egcs/libf2c/ChangeLog.egcs: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version_trigger): Add new macro. (config.status): Add dependency upon $(gcc_version_trigger). * configure.in (gcc_version_trigger): New variable; initialize using value from toplevel configure; add AC_SUBST for it. (gcc_version): Change initialization to use this new variable. * configure: Regenerate. egcs/libio/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * config.shared (FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Add dependency upon $(gcc_version_trigger). From-SVN: r20736
1998-06-26 10:13:51 +08:00
AC_SUBST(gcc_version)
Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. d egcs/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (BASE_FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Depend on $(gcc_version_trigger). * configure (gcc_version): Change default initializer to empty string. (gcc_version_trigger): New variable; pass this variable down to subdir configures to enable them checking gcc's version themselves. Emit make macros for both gcc_version vars. (topsrcdir): Initialize reliably. (recursion line): Remove --with-gcc-version=${gcc_version}. egcs/gcc/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version, gcc_version_trigger): New macros. (version): Initialize from $(gcc_version). * configure.in (version): Rename to gcc_version. (gcc_version_trigger): New variable; call AC_SUBST for it and emit it into the generated config.status. * configure: Regenerate. egcs/libf2c/ChangeLog.egcs: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * Makefile.in (gcc_version_trigger): Add new macro. (config.status): Add dependency upon $(gcc_version_trigger). * configure.in (gcc_version_trigger): New variable; initialize using value from toplevel configure; add AC_SUBST for it. (gcc_version): Change initialization to use this new variable. * configure: Regenerate. egcs/libio/ChangeLog: 1998-06-26 Manfred Hollstein <manfred@s-direktnet.de> * config.shared (FLAGS_TO_PASS): Add gcc_version_trigger. (Makefile): Add dependency upon $(gcc_version_trigger). From-SVN: r20736
1998-06-26 10:13:51 +08:00
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: