diff options
Diffstat (limited to 'gnu/egcs/libf2c/libI77/configure.in')
-rw-r--r-- | gnu/egcs/libf2c/libI77/configure.in | 202 |
1 files changed, 202 insertions, 0 deletions
diff --git a/gnu/egcs/libf2c/libI77/configure.in b/gnu/egcs/libf2c/libI77/configure.in new file mode 100644 index 00000000000..2b3483093f4 --- /dev/null +++ b/gnu/egcs/libf2c/libI77/configure.in @@ -0,0 +1,202 @@ +# 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_PREREQ(2.12.1) +AC_INIT(ftell_.c) + +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 + +test "$AR" || AR=ar +AC_SUBST(AR) +AC_PROG_MAKE_SET + +dnl Checks for libraries. + +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'.])]) + +AC_HEADER_STDC +dnl We could do this if we didn't know we were using gcc +dnl AC_MSG_CHECKING(for prototype-savvy compiler) +dnl AC_CACHE_VAL(g77_cv_sys_proto, +dnl [AC_TRY_LINK(, +dnl dnl looks screwy because TRY_LINK expects a function body +dnl [return 0;} int foo (int * bar) {], +dnl g77_cv_sys_proto=yes, +dnl [g77_cv_sys_proto=no +dnl AC_DEFINE(KR_headers)])]) +dnl AC_MSG_RESULT($g77_cv_sys_proto) + +AC_MSG_CHECKING(for posix) +AC_CACHE_VAL(g77_cv_header_posix, + AC_EGREP_CPP(yes, + [#include <sys/types.h> +#include <unistd.h> +#ifdef _POSIX_VERSION + yes +#endif +], + g77_cv_header_posix=yes, + g77_cv_header_posix=no)) +AC_MSG_RESULT($g77_cv_header_posix) + +# We can rely on the GNU library being posix-ish. I guess checking the +# header isn't actually like checking the functions, though... +AC_MSG_CHECKING(for GNU library) +AC_CACHE_VAL(g77_cv_lib_gnu, + AC_EGREP_CPP(yes, + [#include <stdio.h> +#ifdef __GNU_LIBRARY__ + yes +#endif +], + g77_cv_lib_gnu=yes, g77_cv_lib_gnu=no)) +AC_MSG_RESULT($g77_cv_lib_gnu) + +# Apparently cygwin needs to be special-cased. +AC_MSG_CHECKING([for cyg\`win'32]) +AC_CACHE_VAL(g77_cv_sys_cygwin32, + AC_EGREP_CPP(yes, + [#ifdef __CYGWIN32__ + yes +#endif +], + g77_cv_sys_cygwin32=yes, + g77_cv_sys_cygwin32=no)) +AC_MSG_RESULT($g77_cv_sys_cygwin32) + +# ditto for mingw32. +AC_MSG_CHECKING([for mingw32]) +AC_CACHE_VAL(g77_cv_sys_mingw32, + AC_EGREP_CPP(yes, + [#ifdef __MINGW32__ + yes +#endif +], + g77_cv_sys_mingw32=yes, + g77_cv_sys_mingw32=no)) +AC_MSG_RESULT($g77_cv_sys_mingw32) + + +AC_CHECK_HEADER(fcntl.h, + test $g77_cv_header_posix = yes && AC_DEFINE(_POSIX_SOURCE), + AC_DEFINE(NO_FCNTL) AC_DEFINE(OPEN_DECL)) + +dnl Checks for typedefs, structures, and compiler characteristics. +AC_C_CONST +AC_TYPE_SIZE_T + +dnl Checks for library functions. + +# This should always succeed on unix. +# Apparently positive result on cygwin loses re. NON_UNIX_STDIO +# (as of cygwin b18). Likewise on mingw. +AC_CHECK_FUNC(fstat) +AC_MSG_CHECKING([need for NON_UNIX_STDIO]) +if test $g77_cv_sys_cygwin32 = yes \ + || test $g77_cv_sys_mingw32 = yes \ + || test $ac_cv_func_fstat = no; then + AC_MSG_RESULT(yes) + AC_DEFINE(NON_UNIX_STDIO) +else + AC_MSG_RESULT(no) +fi + +AC_CHECK_FUNCS(tempnam) + +# posix will guarantee the right behaviour for sprintf, else we can't be +# sure; HEADER_STDC wouldn't be the right check in sunos4, for instance. +# However, on my sunos4/gcc setup unistd.h leads us wrongly to believe +# we're posix-conformant, so always do the test. +AC_MSG_CHECKING(for ansi/posix sprintf result) +dnl This loses if included as an argument to AC_CACHE_VAL because the +dnl changequote doesn't take effect and the [] vanish. +dnl fixme: use cached value +AC_TRY_RUN(changequote(<<, >>)dnl + <<#include <stdio.h> + /* does sprintf return the number of chars transferred? */ + main () {char foo[2]; (sprintf(foo, "1") == 1) ? exit(0) : exit(1);} +>>changequote([, ]), + g77_cv_sys_sprintf_ansi=yes, + g77_cv_sys_sprintf_ansi=no, + g77_cv_sys_sprintf_ansi=no) +AC_CACHE_VAL(g77_cv_sys_sprintf_ansi, + g77_cv_sys_sprintf_ansi=$g77_cv_sys_sprintf_ansi) +dnl We get a misleading `(cached)' message... +AC_MSG_RESULT($g77_cv_sys_sprintf_ansi) + +# The cygwin patch takes steps to avoid defining USE_STRLEN here -- I don't +# understand why. +if test $g77_cv_sys_sprintf_ansi != yes; then + AC_DEFINE(USE_STRLEN) +fi + +# define NON_ANSI_RW_MODES on unix (can't hurt) +AC_MSG_CHECKING(NON_ANSI_RW_MODES) +AC_EGREP_CPP(yes, +[#ifdef unix + yes +#endif +#ifdef __unix + yes +#endif +#ifdef __unix__ + yes +#endif +], is_unix=yes, is_unix=no) +# NON_ANSI_RW_MODES shouldn't be necessary on cygwin for binary mounts. +if test $g77_cv_sys_cygwin32 = yes || test $g77_cv_sys_mingw32 = yes; then + AC_MSG_RESULT(no) +else + if test $is_unix = yes; then + AC_DEFINE(NON_ANSI_RW_MODES) + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + fi +fi + +# This EOF_CHAR is a misfeature on unix. +AC_DEFINE(NO_EOF_CHAR_CHECK) + +AC_DEFINE(Skip_f2c_Undefs) + +AC_OUTPUT(Makefile) + +dnl We might have configuration options to: +dnl * change unit preconnexion in err.c (f_init.c) +dnl * -DALWAYS_FLUSH +dnl * -DOMIT_BLANK_CC + +dnl Local Variables: +dnl comment-start: "dnl " +dnl comment-end: "" +dnl comment-start-skip: "\\bdnl\\b\\s *" +dnl End: |