X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Flargefile.m4;h=515625dc267897a2ef54f1efa6874722c57a150a;hb=05d4ef79c00e77a54f781355c1cf4242a4e54c4b;hp=b24c06445af514952040d86e4c9fb3e2f2050b7b;hpb=c53ad8d9e164715f07cbd67ebed1bde683164a89;p=gnulib.git diff --git a/m4/largefile.m4 b/m4/largefile.m4 index b24c06445..515625dc2 100644 --- a/m4/largefile.m4 +++ b/m4/largefile.m4 @@ -1,4 +1,4 @@ -#serial 7 +#serial 10 dnl By default, many hosts won't let programs access large files; dnl one must use special compiler options to get large-file access to work. @@ -20,19 +20,19 @@ AC_DEFUN(AC_SYS_LARGEFILE_FLAGS, ifelse($1, CFLAGS, [case "$host_os" in # HP-UX 10.20 requires -D__STDC_EXT__ with gcc 2.95.1. -changequote(, )dnl - hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*) -changequote([, ])dnl +[ hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)] if test "$GCC" = yes; then ac_cv_sys_largefile_CFLAGS=-D__STDC_EXT__ fi ;; - # IRIX 6.2 and later require cc -n32. -changequote(, )dnl - irix6.[2-9]* | irix6.1[0-9]* | irix[7-9].* | irix[1-9][0-9]*) -changequote([, ])dnl + # IRIX 6.2 and later do not support large files by default, + # so use the -n32 ABI unless the installer said otherwise. +[ irix6.[2-9]* | irix6.1[0-9]* | irix[7-9].* | irix[1-9][0-9]*)] if test "$GCC" != yes; then - ac_cv_sys_largefile_CFLAGS=-n32 + case "$CC $CFLAGS " in + *' -o32 '*|*' -n32 '*|*' -64 '*) ;; + *) ac_cv_sys_largefile_CFLAGS=-n32 ;; + esac fi esac if test "$ac_cv_sys_largefile_CFLAGS" != no; then @@ -61,17 +61,15 @@ dnl AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, CACHE-VAR, COMMENT, CODE-TO-SET-DEFAUL AC_DEFUN(AC_SYS_LARGEFILE_MACRO_VALUE, [AC_CACHE_CHECK([for $1], $2, [$2=no -changequote(, )dnl $4 for ac_flag in $ac_cv_sys_largefile_CFLAGS no; do case "$ac_flag" in -D$1) $2=1 ;; -D$1=*) - $2=`expr " $ac_flag" : '[^=]*=\(.*\)'` ;; + $2=`expr " $ac_flag" : '[[^=]]*=\(.*\)'` ;; esac done -changequote([, ])dnl ]) if test "[$]$2" != no; then AC_DEFINE_UNQUOTED([$1], [$]$2, [$3]) @@ -106,23 +104,30 @@ AC_DEFUN(AC_SYS_LARGEFILE, [Number of bits in a file offset, on hosts where this is settable.], [case "$host_os" in # HP-UX 10.20 and later - hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*) +[ hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)] ac_cv_sys_file_offset_bits=64 ;; esac]) + AC_SYS_LARGEFILE_MACRO_VALUE(_GNU_SOURCE, + ac_cv_sys_gnu_source, + [Define to make ftello visible on some hosts (e.g. glibc 2.1.3).], + [AC_TRY_COMPILE([#include ], [return !ftello;], , + [AC_TRY_COMPILE([#define _GNU_SOURCE 1 +#include ], + [return !ftello;], + ac_cv_sys_gnu_source=1)])]) AC_SYS_LARGEFILE_MACRO_VALUE(_LARGEFILE_SOURCE, ac_cv_sys_largefile_source, - [Define to make fseeko etc. visible, on some hosts.], - [case "$host_os" in - # HP-UX 10.20 and later - hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*) - ac_cv_sys_largefile_source=1 ;; - esac]) + [Define to make ftello visible on some hosts (e.g. HP-UX 10.20).], + [AC_TRY_COMPILE([#include ], [return !ftello;], , + [AC_TRY_COMPILE([#define _LARGEFILE_SOURCE 1 +#include ], [return !ftello;], + ac_cv_sys_largefile_source=1)])]) AC_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES, ac_cv_sys_large_files, [Define for large files, on AIX-style hosts.], [case "$host_os" in # AIX 4.2 and later - aix4.[2-9]* | aix4.1[0-9]* | aix[5-9].* | aix[1-9][0-9]*) +[ aix4.[2-9]* | aix4.1[0-9]* | aix[5-9].* | aix[1-9][0-9]*)] ac_cv_sys_large_files=1 ;; esac]) fi