X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/c4de53373c059dba8933ed1fed32f90a8ff2d0fb..3f844dc6388483e132bbfbcecd46774cdd62c055:/Configure diff --git a/Configure b/Configure index f984117..acea1c1 100755 --- a/Configure +++ b/Configure @@ -28,7 +28,7 @@ # Porting/pumpkin.pod. # Generated using [metaconfig 3.5 PL0] -# (with additional metaconfig patches by perlbug@perl.org) +# with additional metaconfig patches from https://github.com/Perl/metaconfig cat >c1$$ <&4 @@ -2422,7 +2401,7 @@ Much effort has been expended to ensure that this shell script will run on any Unix system. If despite that it blows up on yours, your best bet is to edit Configure and run it again. If you can't run Configure for some reason, you'll have to generate a config.sh file by hand. Whatever problems you -have, let me (perlbug@perl.org) know how I blew it. +have, let me (https://github.com/Perl/perl5/issues) know how I blew it. This installation script affects things in two ways: @@ -3391,7 +3370,7 @@ EOM (cd $src/hints; ls -C *.sh) | $sed 's/\.sh/ /g' >&4 dflt='' : Half the following guesses are probably wrong... If you have better - : tests or hints, please send them to perlbug@perl.org + : tests or hints, please send them to https://github.com/Perl/perl5/issues : The metaconfig authors would also appreciate a copy... $test -f /irix && osname=irix $test -f /xenix && osname=sco_xenix @@ -3527,6 +3506,9 @@ EOM ;; MiNT) osname=mint ;; + minix) osname=minix + osvers=`$uname -r` + ;; netbsd*) osname=netbsd osvers="$3" ;; @@ -3538,8 +3520,8 @@ EOM ;; nonstop-ux) osname=nonstopux ;; openbsd) osname=openbsd - osvers="$3" - ;; + osvers="$3" + ;; os2) osname=os2 osvers="$4" ;; @@ -4190,14 +4172,9 @@ EOSC : determine root of directory hierarchy where package will be installed. case "$prefix" in -'') - dflt=`./loc . /usr/local /usr/local /local /opt /usr` - ;; -*?/) - dflt=`echo "$prefix" | sed 's/.$//'` +'') dflt=`./loc . /usr/local /usr/local /local /opt /usr` ;; -*) - dflt="$prefix" +*) dflt="$prefix" ;; esac $cat <try.c for incdir in $locincpth; do warn=`$cc $ccflags -I$incdir -c try.c 2>&1 | \ @@ -5238,7 +5224,7 @@ EOM rp='Try to use long doubles if available?' . ./myread case "$ans" in -y|Y) val="$define" ;; +y|Y) val="$define" ;; *) val="$undef" ;; esac set uselongdouble @@ -5483,13 +5469,13 @@ fi case "$hint" in default|recommended) case "$gccversion" in - 1*) dflt="$dflt -fpcc-struct-return" ;; + 1.*) dflt="$dflt -fpcc-struct-return" ;; esac case "$optimize:$DEBUGGING" in *-g*:old) dflt="$dflt -DDEBUGGING";; esac case "$gccversion" in - 2*) if $test -d /etc/conf/kconfig.d && + 2.*) if $test -d /etc/conf/kconfig.d && $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1 then # Interactive Systems (ISC) POSIX mode. @@ -5498,7 +5484,7 @@ default|recommended) ;; esac case "$gccversion" in - 1*) ;; + 1.*) ;; 2.[0-8]*) ;; ?*) set strict-aliasing -fno-strict-aliasing eval $checkccflag @@ -5616,7 +5602,7 @@ case "$cppflags" in ;; esac case "$gccversion" in -1*) cppflags="$cppflags -D__GNUC__" +1.*) cppflags="$cppflags -D__GNUC__" esac case "$mips_type" in '');; @@ -5802,7 +5788,7 @@ compile=' mc_file=$1; shift; case "$usedevel" in $define|true|[yY]*) if $test ! -f "${mc_file}.c"; then -echo "Internal Configure script bug - compiler test file ${mc_file}.c is missing. Please report this to perlbug@perl.org" >&4; +echo "Internal Configure script bug - compiler test file ${mc_file}.c is missing. Please report this to https://github.com/Perl/perl5/issues" >&4; exit 1; fi; esac; @@ -5811,7 +5797,108 @@ $cc -o ${mc_file} $optimize $ccflags $ldflags $* ${mc_file}.c $libs > /dev/null compile_ok=' mc_file=$1; shift; -$cc -o ${mc_file} $optimize $ccflags $ldflags $* ${mc_file}.c $libs;' +$cc -o ${mc_file} $optimize $ccflags $ldflags $* ${mc_file}.c $libs > /dev/null 2>&1;' + +: stub, used only to satisfy other units +i_stdlib='define' + +: check for lengths of integral types +echo " " +case "$intsize" in +'') + echo "Checking to see how big your integers are..." >&4 + $cat >try.c < +#$i_stdlib I_STDLIB +#ifdef I_STDLIB +#include +#endif +int main() +{ + printf("intsize=%d;\n", (int)sizeof(int)); + printf("longsize=%d;\n", (int)sizeof(long)); + printf("shortsize=%d;\n", (int)sizeof(short)); + exit(0); +} +EOCP + set try + if eval $compile_ok && $run ./try > /dev/null; then + eval `$run ./try` + echo "Your integers are $intsize bytes long." + echo "Your long integers are $longsize bytes long." + echo "Your short integers are $shortsize bytes long." + else + $cat >&4 <&4 +echo 'int main() { long long x = 7; return 0; }' > try.c +set try +if eval $compile; then + val="$define" + echo "You have long long." +else + val="$undef" + echo "You do not have long long." +fi +$rm_try +set d_longlong +eval $setvar + +: check for length of long long +case "${d_longlong}${longlongsize}" in +$define) + echo " " + echo "Checking to see how big your long longs are..." >&4 + $cat >try.c <<'EOCP' +#include +int main() +{ + printf("%d\n", (int)sizeof(long long)); + return(0); +} +EOCP + set try + if eval $compile_ok; then + longlongsize=`$run ./try` + echo "Your long longs are $longlongsize bytes long." + else + dflt='8' + echo " " + echo "(I can't seem to compile the test program. Guessing...)" + rp="What is the size of a long long (in bytes)?" + . ./myread + longlongsize="$ans" + fi + if $test "X$longsize" = "X$longlongsize"; then + echo "(That isn't any different from an ordinary long.)" + fi + ;; +esac +$rm_try : determine filename position in cpp output echo " " @@ -5925,108 +6012,6 @@ do set $yyy; var=$2; eval "was=\$$2"; set $yyy; shift; shift; yyy=$@; done' -: see if stdlib is available -set stdlib.h i_stdlib -eval $inhdr - -: check for lengths of integral types -echo " " -case "$intsize" in -'') - echo "Checking to see how big your integers are..." >&4 - $cat >try.c < -#$i_stdlib I_STDLIB -#ifdef I_STDLIB -#include -#endif -int main() -{ - printf("intsize=%d;\n", (int)sizeof(int)); - printf("longsize=%d;\n", (int)sizeof(long)); - printf("shortsize=%d;\n", (int)sizeof(short)); - exit(0); -} -EOCP - set try - if eval $compile_ok && $run ./try > /dev/null; then - eval `$run ./try` - echo "Your integers are $intsize bytes long." - echo "Your long integers are $longsize bytes long." - echo "Your short integers are $shortsize bytes long." - else - $cat >&4 <&4 -echo 'int main() { long long x = 7; return 0; }' > try.c -set try -if eval $compile; then - val="$define" - echo "You have long long." -else - val="$undef" - echo "You do not have long long." -fi -$rm_try -set d_longlong -eval $setvar - -: check for length of long long -case "${d_longlong}${longlongsize}" in -$define) - echo " " - echo "Checking to see how big your long longs are..." >&4 - $cat >try.c <<'EOCP' -#include -int main() -{ - printf("%d\n", (int)sizeof(long long)); - return(0); -} -EOCP - set try - if eval $compile_ok; then - longlongsize=`$run ./try` - echo "Your long longs are $longlongsize bytes long." - else - dflt='8' - echo " " - echo "(I can't seem to compile the test program. Guessing...)" - rp="What is the size of a long long (in bytes)?" - . ./myread - longlongsize="$ans" - fi - if $test "X$longsize" = "X$longlongsize"; then - echo "(That isn't any different from an ordinary long.)" - fi - ;; -esac -$rm_try - : see if inttypes.h is available : we want a real compile instead of Inhdr because some systems : have an inttypes.h which includes non-existent headers @@ -6922,10 +6907,6 @@ EOCP esac $rm_try -: see if this is a float.h system -set float.h i_float -eval $inhdr - : check for long doubles echo " " echo "Checking to see if you have long double..." >&4 @@ -6984,13 +6965,10 @@ $echo "Checking the kind of long doubles you have..." >&4 case "$d_longdbl" in define) $cat <try.c -#$i_float I_FLOAT #$i_stdlib I_STDLIB #define LONGDBLSIZE $longdblsize #define DOUBLESIZE $doublesize -#ifdef I_FLOAT #include -#endif #ifdef I_STDLIB #include #endif @@ -7285,7 +7263,7 @@ prefixit='case "$3" in none) eval "tp=\"\$$2\""; case "$tp" in - ""|" ") eval "$1=\"\$$2\"";; + ""|" "|none) eval "$1=\"\$$2\"";; *) eval "$1=";; esac;; esac;; @@ -7834,7 +7812,6 @@ EOM ;; esac - : determine whether to use malloc wrapping echo " " case "$usemallocwrap" in @@ -8123,52 +8100,6 @@ esac set d_perl_otherlibdirs eval $setvar -: Cruising for prototypes -echo " " -echo "Checking out function prototypes..." >&4 -$cat >prototype.c < -#endif -int main(int argc, char *argv[]) { - exit(0);} -EOCP -if $cc $ccflags -c prototype.c >prototype.out 2>&1 ; then - echo "Your C compiler appears to support function prototypes." - val="$define" -else - echo "Your C compiler doesn't seem to understand function prototypes." - val="$undef" -fi -set prototype -eval $setvar -$rm -f prototype* - -: Check if ansi2knr is required -case "$prototype" in -"$define") ;; -*) ansi2knr='ansi2knr' - echo " " - cat <&4 - -$me: FATAL ERROR: -This version of $package can only be compiled by a compiler that -understands function prototypes. Unfortunately, your C compiler - $cc $ccflags -doesn't seem to understand them. Sorry about that. - -If GNU cc is available for your system, perhaps you could try that instead. - -Eventually, we hope to support building Perl with pre-ANSI compilers. -If you would like to help in that effort, please contact . - -Aborting Configure now. -EOM - exit 2 - ;; -esac - : DTrace support dflt_dtrace='/usr/sbin/dtrace' $test -x /usr/bin/dtrace && dflt_dtrace='/usr/bin/dtrace' @@ -8186,6 +8117,10 @@ while $test 1 ; do $define|true|[yY]*) dflt='y' ;; + $undef|false|[nN]*) + dflt='n' + dflt_dtrace="" + ;; ?*) dflt='y' dflt_dtrace=$usedtrace @@ -8622,7 +8557,7 @@ EOM if $test "X$sysroot" != X; then case "$gccversion" in '') ;; - *) dflt="$dflt --sysroot $sysroot" ;; + *) dflt="$dflt --sysroot=$sysroot" ;; esac fi @@ -8849,7 +8784,7 @@ case "$shrpdir" in *) $cat >&4 <$first) 2>/dev/null; then echo 'You cannot have filenames longer than 14 characters. Sigh.' >&4 val="$undef" else - echo 'You can have filenames longer than 14 characters.'>&4 - val="$define" + echo 'You can have filenames longer than 14 characters.'>&4 + val="$define" fi else $cat <<'EOM' @@ -9290,7 +9225,7 @@ case "$myhostname" in $test -s hosts } || { test "X$hostcat" != "X" && - $hostcat | $sed -n -e "s/[ ]*#.*//; s/\$/ / + $hostcat | $sed -n -e "s/[ ]*#.*//; s/\$/ / /[ ]$myhostname[ . ]/p" > hosts } tmp_re="[ . ]" @@ -9323,7 +9258,7 @@ case "$myhostname" in .) dflt=.`$sed -n -e 's/ / /g' \ -e 's/^domain *\([^ ]*\).*/\1/p' $tans \ -e 1q 2>/dev/null` - ;; + ;; esac fi ;; @@ -9683,16 +9618,12 @@ prefixvar=sitescript set backtrace d_backtrace eval $inlibc -: add flags if using c backtrace +: Check if C backtrace is actually supported. case "$usecbacktrace" in "") usecbacktrace=$undef ;; [yY]*|true|$define) case "$d_backtrace" in [yY]*|true|$define) - case " $ccflags " in - *" -DUSE_C_BACKTRACE "*) ;; # Already there. - *) ccflags="$ccflags -DUSE_C_BACKTRACE -g" ;; - esac ;; *) echo "This system does not support backtrace" >&4 @@ -9732,7 +9663,6 @@ esac set usefaststdio eval $setvar - : define an is-a-typedef? function typedef='type=$1; var=$2; def=$3; shift; shift; shift; inclist=$@; case "$inclist" in @@ -9895,8 +9825,8 @@ EOM rp='Try to understand large files, if available?' . ./myread case "$ans" in - y|Y) val="$define" ;; - *) val="$undef" ;; + y|Y) val="$define" ;; + *) val="$undef" ;; esac ;; esac @@ -10137,46 +10067,6 @@ esac prefixvar=vendorscript . ./installprefix -: script used to emit important warnings -cat >warn <msg -else - cat >msg -fi -echo "*** WARNING:" >&4 -sed -e 's/^/*** /' &4 -echo "*** " >&4 -cat msg >>config.msg -echo " " >>config.msg -rm -f msg -EOS -chmod +x warn -$eunicefix warn - -: see which of string.h or strings.h is needed -echo " " -strings=`./findhdr string.h` -if $test "$strings" && $test -r "$strings"; then - echo "Using instead of ." >&4 - val="$define" -else - val="$undef" - strings=`./findhdr strings.h` - if $test "$strings" && $test -r "$strings"; then - echo "Using instead of ." >&4 - else - ./warn "No string header found -- You'll surely have problems." - fi -fi -set i_string -eval $setvar -case "$i_string" in -"$undef") strings=`./findhdr strings.h`;; -*) strings=`./findhdr string.h`;; -esac - : see if qgcvt exists set qgcvt d_qgcvt eval $inlibc @@ -10495,15 +10385,15 @@ esac $cat >>try.c < #endif -#$i_string I_STRING -#ifdef I_STRING -# include -#else -# include -#endif +#include -int checkit(char *expect, char *got) +void checkit(const char *expect, char *got) { if (strcmp(expect, got)) { printf("%s oddity: Expected %s, got %s\n", @@ -10689,6 +10574,7 @@ for xxx_convert in $xxx_list; do fi else echo "$xxx_convert NOT found." >&4 + xxx_convert='' fi done @@ -10719,6 +10605,10 @@ $rm_try set fwalk d__fwalk eval $inlibc +: see if accept4 exists +set accept4 d_accept4 +eval $inlibc + : Initialize h_fcntl h_fcntl=false @@ -10817,7 +10707,6 @@ $startsh cc="$cc" optimize="$optimize" ccflags="$ccflags" -prototype="$prototype" define="$define" rm_try="$rm_try" usethreads=$usethreads @@ -10845,13 +10734,8 @@ while test $# -ge 2; do fi shift 2 done -test "$prototype" = "$define" && echo '#define CAN_PROTOTYPE' >> try.c cat >> try.c <<'EOCP' -#ifdef CAN_PROTOTYPE #define _(args) args -#else -#define _(args) () -#endif EOCP echo "$foo" >> try.c echo 'int no_real_function_has_this_name _((void)) { return 0; }' >> try.c @@ -10868,6 +10752,7 @@ hasproto='varname=$1; func=$2; shift; shift; while $test $# -ge 2; do case "$1" in $define) echo "#include <$2>";; + literal) echo "$2" ;; esac ; shift 2; done > try.c; @@ -10910,16 +10795,15 @@ set $varname; eval $setvar; $rm_try' -: see if we should include time.h, sys/time.h, or both +: see if we should include sys/time.h echo " " +i_time='define' if test "X$timeincl" = X; then - echo "Testing to see if we should include , or both." >&4 + echo "Testing to see if we should include ." >&4 $echo $n "I'm now running the test program...$c" $cat >try.c < -#ifdef I_TIME #include -#endif #ifdef I_SYSTIME #ifdef SYSTIMEKERNEL #define KERNEL @@ -10956,13 +10840,12 @@ EOCP sysselect='' for s_timeval in '-DS_TIMEVAL' ''; do for i_systimek in '' '-DSYSTIMEKERNEL'; do - for i_time in '' '-DI_TIME'; do for i_systime in '-DI_SYSTIME' ''; do case "$flags" in '') $echo $n ".$c" - set try $i_time $i_systime $i_systimek $sysselect $s_timeval $s_timezone + set try $i_systime $i_systimek $sysselect $s_timeval $s_timezone if eval $compile; then - set X $i_time $i_systime $i_systimek $sysselect $s_timeval + set X $i_systime $i_systimek $sysselect $s_timeval shift flags="$*" echo " " @@ -10974,7 +10857,6 @@ EOCP done done done - done timeincl='' echo " " case "$flags" in @@ -10984,12 +10866,6 @@ EOCP *) i_systimek="$undef";; esac case "$flags" in - *I_TIME*) i_time="$define" - timeincl=`./findhdr time.h`" $timeincl" - echo "We'll include ." >&4;; - *) i_time="$undef";; - esac - case "$flags" in *I_SYSTIME*) i_systime="$define" timeincl=`./findhdr sys/time.h`" $timeincl" echo "We'll include ." >&4;; @@ -11064,7 +10940,7 @@ case "$d_asctime_r" in esac case "$asctime_r_proto" in ''|0) d_asctime_r=undef - asctime_r_proto=0 + asctime_r_proto=0 echo "Disabling asctime_r, cannot determine prototype." >&4 ;; * ) case "$asctime_r_proto" in REENTRANT_PROTO*) ;; @@ -11141,8 +11017,15 @@ $cat >attrib.c < #endif +#$i_inttypes I_INTTYPES +#ifdef I_INTTYPES +#include +#endif +#ifndef INTPTR_MAX +#define intptr_t int +#endif int null_printf (char* pat,...) __attribute__((__format__(__printf__,1,2))); -int null_printf (char* pat,...) { return (int)pat; } +int null_printf (char* pat,...) { return (int)(intptr_t)pat; } int main () { exit(null_printf(NULL)); } EOCP if $cc $ccflags -o attrib attrib.c >attrib.out 2>&1 ; then @@ -11369,13 +11252,33 @@ set d_attribute_warn_unused_result eval $setvar $rm -f attrib* -: see if bcmp exists -set bcmp d_bcmp -eval $inlibc - -: see if bcopy exists -set bcopy d_bcopy -eval $inlibc +: Look for GCC-style attribute always_inline +case "$d_attribute_always_inline" in +'') +echo " " +echo "Checking whether your compiler can handle __attribute__((always_inline)) ..." >&4 +$cat >attrib.c <<'EOCP' +#include +static __inline__ __attribute__((always_inline)) int I_will_always_be_inlined(void); +EOCP +if $cc $ccflags -c attrib.c >attrib.out 2>&1 ; then + if $contains 'warning' attrib.out >/dev/null 2>&1; then + echo "Your C compiler doesn't support __attribute__((always_inline))." + val="$undef" + else + echo "Your C compiler supports __attribute__((always_inline))." + val="$define" + fi +else + echo "Your C compiler doesn't seem to understand __attribute__ at all." + val="$undef" +fi +;; +*) val="$d_attribute_always_inline" ;; +esac +set d_attribute_always_inline +eval $setvar +$rm -f attrib* : see if getpgrp exists set getpgrp d_getpgrp @@ -11386,6 +11289,7 @@ case "$d_getpgrp" in echo " " echo "Checking to see which flavor of getpgrp is in use..." $cat >try.c < #$i_unistd I_UNISTD #include #ifdef I_UNISTD @@ -11452,6 +11356,7 @@ case "$d_setpgrp" in echo " " echo "Checking to see which flavor of setpgrp is in use..." $cat >try.c < #$i_unistd I_UNISTD #include #ifdef I_UNISTD @@ -11687,124 +11592,9 @@ set d_builtin_expect eval $setvar $rm_try -: see if bzero exists -set bzero d_bzero -eval $inlibc - -: see if stdarg is available -echo " " -if $test `./findhdr stdarg.h`; then - echo " found." >&4 - valstd="$define" -else - echo " NOT found." >&4 - valstd="$undef" -fi - -: see if varargs is available -echo " " -if $test `./findhdr varargs.h`; then - echo " found." >&4 -else - echo " NOT found, but that's ok (I hope)." >&4 -fi - -: set up the varargs testing programs -$cat > varargs.c < -#endif -#ifdef I_VARARGS -#include -#endif - -#ifdef I_STDARG -int f(char *p, ...) -#else -int f(va_alist) -va_dcl -#endif -{ - va_list ap; -#ifndef I_STDARG - char *p; -#endif -#ifdef I_STDARG - va_start(ap,p); -#else - va_start(ap); - p = va_arg(ap, char *); -#endif - va_end(ap); - return 0; -} -EOP -$cat > varargs </dev/null 2>&1; then - echo "true" -else - echo "false" -fi -$rm -f varargs$_o -EOP -chmod +x varargs - -: now check which varargs header should be included -echo " " -i_varhdr='' -val='' -case "$valstd" in -"$define") - if `./varargs I_STDARG`; then - val='stdarg.h' - elif `./varargs I_VARARGS`; then - val='varargs.h' - fi - ;; -*) - if `./varargs I_VARARGS`; then - val='varargs.h' - fi - ;; -esac -case "$val" in -'') - echo " " - echo "*** WHOA THERE!!! ***" >&4 - echo " Your C compiler \"$cc\" doesn't seem to support stdarg or varargs!" >&4 - case "$knowitall" in - '') - echo " I'm giving up; maybe you can try again with a different compiler?" >&4 - exit 1 - ;; - esac -echo "I could not find the definition for va_dcl... You have problems..." >&4 - val="$undef"; set i_stdarg; eval $setvar - val="$undef"; set i_varargs; eval $setvar - ;; -*) - set i_varhdr - eval $setvar - case "$i_varhdr" in - stdarg.h) - val="$define"; set i_stdarg; eval $setvar - val="$undef"; set i_varargs; eval $setvar - ;; - varargs.h) - val="$undef"; set i_stdarg; eval $setvar - val="$define"; set i_varargs; eval $setvar - ;; - esac - echo "We'll include <$i_varhdr> to get va_dcl definition." >&4;; -esac -$rm -f varargs* - : see if the Compiler supports C99 variadic macros -case "$i_stdarg$i_stdlib" in - "$define$define") - echo "You have and , so checking for C99 variadic macros." >&4 - $cat >try.c <&4 +$cat >try.c < #include @@ -11817,29 +11607,23 @@ int main() { return 0; } EOCP - set try - if eval $compile && $run ./try 2>&1 >/dev/null; then - case "`$run ./try`" in - "123 456 789") - echo "You have C99 variadic macros." >&4 - d_c99_variadic_macros="$define" - ;; - *) - echo "You don't have functional C99 variadic macros." >&4 - d_c99_variadic_macros="$undef" - ;; - esac - else - echo "I couldn't compile and run the test program, so I assume that you don't have functional C99 variadic macros." >&4 +set try +if eval $compile && $run ./try 2>&1 >/dev/null; then + case "`$run ./try`" in + "123 456 789") + echo "You have C99 variadic macros." >&4 + d_c99_variadic_macros="$define" + ;; + *) + echo "You don't have functional C99 variadic macros." >&4 d_c99_variadic_macros="$undef" - fi - $rm_try - ;; - *) - echo "You don't have and , so not checking for C99 variadic macros." >&4 + ;; + esac +else + echo "I couldn't compile and run the test program, so I assume that you don't have functional C99 variadic macros." >&4 d_c99_variadic_macros="$undef" - ;; -esac +fi +$rm_try : see if signal is declared as pointer to function returning int or void echo " " @@ -12052,87 +11836,6 @@ $rm_try set cbrt d_cbrt eval $inlibc -: see if vprintf exists -echo " " -if set vprintf val -f d_vprintf; eval $csym; $val; then - echo 'vprintf() found.' >&4 - val="$define" - $cat >try.c < -#else /* I_VARARGS */ -# include -#endif - -#ifdef I_UNISTD -# include -#endif - -#ifdef I_STDLIB -# include -#endif - -#include /* vsprintf prototype */ - -#ifdef I_STDARG -void xxx(int n, ...) -{ - va_list args; - char buf[10]; - va_start(args, n); - exit((unsigned long)vsprintf(buf,"%s",args) > 10L); -} -int main() { xxx(1, "foo"); } - -#else /* I_VARARGS */ - -xxx(va_alist) -va_dcl -{ - va_list args; - char buf[10]; - va_start(args); - exit((unsigned long)vsprintf(buf,"%s",args) > 10L); -} -int main() { xxx("foo"); } - -#endif - -EOF - set try - if eval $compile_ok; then - if $run ./try; then - echo "Your vsprintf() returns (int)." >&4 - val2="$undef" - else - echo "Your vsprintf() returns (char*)." >&4 - val2="$define" - fi - else - echo 'I am unable to compile the vsprintf() test program.' >&4 - # We shouldn't get here. If we do, assume the standard signature, - # not the old BSD one. - echo 'Guessing that vsprintf() returns (int).' >&4 - val2="$undef" - fi -else - echo 'vprintf() NOT found.' >&4 - val="$undef" - val2="$undef" -fi -$rm_try -set d_vprintf -eval $setvar -val=$val2 -set d_charvspr -eval $setvar - : see if chown exists set chown d_chown eval $inlibc @@ -12394,28 +12097,6 @@ case "$d_cmsghdr_s" in *) echo "No, it doesn't." ;; esac - -: check for const keyword -echo " " -echo 'Checking to see if your C compiler knows about "const"...' >&4 -$cat >const.c <<'EOCP' -typedef struct spug { int drokk; } spug; -int main() -{ - const char *foo; - const spug y = { 0 }; -} -EOCP -if $cc -c $ccflags const.c >/dev/null 2>&1 ; then - val="$define" - echo "Yup, it does." -else - val="$undef" - echo "Nope, it doesn't." -fi -set d_const -eval $setvar - : see if copysign exists set copysign d_copysign eval $inlibc @@ -12491,7 +12172,7 @@ case "$d_crypt_r" in esac case "$crypt_r_proto" in ''|0) d_crypt_r=undef - crypt_r_proto=0 + crypt_r_proto=0 echo "Disabling crypt_r, cannot determine prototype." >&4 ;; * ) case "$crypt_r_proto" in REENTRANT_PROTO*) ;; @@ -12548,7 +12229,7 @@ case "$d_ctermid_r" in esac case "$ctermid_r_proto" in ''|0) d_ctermid_r=undef - ctermid_r_proto=0 + ctermid_r_proto=0 echo "Disabling ctermid_r, cannot determine prototype." >&4 ;; * ) case "$ctermid_r_proto" in REENTRANT_PROTO*) ;; @@ -12601,7 +12282,7 @@ case "$d_ctime_r" in esac case "$ctime_r_proto" in ''|0) d_ctime_r=undef - ctime_r_proto=0 + ctime_r_proto=0 echo "Disabling ctime_r, cannot determine prototype." >&4 ;; * ) case "$ctime_r_proto" in REENTRANT_PROTO*) ;; @@ -12626,37 +12307,6 @@ esac set cuserid d_cuserid eval $inlibc -: see if this is a limits.h system -set limits.h i_limits -eval $inhdr - -: See if number of significant digits in a double precision number is known -echo " " -$cat >dbl_dig.c < -#endif -#ifdef I_FLOAT -#include -#endif -#ifdef DBL_DIG -printf("Contains DBL_DIG"); -#endif -EOM -$cppstdin $cppflags $cppminus < dbl_dig.c >dbl_dig.E 2>/dev/null -if $contains 'DBL_DIG' dbl_dig.E >/dev/null 2>&1; then - echo "DBL_DIG found." >&4 - val="$define" -else - echo "DBL_DIG NOT found." >&4 - val="$undef" -fi -$rm -f dbl_dig.? -set d_dbl_dig -eval $setvar - : see if dbm.h is available : see if dbmclose exists set dbmclose d_dbmclose @@ -12829,14 +12479,10 @@ $cat >dirfd.c < #else #ifdef I_SYS_DIR -#ifdef hp9000s500 -#include /* may be wrong in the future */ -#else #include #endif #endif #endif -#endif int main() { DIR *dirp = opendir("."); if (dirfd(dirp) >= 0) @@ -13004,7 +12650,7 @@ case "$d_drand48_r" in esac case "$drand48_r_proto" in ''|0) d_drand48_r=undef - drand48_r_proto=0 + drand48_r_proto=0 echo "Disabling drand48_r, cannot determine prototype." >&4 ;; * ) case "$drand48_r_proto" in REENTRANT_PROTO*) ;; @@ -13034,6 +12680,34 @@ eval $hasproto set dup2 d_dup2 eval $inlibc +: see if dup3 exists +set dup3 d_dup3 +eval $inlibc + +: see if this is an xlocale.h system +set xlocale.h i_xlocale +eval $inhdr + +: see if newlocale exists +set newlocale d_newlocale +eval $inlibc + +: see if freelocale exists +set freelocale d_freelocale +eval $inlibc + +: see if uselocale exists +set uselocale d_uselocale +eval $inlibc + +: see if duplocale exists +set duplocale d_duplocale +eval $inlibc + +: see if querylocale exists +set querylocale d_querylocale +eval $inlibc + : see if eaccess exists set eaccess d_eaccess eval $inlibc @@ -13091,7 +12765,7 @@ case "$d_endgrent_r" in esac case "$endgrent_r_proto" in ''|0) d_endgrent_r=undef - endgrent_r_proto=0 + endgrent_r_proto=0 echo "Disabling endgrent_r, cannot determine prototype." >&4 ;; * ) case "$endgrent_r_proto" in REENTRANT_PROTO*) ;; @@ -13144,7 +12818,7 @@ case "$d_endhostent_r" in esac case "$endhostent_r_proto" in ''|0) d_endhostent_r=undef - endhostent_r_proto=0 + endhostent_r_proto=0 echo "Disabling endhostent_r, cannot determine prototype." >&4 ;; * ) case "$endhostent_r_proto" in REENTRANT_PROTO*) ;; @@ -13193,7 +12867,7 @@ case "$d_endnetent_r" in esac case "$endnetent_r_proto" in ''|0) d_endnetent_r=undef - endnetent_r_proto=0 + endnetent_r_proto=0 echo "Disabling endnetent_r, cannot determine prototype." >&4 ;; * ) case "$endnetent_r_proto" in REENTRANT_PROTO*) ;; @@ -13242,7 +12916,7 @@ case "$d_endprotoent_r" in esac case "$endprotoent_r_proto" in ''|0) d_endprotoent_r=undef - endprotoent_r_proto=0 + endprotoent_r_proto=0 echo "Disabling endprotoent_r, cannot determine prototype." >&4 ;; * ) case "$endprotoent_r_proto" in REENTRANT_PROTO*) ;; @@ -13379,7 +13053,7 @@ case "$d_endpwent_r" in esac case "$endpwent_r_proto" in ''|0) d_endpwent_r=undef - endpwent_r_proto=0 + endpwent_r_proto=0 echo "Disabling endpwent_r, cannot determine prototype." >&4 ;; * ) case "$endpwent_r_proto" in REENTRANT_PROTO*) ;; @@ -13428,7 +13102,7 @@ case "$d_endservent_r" in esac case "$endservent_r_proto" in ''|0) d_endservent_r=undef - endservent_r_proto=0 + endservent_r_proto=0 echo "Disabling endservent_r, cannot determine prototype." >&4 ;; * ) case "$endservent_r_proto" in REENTRANT_PROTO*) ;; @@ -13648,12 +13322,7 @@ extern int errno; #ifdef I_UNISTD #include #endif -#$i_string I_STRING -#ifdef I_STRING #include -#else -#include -#endif $signal_t blech(int x) { exit(3); } EOCP $cat >> try.c <<'EOCP' @@ -14019,7 +13688,7 @@ int main() { EOP set try if eval $compile && $to try.c; then - case `$run ./try` in + case `$run ./try` in Pass_changed) echo "Increasing ptr in your stdio decreases cnt by the same amount. Good." >&4 d_stdio_ptr_lval_sets_cnt="$define" ;; @@ -14093,8 +13762,6 @@ esac set d_faststdio eval $setvar - - : see if fchdir exists set fchdir d_fchdir eval $inlibc @@ -14320,17 +13987,10 @@ eval $inlibc set fp_class d_fp_class eval $inlibc -: see if this is a math.h system -set math.h i_math -eval $inhdr - : check for fpclassify echo "Checking to see if you have fpclassify..." >&4 $cat >try.c < -#endif int main() { return fpclassify(1.0) == FP_NORMAL ? 0 : 1; } EOCP set try @@ -14395,30 +14055,6 @@ $rm_try set d_fpos64_t eval $setvar -: see if this is an xlocale.h system -set xlocale.h i_xlocale -eval $inhdr - -: see if newlocale exists -set newlocale d_newlocale -eval $inlibc - -: see if freelocale exists -set freelocale d_freelocale -eval $inlibc - -: see if uselocale exists -set uselocale d_uselocale -eval $inlibc - -: see if duplocale exists -set duplocale d_duplocale -eval $inlibc - -: see if querylocale exists -set querylocale d_querylocale -eval $inlibc - : see if frexpl exists set frexpl d_frexpl eval $inlibc @@ -14464,7 +14100,6 @@ eval $inlibc set fstatvfs d_fstatvfs eval $inlibc - : see if fsync exists set fsync d_fsync eval $inlibc @@ -14482,9 +14117,11 @@ echo " " echo "Checking if you have a working futimes()" >&4 $cat >try.c < +#include #include #include #include +#include int main () { @@ -14653,7 +14290,7 @@ case "$d_getgrent_r" in esac case "$getgrent_r_proto" in ''|0) d_getgrent_r=undef - getgrent_r_proto=0 + getgrent_r_proto=0 echo "Disabling getgrent_r, cannot determine prototype." >&4 ;; * ) case "$getgrent_r_proto" in REENTRANT_PROTO*) ;; @@ -14706,7 +14343,7 @@ case "$d_getgrgid_r" in esac case "$getgrgid_r_proto" in ''|0) d_getgrgid_r=undef - getgrgid_r_proto=0 + getgrgid_r_proto=0 echo "Disabling getgrgid_r, cannot determine prototype." >&4 ;; * ) case "$getgrgid_r_proto" in REENTRANT_PROTO*) ;; @@ -14763,7 +14400,7 @@ case "$d_getgrnam_r" in esac case "$getgrnam_r_proto" in ''|0) d_getgrnam_r=undef - getgrnam_r_proto=0 + getgrnam_r_proto=0 echo "Disabling getgrnam_r, cannot determine prototype." >&4 ;; * ) case "$getgrnam_r_proto" in REENTRANT_PROTO*) ;; @@ -14941,7 +14578,7 @@ case "$d_gethostbyaddr_r" in esac case "$gethostbyaddr_r_proto" in ''|0) d_gethostbyaddr_r=undef - gethostbyaddr_r_proto=0 + gethostbyaddr_r_proto=0 echo "Disabling gethostbyaddr_r, cannot determine prototype." >&4 ;; * ) case "$gethostbyaddr_r_proto" in REENTRANT_PROTO*) ;; @@ -14990,7 +14627,7 @@ case "$d_gethostbyname_r" in esac case "$gethostbyname_r_proto" in ''|0) d_gethostbyname_r=undef - gethostbyname_r_proto=0 + gethostbyname_r_proto=0 echo "Disabling gethostbyname_r, cannot determine prototype." >&4 ;; * ) case "$gethostbyname_r_proto" in REENTRANT_PROTO*) ;; @@ -15051,7 +14688,7 @@ case "$d_gethostent_r" in esac case "$gethostent_r_proto" in ''|0) d_gethostent_r=undef - gethostent_r_proto=0 + gethostent_r_proto=0 echo "Disabling gethostent_r, cannot determine prototype." >&4 ;; * ) case "$gethostent_r_proto" in REENTRANT_PROTO*) ;; @@ -15117,7 +14754,7 @@ case "$d_getlogin_r" in esac case "$getlogin_r_proto" in ''|0) d_getlogin_r=undef - getlogin_r_proto=0 + getlogin_r_proto=0 echo "Disabling getlogin_r, cannot determine prototype." >&4 ;; * ) case "$getlogin_r_proto" in REENTRANT_PROTO*) ;; @@ -15210,7 +14847,7 @@ case "$d_getnetbyaddr_r" in esac case "$getnetbyaddr_r_proto" in ''|0) d_getnetbyaddr_r=undef - getnetbyaddr_r_proto=0 + getnetbyaddr_r_proto=0 echo "Disabling getnetbyaddr_r, cannot determine prototype." >&4 ;; * ) case "$getnetbyaddr_r_proto" in REENTRANT_PROTO*) ;; @@ -15263,7 +14900,7 @@ case "$d_getnetbyname_r" in esac case "$getnetbyname_r_proto" in ''|0) d_getnetbyname_r=undef - getnetbyname_r_proto=0 + getnetbyname_r_proto=0 echo "Disabling getnetbyname_r, cannot determine prototype." >&4 ;; * ) case "$getnetbyname_r_proto" in REENTRANT_PROTO*) ;; @@ -15324,7 +14961,7 @@ case "$d_getnetent_r" in esac case "$getnetent_r_proto" in ''|0) d_getnetent_r=undef - getnetent_r_proto=0 + getnetent_r_proto=0 echo "Disabling getnetent_r, cannot determine prototype." >&4 ;; * ) case "$getnetent_r_proto" in REENTRANT_PROTO*) ;; @@ -15412,7 +15049,7 @@ case "$d_getprotobyname_r" in esac case "$getprotobyname_r_proto" in ''|0) d_getprotobyname_r=undef - getprotobyname_r_proto=0 + getprotobyname_r_proto=0 echo "Disabling getprotobyname_r, cannot determine prototype." >&4 ;; * ) case "$getprotobyname_r_proto" in REENTRANT_PROTO*) ;; @@ -15461,7 +15098,7 @@ case "$d_getprotobynumber_r" in esac case "$getprotobynumber_r_proto" in ''|0) d_getprotobynumber_r=undef - getprotobynumber_r_proto=0 + getprotobynumber_r_proto=0 echo "Disabling getprotobynumber_r, cannot determine prototype." >&4 ;; * ) case "$getprotobynumber_r_proto" in REENTRANT_PROTO*) ;; @@ -15514,7 +15151,7 @@ case "$d_getprotoent_r" in esac case "$getprotoent_r_proto" in ''|0) d_getprotoent_r=undef - getprotoent_r_proto=0 + getprotoent_r_proto=0 echo "Disabling getprotoent_r, cannot determine prototype." >&4 ;; * ) case "$getprotoent_r_proto" in REENTRANT_PROTO*) ;; @@ -15588,7 +15225,7 @@ case "$d_getpwent_r" in esac case "$getpwent_r_proto" in ''|0) d_getpwent_r=undef - getpwent_r_proto=0 + getpwent_r_proto=0 echo "Disabling getpwent_r, cannot determine prototype." >&4 ;; * ) case "$getpwent_r_proto" in REENTRANT_PROTO*) ;; @@ -15641,7 +15278,7 @@ case "$d_getpwnam_r" in esac case "$getpwnam_r_proto" in ''|0) d_getpwnam_r=undef - getpwnam_r_proto=0 + getpwnam_r_proto=0 echo "Disabling getpwnam_r, cannot determine prototype." >&4 ;; * ) case "$getpwnam_r_proto" in REENTRANT_PROTO*) ;; @@ -15694,7 +15331,7 @@ case "$d_getpwuid_r" in esac case "$getpwuid_r_proto" in ''|0) d_getpwuid_r=undef - getpwuid_r_proto=0 + getpwuid_r_proto=0 echo "Disabling getpwuid_r, cannot determine prototype." >&4 ;; * ) case "$getpwuid_r_proto" in REENTRANT_PROTO*) ;; @@ -15757,7 +15394,7 @@ case "$d_getservbyname_r" in esac case "$getservbyname_r_proto" in ''|0) d_getservbyname_r=undef - getservbyname_r_proto=0 + getservbyname_r_proto=0 echo "Disabling getservbyname_r, cannot determine prototype." >&4 ;; * ) case "$getservbyname_r_proto" in REENTRANT_PROTO*) ;; @@ -15806,7 +15443,7 @@ case "$d_getservbyport_r" in esac case "$getservbyport_r_proto" in ''|0) d_getservbyport_r=undef - getservbyport_r_proto=0 + getservbyport_r_proto=0 echo "Disabling getservbyport_r, cannot determine prototype." >&4 ;; * ) case "$getservbyport_r_proto" in REENTRANT_PROTO*) ;; @@ -15859,7 +15496,7 @@ case "$d_getservent_r" in esac case "$getservent_r_proto" in ''|0) d_getservent_r=undef - getservent_r_proto=0 + getservent_r_proto=0 echo "Disabling getservent_r, cannot determine prototype." >&4 ;; * ) case "$getservent_r_proto" in REENTRANT_PROTO*) ;; @@ -15917,7 +15554,7 @@ case "$d_getspnam_r" in esac case "$getspnam_r_proto" in ''|0) d_getspnam_r=undef - getspnam_r_proto=0 + getspnam_r_proto=0 echo "Disabling getspnam_r, cannot determine prototype." >&4 ;; * ) case "$getspnam_r_proto" in REENTRANT_PROTO*) ;; @@ -15981,7 +15618,7 @@ case "$d_gmtime_r" in esac case "$gmtime_r_proto" in ''|0) d_gmtime_r=undef - gmtime_r_proto=0 + gmtime_r_proto=0 echo "Disabling gmtime_r, cannot determine prototype." >&4 ;; * ) case "$gmtime_r_proto" in REENTRANT_PROTO*) ;; @@ -16064,39 +15701,6 @@ eval $inlibc set ilogbl d_ilogbl eval $inlibc -: index or strchr -echo " " -if set index val -f; eval $csym; $val; then - if set strchr val -f d_strchr; eval $csym; $val; then - if $contains strchr "$strings" >/dev/null 2>&1 ; then - val="$define" - vali="$undef" - echo "strchr() found." >&4 - else - val="$undef" - vali="$define" - echo "index() found." >&4 - fi - else - val="$undef" - vali="$define" - echo "index() found." >&4 - fi -else - if set strchr val -f d_strchr; eval $csym; $val; then - val="$define" - vali="$undef" - echo "strchr() found." >&4 - else - echo "No index() or strchr() found!" >&4 - val="$undef" - vali="$undef" - fi -fi -set d_strchr; eval $setvar -val="$vali" -set d_index; eval $setvar - : check whether inet_aton exists set inet_aton d_inetaton eval $inlibc @@ -16165,10 +15769,7 @@ $rm -f isblank* : check for isfinite echo "Checking to see if you have isfinite..." >&4 $cat >try.c < -#endif int main() { return isfinite(0.0); } EOCP set try @@ -16190,10 +15791,7 @@ eval $inlibc : check for isinf echo "Checking to see if you have isinf..." >&4 $cat >try.c < -#endif int main() { return isinf(0.0); } EOCP set try @@ -16215,11 +15813,8 @@ eval $inlibc : check for isless echo "Checking to see if you have isless..." >&4 $cat >try.c < -#endif -int main() { return isless(0.0); } +int main() { return isless(2.0, 1.0); } EOCP set try if eval $compile; then @@ -16236,10 +15831,7 @@ eval $setvar : check for isnan echo "Checking to see if you have isnan..." >&4 $cat >try.c < -#endif int main() { return isnan(0.0); } EOCP set try @@ -16261,10 +15853,7 @@ eval $inlibc : check for isnormal echo "Checking to see if you have isnormal..." >&4 $cat >try.c < -#endif int main() { return isnormal(0.0); } EOCP set try @@ -16318,27 +15907,24 @@ esac : see if lchown exists echo " " -$cat > try.c <<'EOCP' -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char lchown(); below. */ -#include -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char lchown(); -int main() { - /* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_lchown) || defined (__stub___lchown) -choke me -#else -lchown(); +$cat > try.c < +#include +#include +#$i_unistd I_UNISTD +#ifdef I_UNISTD +# include #endif -; return 0; } +int main(int argc, char *argv[]) +{ + if (lchown("./try.c", -1, getgid()) == -1) { + exit(EXIT_FAILURE); + } + exit(EXIT_SUCCESS); +} EOCP set try -if eval $compile; then +if eval $compile && ./try; then $echo "lchown() found." >&4 val="$define" else @@ -16347,18 +15933,13 @@ else fi set d_lchown eval $setvar +$rm_try : See if number of significant digits in a double precision number is known echo " " $cat >ldbl_dig.c < -#endif -#ifdef I_FLOAT #include -#endif #ifdef LDBL_DIG printf("Contains LDBL_DIG"); #endif @@ -16385,11 +15966,9 @@ eval $inlibc : check to see if math.h defines _LIB_VERSION d_libm_lib_version="$undef" -case $i_math in - $define) - echo " " - echo "Checking to see if your libm supports _LIB_VERSION..." >&4 - $cat >try.c <&4 +$cat >try.c < #include int main (int argc, char *argv[]) @@ -16398,18 +15977,15 @@ int main (int argc, char *argv[]) return (0); } /* main */ EOCP - set try - if eval $compile; then - foo=`$run ./try` - echo "Yes, it does ($foo)" >&4 - d_libm_lib_version="$define" - else - echo "No, it does not (probably harmless)" >&4 - fi - $rm_try - ;; - - esac +set try +if eval $compile; then + foo=`$run ./try` + echo "Yes, it does ($foo)" >&4 + d_libm_lib_version="$define" +else + echo "No, it does not (probably harmless)" >&4 + fi +$rm_try : see if link exists set link d_link @@ -16459,7 +16035,7 @@ case "$d_localtime_r" in esac case "$localtime_r_proto" in ''|0) d_localtime_r=undef - localtime_r_proto=0 + localtime_r_proto=0 echo "Disabling localtime_r, cannot determine prototype." >&4 ;; * ) case "$localtime_r_proto" in REENTRANT_PROTO*) ;; @@ -16491,7 +16067,6 @@ REENTRANT_PROTO*) #$i_unistd I_UNISTD #$i_time I_TIME #$i_stdlib I_STDLIB -#$i_string I_STRING #$i_malloc I_MALLOC #ifdef I_SYS_TYPES # include @@ -16505,11 +16080,7 @@ REENTRANT_PROTO*) #ifdef I_STDLIB #include #endif -#ifdef I_STRING -# include -#else -# include -#endif +#include #ifdef I_MALLOC # include #endif @@ -16607,6 +16178,10 @@ eval $inlibc set malloc_good_size d_malloc_good_size eval $inlibc +: see if malloc_usable_size exists +set malloc_usable_size d_malloc_usable_size +eval $inlibc + : see if mblen exists set mblen d_mblen eval $inlibc @@ -16627,33 +16202,47 @@ eval $inlibc set mbtowc d_mbtowc eval $inlibc -: see if memchr exists -set memchr d_memchr -eval $inlibc - -: see if memcmp exists -set memcmp d_memcmp -eval $inlibc - -: see if memcpy exists -set memcpy d_memcpy -eval $inlibc - : see if memmem exists -set memmem d_memmem -eval $inlibc - -: see if memmove exists -set memmove d_memmove -eval $inlibc +: We need both a prototype in string.h and the symbol in libc. +echo " " +d_memmem_proto='' +xx1="#$d_gnulibc HAS_GNULIBC" +xx2='#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)' +xx3='# define _GNU_SOURCE' +xx4='#endif' +set d_memmem_proto memmem literal "$xx1" literal "$xx2" literal "$xx3" literal "$xx4" define string.h +eval $hasproto +case "$d_memmem_proto" in + define) # see if memmem exists + set memmem d_memmem + eval $inlibc + ;; + *) val=$undef + set d_memmem + eval $setvar + ;; +esac : see if memrchr exists -set memrchr d_memrchr -eval $inlibc - -: see if memset exists -set memset d_memset -eval $inlibc +: We need both a prototype in string.h and the symbol in libc. +echo " " +d_memrchr_proto='' +xx1="#$d_gnulibc HAS_GNULIBC" +xx2='#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)' +xx3='# define _GNU_SOURCE' +xx4='#endif' +set d_memrchr_proto memrchr literal "$xx1" literal "$xx2" literal "$xx3" literal "$xx4" define string.h +eval $hasproto +case "$d_memrchr_proto" in + define) # see if memrchr exists + set memrchr d_memrchr + eval $inlibc + ;; + *) val=$undef + set d_memrchr + eval $setvar + ;; +esac : see if mkdir exists set mkdir d_mkdir @@ -16667,6 +16256,10 @@ eval $inlibc set mkfifo d_mkfifo eval $inlibc +: see if mkostemp exists +set mkostemp d_mkostemp +eval $inlibc + : see if mkstemp exists set mkstemp d_mkstemp eval $inlibc @@ -16679,7 +16272,7 @@ eval $inlibc set mktime d_mktime eval $inlibc -: see if this is a sys/mman.h system +: see if sys/mman.h has to be included set sys/mman.h i_sysmman eval $inhdr @@ -16704,8 +16297,6 @@ END ;; esac - - : see if sqrtl exists set sqrtl d_sqrtl eval $inlibc @@ -16724,7 +16315,7 @@ eval $inlibc : see if prototype for modfl is available echo " " -set d_modflproto modfl $i_math math.h +set d_modflproto modfl define math.h eval $hasproto if $test "$uselongdouble" = "$define"; then @@ -16835,7 +16426,6 @@ case "$d_msghdr_s" in *) echo "No, it doesn't." ;; esac - : see if msync exists set msync d_msync eval $inlibc @@ -16880,37 +16470,6 @@ eval $inlibc set quadmath.h i_quadmath eval $inhdr -: check for volatile keyword -echo " " -echo 'Checking to see if your C compiler knows about "volatile"...' >&4 -$cat >try.c <<'EOCP' -int main() -{ - typedef struct _goo_struct goo_struct; - goo_struct * volatile goo = ((goo_struct *)0); - struct _goo_struct { - long long_int; - int reg_int; - char char_var; - }; - typedef unsigned short foo_t; - char *volatile foo; - volatile int bar; - volatile foo_t blech; - foo = foo; -} -EOCP -if $cc -c $ccflags try.c >/dev/null 2>&1 ; then - val="$define" - echo "Yup, it does." -else - val="$undef" - echo "Nope, it doesn't." -fi -set d_volatile -eval $setvar -$rm_try - : Check basic sizes echo " " $echo "Choosing the C types to be used for Perl's internal types..." >&4 @@ -17104,10 +16663,6 @@ case "$i64type" in esac $echo "Checking how many bits of your UVs your NVs can preserve..." >&4 -: volatile so that the compiler has to store it out to memory. -if test X"$d_volatile" = X"$define"; then - volatile=volatile -fi $cat <try.c #include #$i_stdlib I_STDLIB @@ -17117,7 +16672,8 @@ $cat <try.c #include #include #ifdef SIGFPE -$volatile int bletched = 0; +/* volatile so that the compiler has to store it out to memory */ +volatile int bletched = 0; $signal_t blech(int s) { bletched = 1; } #endif int main() { @@ -17168,10 +16724,6 @@ esac $rm_try $echo "Checking to find the largest integer value your NVs can hold..." >&4 -: volatile so that the compiler has to store it out to memory. -if test X"$d_volatile" = X"$define"; then - volatile=volatile -fi $cat <try.c #include @@ -17183,10 +16735,11 @@ main() { int count = 1; while(count < 256) { - $volatile NV up = value + 1.0; - $volatile NV negated = -value; - $volatile NV down = negated - 1.0; - $volatile NV got_up = up - value; + /* volatile so that the compiler has to store it out to memory */ + volatile NV up = value + 1.0; + volatile NV negated = -value; + volatile NV down = negated - 1.0; + volatile NV got_up = up - value; int up_good = got_up == 1.0; int got_down = down - negated; int down_good = got_down == -1.0; @@ -17251,26 +16804,18 @@ fi $rm_try $echo "Checking whether NV 0.0 is all bits zero in memory..." >&4 -: volatile so that the compiler has to store it out to memory. -if test X"$d_volatile" = X"$define"; then - volatile=volatile -fi $cat <try.c #include #$i_stdlib I_STDLIB #ifdef I_STDLIB #include #endif -#$i_string I_STRING -#ifdef I_STRING -# include -#else -# include -#endif +#include #include #include #ifdef SIGFPE -$volatile int bletched = 0; +/* volatile so that the compiler has to store it out to memory */ +volatile int bletched = 0; $signal_t blech(int s) { bletched = 1; } #endif @@ -17455,6 +17000,10 @@ fi set pause d_pause eval $inlibc +: see if pipe2 exists +set pipe2 d_pipe2 +eval $inlibc + : see if poll exists set poll d_poll eval $inlibc @@ -17722,7 +17271,7 @@ case "$d_random_r" in esac case "$random_r_proto" in ''|0) d_random_r=undef - random_r_proto=0 + random_r_proto=0 echo "Disabling random_r, cannot determine prototype." >&4 ;; * ) case "$random_r_proto" in REENTRANT_PROTO*) ;; @@ -17777,7 +17326,7 @@ case "$d_readdir64_r" in esac case "$readdir64_r_proto" in ''|0) d_readdir64_r=undef - readdir64_r_proto=0 + readdir64_r_proto=0 echo "Disabling readdir64_r, cannot determine prototype." >&4 ;; * ) case "$readdir64_r_proto" in REENTRANT_PROTO*) ;; @@ -17822,7 +17371,7 @@ case "$d_readdir_r" in esac case "$readdir_r_proto" in ''|0) d_readdir_r=undef - readdir_r_proto=0 + readdir_r_proto=0 echo "Disabling readdir_r, cannot determine prototype." >&4 ;; * ) case "$readdir_r_proto" in REENTRANT_PROTO*) ;; @@ -17901,236 +17450,6 @@ eval $inlibc set round d_round eval $inlibc -: see if memory.h is available. -val='' -set memory.h val -eval $inhdr - -: See if it conflicts with string.h -case "$val" in -$define) - case "$strings" in - '') ;; - *) - $cppstdin $cppflags $cppminus < $strings > mem.h - if $contains 'memcpy' mem.h >/dev/null 2>&1; then - echo " " - echo "We won't be including ." - val="$undef" - fi - $rm -f mem.h - ;; - esac -esac -set i_memory -eval $setvar - -: can bcopy handle overlapping blocks? -echo " " -val="$undef" -case "$d_memmove" in -"$define") echo "I'll use memmove() instead of bcopy() for overlapping copies." ;; -*) case "$d_bcopy" in - "$define") - echo "Checking to see if bcopy() can do overlapping copies..." >&4 - $cat >try.c <>try.c <<'EOCP' -#include -#ifdef I_MEMORY -# include -#endif -#ifdef I_STDLIB -# include -#endif -#ifdef I_STRING -# include -#else -# include -#endif -#ifdef I_UNISTD -# include /* Needed for NetBSD */ -#endif -int main() -{ -char buf[128], abc[128]; -char *b; -int len; -int off; -int align; - -/* Copy "abcde..." string to char abc[] so that gcc doesn't - try to store the string in read-only memory. */ -bcopy("abcdefghijklmnopqrstuvwxyz0123456789", abc, 36); - -for (align = 7; align >= 0; align--) { - for (len = 36; len; len--) { - b = buf+align; - bcopy(abc, b, len); - for (off = 1; off <= len; off++) { - bcopy(b, b+off, len); - bcopy(b+off, b, len); - if (bcmp(b, abc, len)) - exit(1); - } - } -} -exit(0); -} -EOCP - set try - if eval $compile_ok; then - if $run ./try 2>/dev/null; then - echo "Yes, it can." - val="$define" - else - echo "It can't, sorry." - fi - else - echo "(I can't compile the test program, so we'll assume not...)" - fi - ;; - esac - $rm_try - ;; -esac -set d_safebcpy -eval $setvar - -: can memcpy handle overlapping blocks? -echo " " -val="$undef" -case "$d_memmove" in -"$define") echo "I'll use memmove() instead of memcpy() for overlapping copies." ;; -*) case "$d_memcpy" in - "$define") - echo "Checking to see if memcpy() can do overlapping copies..." >&4 - $cat >try.c <>try.c <<'EOCP' -#include -#ifdef I_MEMORY -# include -#endif -#ifdef I_STDLIB -# include -#endif -#ifdef I_STRING -# include -#else -# include -#endif -#ifdef I_UNISTD -# include /* Needed for NetBSD */ -#endif -int main() -{ -char buf[128], abc[128]; -char *b; -int len; -int off; -int align; - -/* Copy "abcde..." string to char abc[] so that gcc doesn't - try to store the string in read-only memory. */ -memcpy(abc, "abcdefghijklmnopqrstuvwxyz0123456789", 36); - -for (align = 7; align >= 0; align--) { - for (len = 36; len; len--) { - b = buf+align; - memcpy(b, abc, len); - for (off = 1; off <= len; off++) { - memcpy(b+off, b, len); - memcpy(b, b+off, len); - if (memcmp(b, abc, len)) - exit(1); - } - } -} -exit(0); -} -EOCP - set try - if eval $compile_ok; then - if $run ./try 2>/dev/null; then - echo "Yes, it can." - val="$define" - else - echo "It can't, sorry." - fi - else - echo "(I can't compile the test program, so we'll assume not...)" - fi - ;; - esac - $rm_try - ;; -esac -set d_safemcpy -eval $setvar - -: can memcmp be trusted to compare relative magnitude? -val="$undef" -case "$d_memcmp" in -"$define") - echo " " - echo "Checking if your memcmp() can compare relative magnitude..." >&4 - $cat >try.c <>try.c <<'EOCP' -#include -#ifdef I_MEMORY -# include -#endif -#ifdef I_STDLIB -# include -#endif -#ifdef I_STRING -# include -#else -# include -#endif -#ifdef I_UNISTD -# include /* Needed for NetBSD */ -#endif -int main() -{ -char a = -1; -char b = 0; -if ((a < b) && memcmp(&a, &b, 1) < 0) - exit(1); -exit(0); -} -EOCP - set try - if eval $compile_ok; then - if $run ./try 2>/dev/null; then - echo "Yes, it can." - val="$define" - else - echo "No, it can't (it uses signed chars)." - fi - else - echo "(I can't compile the test program, so we'll assume not...)" - fi - ;; -esac -$rm_try -set d_sanemcmp -eval $setvar - : see if prototype for sbrk is available echo " " set d_sbrkproto sbrk $i_unistd unistd.h @@ -18326,21 +17645,31 @@ END extern int errno; #endif int main() { - struct semid_ds arg; + union semun +#ifndef HAS_UNION_SEMUN + { + int val; + struct semid_ds *buf; + unsigned short *array; + } +#endif + arg; + struct semid_ds argbuf; int sem, st; #if defined(IPC_PRIVATE) && defined(S_IRWXU) && defined(S_IRWXG) && defined(S_IRWXO) && defined(IPC_CREAT) sem = semget(IPC_PRIVATE, 1, S_IRWXU|S_IRWXG|S_IRWXO|IPC_CREAT); if (sem > -1) { + arg.buf = &argbuf; # ifdef IPC_STAT - st = semctl(sem, 0, IPC_STAT, &arg); + st = semctl(sem, 0, IPC_STAT, arg); if (st == 0) printf("semid_ds\n"); else # endif /* IPC_STAT */ printf("semctl IPC_STAT failed: errno = %d\n", errno); # ifdef IPC_RMID - if (semctl(sem, 0, IPC_RMID, &arg) != 0) + if (semctl(sem, 0, IPC_RMID, arg) != 0) # endif /* IPC_RMID */ printf("semctl IPC_RMID failed: errno = %d\n", errno); } else @@ -18424,7 +17753,7 @@ case "$d_setgrent_r" in esac case "$setgrent_r_proto" in ''|0) d_setgrent_r=undef - setgrent_r_proto=0 + setgrent_r_proto=0 echo "Disabling setgrent_r, cannot determine prototype." >&4 ;; * ) case "$setgrent_r_proto" in REENTRANT_PROTO*) ;; @@ -18473,7 +17802,7 @@ case "$d_sethostent_r" in esac case "$sethostent_r_proto" in ''|0) d_sethostent_r=undef - sethostent_r_proto=0 + sethostent_r_proto=0 echo "Disabling sethostent_r, cannot determine prototype." >&4 ;; * ) case "$sethostent_r_proto" in REENTRANT_PROTO*) ;; @@ -18494,21 +17823,195 @@ case "$d_sethostent_r" in ;; esac -: see if setitimer exists -set setitimer d_setitimer -eval $inlibc +: see if setitimer exists +set setitimer d_setitimer +eval $inlibc + +: see if setlinebuf exists +set setlinebuf d_setlinebuf +eval $inlibc + +: see if locale.h is available +set locale.h i_locale +eval $inhdr + +: see if this system has wctype.h +set wctype.h i_wctype +eval $inhdr + +: see if towupper exists +set towupper d_towupper +eval $inlibc + +: check for setlocale function and behavior +$cat <try.c < +#include +#$i_locale I_LOCALE +#ifdef I_LOCALE +# include +#endif +#$i_wctype I_WCTYPE +#ifdef I_WCTYPE +# include +#endif + +int main() { + const char * invalid_name = "\a"; /* This is really invalid! */ + int accepts_any_locale_name = 0; + int has_C_UTF8 = 0; + unsigned char bad_setlocale = 255; + + /* If LC_CTYPE isn't defined the compilation will fail, and locales will be + * disabled. It's hard to imagine an instance where meaningful locale + * handling could be done without LC_CTYPE */ + const char * name = setlocale(LC_CTYPE, "C"); + + if (name == NULL || strcmp(name, "C") != 0) { + exit(bad_setlocale); + } -: see if setlinebuf exists -set setlinebuf d_setlinebuf -eval $inlibc + name = setlocale(LC_CTYPE, invalid_name); + if (name != NULL) { -: see if setlocale exists -set setlocale d_setlocale -eval $inlibc + /* Let it pass if it accepts the name but gives back one of the C + * locales */ + if (strcmp(name, "C") != 0 && strcmp(name, "C.UTF-8") != 0) { + accepts_any_locale_name = 1; + } + } -: see if locale.h is available -set locale.h i_locale -eval $inhdr + name = setlocale(LC_CTYPE, "C.UTF-8"); + if (name != NULL) { + unsigned char y_with_diaeresis = ('A' == 193) ? 0xDF : 0xFF; + +#$d_towupper HAS_TOWUPPER +#ifdef HAS_TOWUPPER + + /* We assume that if the machine doesn't have the C99 towupper, it + * doesn't have C.UTF-8, even if we successfully changed locales to + * include it. This seems safer even on platforms that didn't accept + * the really invalid name */ + + if (towupper(y_with_diaeresis) == 0x178) { + has_C_UTF8 = 1; + } + +#endif + + } + +#if 0 + + /* Currently unused code to determine if LC_ALL with disparate values uses + * category = value pairs or positional, and to determine the separator + * between the categories. We could add code so that if the separator were + * > '9', we subtract 10; similarly for 'Z' and 'z', and then just about + * every possible ASCII separator would fit in the 5 bits available in the + * exit code. This would not be true in EBCDIC. And then if LC_ALL is + * positional, we probably would want to know the order of the categories. + * Using a file between the C program and the shell script would really be + * require to do that */ +#ifdef LC_ALL + + unsigned char min_separator = ' ' - 1; + unsigned char separator = min_separator; + int uses_name_value_pair_names = 0; + + name = setlocale(LC_ALL, "C"); + if (name == NULL || strcmp(name, "C") != 0) { + exit(bad_setlocale); + } + + if (has_C_UTF8) { + char * pos; + + name = setlocale(LC_CTYPE, "C.UTF-8"); + if (name == NULL) { + exit(bad_setlocale); + } + name = setlocale(LC_ALL, NULL); + if (name == NULL) { + exit(bad_setlocale); + } + + pos = strstr(name, "LC_CTYPE" "=C.UTF-8"); + if (pos != NULL) { + uses_name_value_pair_names = 1; + if (pos == name) { + separator = name[sizeof("LC_CTYPE=C.UTF-8") - 1]; + } + else { + separator = *(pos - 1); + } + } + else { + pos = strstr(name, "C.UTF-8"); + if (pos == NULL) { + /* bad */ + } + else if (pos == name) { + separator = name[sizeof("C.UTF-8") - 1]; + } + else { + separator = *(pos - 1); + } + } + } + +#endif +#endif + + exit( 0 /* (separator - min_separator) << 3 + | uses_name_value_pair_names << 2 + */ + | has_C_UTF8 << 1 + | accepts_any_locale_name); + +} +EOCP +set try +if eval $compile; then + echo "Your system has setlocale()..." >&4 + $run ./try + case $? in + 0) echo "and it seems sane" >&4 + d_setlocale="$define" + d_setlocale_accepts_any_locale_name="$undef" + d_has_C_UTF8="false" + ;; + 1) echo "and it seems sane, but accepts any locale name as valid" >&4 + d_setlocale="$define" + d_setlocale_accepts_any_locale_name="$define" + d_has_C_UTF8="false" + ;; + 2) echo "and it seems sane" >&4 + d_setlocale="$define" + d_setlocale_accepts_any_locale_name="$undef" + d_has_C_UTF8="true" + ;; + 3) echo "and it seems sane, but accepts any locale name as valid" >&4 + d_setlocale="$define" + d_setlocale_accepts_any_locale_name="$define" + d_has_C_UTF8="true" + ;; + *) echo "but it doesn't seem to work, so we won't use it." >&4 + d_setlocale="$undef" + d_setlocale_accepts_any_locale_name="$undef" + d_has_C_UTF8="false" + ;; + esac +else + echo "your system does not have setlocale()" >&4 + d_setlocale="$undef" + d_setlocale_accepts_any_locale_name="$undef" + d_has_C_UTF8="false" +fi +$rm_try : see if setlocale_r exists set setlocale_r d_setlocale_r @@ -18530,7 +18033,7 @@ case "$d_setlocale_r" in esac case "$setlocale_r_proto" in ''|0) d_setlocale_r=undef - setlocale_r_proto=0 + setlocale_r_proto=0 echo "Disabling setlocale_r, cannot determine prototype." >&4 ;; * ) case "$setlocale_r_proto" in REENTRANT_PROTO*) ;; @@ -18579,7 +18082,7 @@ case "$d_setnetent_r" in esac case "$setnetent_r_proto" in ''|0) d_setnetent_r=undef - setnetent_r_proto=0 + setnetent_r_proto=0 echo "Disabling setnetent_r, cannot determine prototype." >&4 ;; * ) case "$setnetent_r_proto" in REENTRANT_PROTO*) ;; @@ -18644,7 +18147,7 @@ case "$d_setprotoent_r" in esac case "$setprotoent_r_proto" in ''|0) d_setprotoent_r=undef - setprotoent_r_proto=0 + setprotoent_r_proto=0 echo "Disabling setprotoent_r, cannot determine prototype." >&4 ;; * ) case "$setprotoent_r_proto" in REENTRANT_PROTO*) ;; @@ -18693,7 +18196,7 @@ case "$d_setpwent_r" in esac case "$setpwent_r_proto" in ''|0) d_setpwent_r=undef - setpwent_r_proto=0 + setpwent_r_proto=0 echo "Disabling setpwent_r, cannot determine prototype." >&4 ;; * ) case "$setpwent_r_proto" in REENTRANT_PROTO*) ;; @@ -18762,7 +18265,7 @@ case "$d_setservent_r" in esac case "$setservent_r_proto" in ''|0) d_setservent_r=undef - setservent_r_proto=0 + setservent_r_proto=0 echo "Disabling setservent_r, cannot determine prototype." >&4 ;; * ) case "$setservent_r_proto" in REENTRANT_PROTO*) ;; @@ -19010,11 +18513,8 @@ eval $inhdr : see if signbit exists $echo $n "Checking to see if you have signbit() available to work on $nvtype... $c" >&4 $cat >try.c < -#endif +#include #ifdef I_SUNMATH /* Solaris special math library */ # include #endif @@ -19179,69 +18679,6 @@ eval $hasproto set socks5_init d_socks5_init eval $inlibc -: see if sprintf returns the length of the string in the buffer as per ANSI -$echo "Checking whether sprintf returns the length of the string..." >&4 -$cat <try.c -#include -#$i_stdlib I_STDLIB -#ifdef I_STDLIB -#include -#endif -#$i_string I_STRING -#ifdef I_STRING -# include -#else -# include -#endif -#$i_math I_MATH -#ifdef I_MATH -#include -#endif - -char buffer[256]; - -int check (size_t expect, int test) { - size_t got = strlen(buffer); - if (expect == got) - return 0; - - printf("expected %ld, got %ld in test %d '%s'\n", (long) expect, (long) got, - test, buffer); - exit (test); -} - -int main(int argc, char **argv) { - int test = 0; - - check(sprintf(buffer, ""), ++test); - check(sprintf(buffer, "%s %s", "perl", "rules"), ++test); - check(sprintf(buffer, "I like %g", atan2(0,-1)), ++test); - - return 0; -} -EOP -set try - -if eval $compile; then - xxx="`$run ./try`" - case "$?" in - 0) cat >&4 <&4 <&4 - d_sprintf_returns_strlen="$undef" -fi -$rm_try - : see if srand48_r exists set srand48_r d_srand48_r eval $inlibc @@ -19262,7 +18699,7 @@ case "$d_srand48_r" in esac case "$srand48_r_proto" in ''|0) d_srand48_r=undef - srand48_r_proto=0 + srand48_r_proto=0 echo "Disabling srand48_r, cannot determine prototype." >&4 ;; * ) case "$srand48_r_proto" in REENTRANT_PROTO*) ;; @@ -19303,7 +18740,7 @@ case "$d_srandom_r" in esac case "$srandom_r_proto" in ''|0) d_srandom_r=undef - srandom_r_proto=0 + srandom_r_proto=0 echo "Disabling srandom_r, cannot determine prototype." >&4 ;; * ) case "$srandom_r_proto" in REENTRANT_PROTO*) ;; @@ -19366,7 +18803,6 @@ case "$d_statfs_s" in *) echo "No, it doesn't." ;; esac - : see if struct statfs knows about f_flags case "$d_statfs_s" in define) @@ -19496,7 +18932,7 @@ $cat >&4 <try.c <try.c < int main() { if (&STDIO_STREAM_ARRAY[fileno(stdin)] == stdin) @@ -19507,7 +18943,7 @@ EOCP do set try -DSTDIO_STREAM_ARRAY=$s if eval $compile; then - case "`$run ./try`" in + case "`$run ./try`" in yes) stdio_stream_array=$s; break ;; esac fi @@ -19531,69 +18967,6 @@ esac set strcoll d_strcoll eval $inlibc -: check for structure copying -echo " " -echo "Checking to see if your C compiler can copy structs..." >&4 -$cat >try.c <<'EOCP' -int main() -{ - struct blurfl { - int dyick; - } foo, bar; - - foo = bar; -} -EOCP -if $cc -c try.c >/dev/null 2>&1 ; then - val="$define" - echo "Yup, it can." -else - val="$undef" - echo "Nope, it can't." -fi -set d_strctcpy -eval $setvar -$rm_try - -: see if strerror and/or sys_errlist[] exist -echo " " -if test "X$d_strerror" = X -o "X$d_syserrlst" = X; then - if set strerror val -f d_strerror; eval $csym; $val; then - echo 'strerror() found.' >&4 - d_strerror="$define" - d_strerrm='strerror(e)' - if set sys_errlist val -a d_syserrlst; eval $csym; $val; then - echo "(You also have sys_errlist[], so we could roll our own strerror.)" - d_syserrlst="$define" - else - echo "(Since you don't have sys_errlist[], strerror() is welcome.)" - d_syserrlst="$undef" - fi - elif xxx=`./findhdr string.h`; test "$xxx" || xxx=`./findhdr strings.h`; \ - $contains '#[ ]*define.*strerror' "$xxx" >/dev/null 2>&1; then - echo 'strerror() found in string header.' >&4 - d_strerror="$define" - d_strerrm='strerror(e)' - if set sys_errlist val -a d_syserrlst; eval $csym; $val; then - echo "(Most probably, strerror() uses sys_errlist[] for descriptions.)" - d_syserrlst="$define" - else - echo "(You don't appear to have any sys_errlist[], how can this be?)" - d_syserrlst="$undef" - fi - elif set sys_errlist val -a d_syserrlst; eval $csym; $val; then - echo "strerror() not found, but you have sys_errlist[] so we'll use that." >&4 - d_strerror="$undef" - d_syserrlst="$define" - d_strerrm='((e)<0||(e)>=sys_nerr?"unknown":sys_errlist[e])' - else - echo 'strerror() and sys_errlist[] NOT found.' >&4 - d_strerror="$undef" - d_syserrlst="$undef" - d_strerrm='"unknown"' - fi -fi - : see if strerror_l exists set strerror_l d_strerror_l eval $inlibc @@ -19603,7 +18976,7 @@ set strerror_r d_strerror_r eval $inlibc case "$d_strerror_r" in "$define") - hdrs="$i_systypes sys/types.h define stdio.h $i_string string.h" + hdrs="$i_systypes sys/types.h define stdio.h define string.h" case "$d_strerror_r_proto:$usethreads" in ":define") d_strerror_r_proto=define set d_strerror_r_proto strerror_r $hdrs @@ -19626,7 +18999,7 @@ case "$d_strerror_r" in esac case "$strerror_r_proto" in ''|0) d_strerror_r=undef - strerror_r_proto=0 + strerror_r_proto=0 echo "Disabling strerror_r, cannot determine prototype." >&4 ;; * ) case "$strerror_r_proto" in REENTRANT_PROTO*) ;; @@ -19652,12 +19025,46 @@ set strftime d_strftime eval $inlibc : see if strlcat exists -set strlcat d_strlcat -eval $inlibc +: We need both a prototype in string.h and the symbol in libc. +echo " " +d_strlcat_proto='' +xx1="#$d_gnulibc HAS_GNULIBC" +xx2='#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)' +xx3='# define _GNU_SOURCE' +xx4='#endif' +set d_strlcat_proto strlcat literal "$xx1" literal "$xx2" literal "$xx3" literal "$xx4" define string.h +eval $hasproto +case "$d_strlcat_proto" in + define) # see if strlcat exists + set strlcat d_strlcat + eval $inlibc + ;; + *) val=$undef + set d_strlcat + eval $setvar + ;; +esac : see if strlcpy exists -set strlcpy d_strlcpy -eval $inlibc +: We need both a prototype in string.h and the symbol in libc. +echo " " +d_strlcpy_proto='' +xx1="#$d_gnulibc HAS_GNULIBC" +xx2='#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)' +xx3='# define _GNU_SOURCE' +xx4='#endif' +set d_strlcpy_proto strlcpy literal "$xx1" literal "$xx2" literal "$xx3" literal "$xx4" define string.h +eval $hasproto +case "$d_strlcpy_proto" in + define) # see if strlcpy exists + set strlcpy d_strlcpy + eval $inlibc + ;; + *) val=$undef + set d_strlcpy + eval $setvar + ;; +esac : see if strnlen exists set strnlen d_strnlen @@ -19667,6 +19074,10 @@ eval $inlibc set strtod d_strtod eval $inlibc +: see if strtod_l exists +set strtod_l d_strtod_l +eval $inlibc + : see if strtol exists set strtol d_strtol eval $inlibc @@ -19697,9 +19108,9 @@ EOM #define strtoll _strtoll #endif #include -extern long long int strtoll(char *s, char **, int); +#include static int bad = 0; -int check(char *s, long long ell, int een) { +void check(const char *s, long long ell, int een) { long long gll; errno = 0; gll = strtoll(s, 0, 10); @@ -19752,11 +19163,11 @@ case "$d_strtoul" in Checking whether your strtoul() works okay... EOM $cat >try.c <<'EOCP' +#include #include #include -extern unsigned long int strtoul(char *s, char **, int); static int bad = 0; -void check(char *s, unsigned long eul, int een) { +void check(const char *s, unsigned long eul, int een) { unsigned long gul; errno = 0; gul = strtoul(s, 0, 10); @@ -19776,7 +19187,7 @@ EOCP check("-1", 18446744073709551615UL, 0); check("-18446744073709551614", 2, 0); check("-18446744073709551615", 1, 0); - check("-18446744073709551616", 18446744073709551615UL, ERANGE); + check("-18446744073709551616", 18446744073709551615UL, ERANGE); check("-18446744073709551617", 18446744073709551615UL, ERANGE); #endif EOCP @@ -19789,7 +19200,7 @@ EOCP check("-1", 4294967295UL, 0); check("-4294967294", 2, 0); check("-4294967295", 1, 0); - check("-4294967296", 4294967295UL, ERANGE); + check("-4294967296", 4294967295UL, ERANGE); check("-4294967297", 4294967295UL, ERANGE); #endif EOCP @@ -19832,14 +19243,14 @@ case "$d_longlong-$d_strtoull" in Checking whether your strtoull() works okay... EOM $cat >try.c <<'EOCP' +#include #include #ifdef __hpux #define strtoull __strtoull #endif #include -extern unsigned long long int strtoull(char *s, char **, int); static int bad = 0; -int check(char *s, long long eull, int een) { +void check(const char *s, long long eull, int een) { long long gull; errno = 0; gull = strtoull(s, 0, 10); @@ -19855,7 +19266,7 @@ int main() { check("-1", 18446744073709551615ULL, 0); check("-18446744073709551614", 2LL, 0); check("-18446744073709551615", 1LL, 0); - check("-18446744073709551616", 18446744073709551615ULL, ERANGE); + check("-18446744073709551616", 18446744073709551615ULL, ERANGE); check("-18446744073709551617", 18446744073709551615ULL, ERANGE); #endif if (!bad) @@ -19889,11 +19300,11 @@ case "$d_strtouq" in Checking whether your strtouq() works okay... EOM $cat >try.c <<'EOCP' +#include #include #include -extern unsigned long long int strtouq(char *s, char **, int); static int bad = 0; -void check(char *s, unsigned long long eull, int een) { +void check(const char *s, unsigned long long eull, int een) { unsigned long long gull; errno = 0; gull = strtouq(s, 0, 10); @@ -19909,7 +19320,7 @@ int main() { check("-1", 18446744073709551615ULL, 0); check("-18446744073709551614", 2LL, 0); check("-18446744073709551615", 1LL, 0); - check("-18446744073709551616", 18446744073709551615ULL, ERANGE); + check("-18446744073709551616", 18446744073709551615ULL, ERANGE); check("-18446744073709551617", 18446744073709551615ULL, ERANGE); #endif if (!bad) @@ -19955,6 +19366,18 @@ eval $hasproto set sysconf d_sysconf eval $inlibc +: see if sys_errlist[] exists +echo " " +if test "X$d_syserrlst" = X; then + if set sys_errlist val -a d_syserrlst; eval $csym; $val; then + echo "You have sys_errlist[], so we could roll our own strerror." + d_syserrlst="$define" + else + echo "You don't have sys_errlist[], so strerror() is welcome." + d_syserrlst="$undef" + fi +fi + : see if system exists set system d_system eval $inlibc @@ -19986,10 +19409,7 @@ $cat >try.c < #endif -#$i_string I_STRING -#ifdef I_STRING -# include -#endif +#include #$i_langinfo I_LANGINFO #ifdef I_LANGINFO # include @@ -20010,52 +19430,52 @@ thread_start(void * arg) } int main() { - char * main_buffer; - char save_main_buffer[1000]; - pthread_t subthread; - pthread_attr_t attr; - - main_buffer = nl_langinfo_l(CODESET, newlocale(LC_ALL_MASK, "C", 0)); - - /* If too large for our generous allowance, just assume we don't have - * it. */ - if (strlen(main_buffer) >= sizeof(save_main_buffer)) { - exit(1); - } + char * main_buffer; + char save_main_buffer[1000]; + pthread_t subthread; + pthread_attr_t attr; - strcpy(save_main_buffer, main_buffer); + main_buffer = nl_langinfo_l(CODESET, newlocale(LC_ALL_MASK, "C", 0)); - if (pthread_attr_init(&attr) != 0) { - exit(1); - } + /* If too large for our generous allowance, just assume we don't have + * it. */ + if (strlen(main_buffer) >= sizeof(save_main_buffer)) { + exit(1); + } - if (pthread_create(&subthread, &attr, thread_start, NULL) != 0) { - exit(1); - } + strcpy(save_main_buffer, main_buffer); - if (pthread_join(subthread, NULL) != 0) { - exit(1); - } + if (pthread_attr_init(&attr) != 0) { + exit(1); + } + + if (pthread_create(&subthread, &attr, thread_start, NULL) != 0) { + exit(1); + } + + if (pthread_join(subthread, NULL) != 0) { + exit(1); + } - exit(! (strcmp(main_buffer, save_main_buffer) == 0)); + exit(! (strcmp(main_buffer, save_main_buffer) == 0)); } EOCP case "$usethreads" in define) - set try - if eval $compile; then - echo "Your system has nl_langinfo_l()..." >&4 - if $run ./try; then - echo "and it is thread-safe (just as I'd hoped)." >&4 - d_thread_safe_nl_langinfo_l="$define" - echo "$d_thread_safe_nl_langinfo_l" >&4 - else - echo "but it isn't thread-safe, so we won't use it." >&4 - fi - else - echo "your system does not have nl_langinfo_l()" >&4 - fi - ;; + set try + if eval $compile; then + echo "Your system has nl_langinfo_l()..." >&4 + if $run ./try; then + echo "and it is thread-safe (just as I'd hoped)." >&4 + d_thread_safe_nl_langinfo_l="$define" + echo "$d_thread_safe_nl_langinfo_l" >&4 + else + echo "but it isn't thread-safe, so we won't use it." >&4 + fi + else + echo "your system does not have nl_langinfo_l()" >&4 + fi + ;; *) echo "Since threads aren't selected, we won't bother looking for nl_langinfo_l()" >&4 esac if test X"$d_thread_safe_nl_langinfo_l" = X; then @@ -20127,7 +19547,7 @@ case "$d_tmpnam_r" in esac case "$tmpnam_r_proto" in ''|0) d_tmpnam_r=undef - tmpnam_r_proto=0 + tmpnam_r_proto=0 echo "Disabling tmpnam_r, cannot determine prototype." >&4 ;; * ) case "$tmpnam_r_proto" in REENTRANT_PROTO*) ;; @@ -20148,6 +19568,10 @@ case "$d_tmpnam_r" in ;; esac +: see if towlower exists +set towlower d_towlower +eval $inlibc + : see if trunc exists set trunc d_trunc eval $inlibc @@ -20184,7 +19608,7 @@ case "$d_ttyname_r" in esac case "$ttyname_r_proto" in ''|0) d_ttyname_r=undef - ttyname_r_proto=0 + ttyname_r_proto=0 echo "Disabling ttyname_r, cannot determine prototype." >&4 ;; * ) case "$ttyname_r_proto" in REENTRANT_PROTO*) ;; @@ -20465,14 +19889,10 @@ case "$d_closedir" in #include #else #ifdef I_SYS_DIR -#ifdef hp9000s500 -#include /* may be wrong in the future */ -#else #include #endif #endif #endif -#endif int main() { return closedir(opendir(".")); } EOM set try @@ -20505,6 +19925,10 @@ eval $inlibc set waitpid d_waitpid eval $inlibc +: see if wcrtomb exists +set wcrtomb d_wcrtomb +eval $inlibc + : look for wcscmp echo " " $cat >try.c <<'EOCP' @@ -20708,10 +20132,6 @@ $define) echo " " echo "Checking Berkeley DB version ..." >&4 $cat >try.c < #include #$i_stdlib I_STDLIB @@ -20802,16 +20222,13 @@ define) echo " " echo "Checking return type needed for hash for Berkeley DB ..." >&4 $cat >try.c < #include #ifndef DB_VERSION_MAJOR u_int32_t hash_cb (const void* ptr, size_t size) { + return 0; } HASHINFO info; int main() @@ -20845,16 +20262,13 @@ define) echo " " echo "Checking return type needed for prefix for Berkeley DB ..." >&4 cat >try.c < #include #ifndef DB_VERSION_MAJOR size_t prefix_cb (const DBT *key1, const DBT *key2) { + return 0; } BTREEINFO info; int main() @@ -20921,14 +20335,8 @@ $cat >try.c < -#endif -#ifdef I_STRING -# include -#endif +#include #include /* Note that whether the sign bit is on or off * for NaN depends on the CPU/FPU, and possibly @@ -21117,11 +20525,8 @@ $rm_try : Check the length of the double mantissa $echo "Checking how many mantissa bits your doubles have..." >&4 $cat >try.c < -#endif +#include #ifdef I_SUNMATH # include #endif @@ -21147,11 +20552,8 @@ $rm_try : Check the length of the longdouble mantissa $echo "Checking how many mantissa bits your long doubles have..." >&4 $cat >try.c < -#endif +#include #ifdef I_SUNMATH # include #endif @@ -21412,7 +20814,7 @@ if $test "X$fflushNULL" = X -o "X$fflushall" = X; then fi : check for fflush NULL behavior case "$fflushNULL" in -'') set try -DTRY_FFLUSH_NULL $output +'') set try -DTRY_FFLUSH_NULL $output if eval $compile; then $run ./try 2>/dev/null code="$?" @@ -21546,7 +20948,7 @@ Good, at least fflush(stdin) seems to behave okay when stdin is a pipe. EOM : now check for fflushall behaviour case "$fflushall" in - '') set try -DTRY_FFLUSH_ALL $output + '') set try -DTRY_FFLUSH_ALL $output if eval $compile; then $cat >&4 <&4 fi - : Check if GID is signed echo " " case "$gidtype" in @@ -21716,7 +21117,6 @@ else echo "(I can't compile the test program--guessing unsigned.)" >&4 fi - : Check 64bit sizes echo " " @@ -21739,7 +21139,7 @@ EOCP case "$yyy" in 12345678901) sPRId64='"d"'; sPRIi64='"i"'; sPRIu64='"u"'; - sPRIo64='"o"'; sPRIx64='"x"'; sPRIXU64='"X"'; + sPRIo64='"o"'; sPRIx64='"x"'; sPRIXU64='"X"'; echo "We will use %d." ;; esac @@ -21761,7 +21161,7 @@ EOCP case "$yyy" in 12345678901) sPRId64='"ld"'; sPRIi64='"li"'; sPRIu64='"lu"'; - sPRIo64='"lo"'; sPRIx64='"lx"'; sPRIXU64='"lX"'; + sPRIo64='"lo"'; sPRIx64='"lx"'; sPRIXU64='"lX"'; echo "We will use %ld." ;; esac @@ -21784,7 +21184,7 @@ EOCP case "$yyy" in 12345678901) sPRId64=PRId64; sPRIi64=PRIi64; sPRIu64=PRIu64; - sPRIo64=PRIo64; sPRIx64=PRIx64; sPRIXU64=PRIXU64; + sPRIo64=PRIo64; sPRIx64=PRIx64; sPRIXU64=PRIXU64; echo "We will use the C9X style." ;; esac @@ -21806,7 +21206,7 @@ EOCP case "$yyy" in 12345678901) sPRId64='"Ld"'; sPRIi64='"Li"'; sPRIu64='"Lu"'; - sPRIo64='"Lo"'; sPRIx64='"Lx"'; sPRIXU64='"LX"'; + sPRIo64='"Lo"'; sPRIx64='"Lx"'; sPRIXU64='"LX"'; echo "We will use %Ld." ;; esac @@ -21828,7 +21228,7 @@ EOCP case "$yyy" in 12345678901) sPRId64='"lld"'; sPRIi64='"lli"'; sPRIu64='"llu"'; - sPRIo64='"llo"'; sPRIx64='"llx"'; sPRIXU64='"llX"'; + sPRIo64='"llo"'; sPRIx64='"llx"'; sPRIXU64='"llX"'; echo "We will use the %lld style." ;; esac @@ -21850,7 +21250,7 @@ EOCP case "$yyy" in 12345678901) sPRId64='"qd"'; sPRIi64='"qi"'; sPRIu64='"qu"'; - sPRIo64='"qo"'; sPRIx64='"qx"'; sPRIXU64='"qX"'; + sPRIo64='"qo"'; sPRIx64='"qx"'; sPRIXU64='"qX"'; echo "We will use %qd." ;; esac @@ -22037,15 +21437,10 @@ eval $typedef_ask : see if we need va_copy echo " " -case "$i_stdarg" in -"$define") - $cat >try.c <try.c < #include -#$i_stdlib I_STDLIB -#ifdef I_STDLIB #include -#endif #include int @@ -22077,28 +21472,23 @@ main(int ac, char **av) exit(0); } EOCP - set try - if eval $compile && $run ./try 2>&1 >/dev/null; then - case "`$run ./try`" in - "that's all right, then") - okay=yes - ;; - esac - fi - case "$okay" in - yes) echo "It seems that you don't need va_copy()." >&4 - need_va_copy="$undef" - ;; - *) echo "It seems that va_copy() or similar will be needed." >&4 - need_va_copy="$define" +set try +if eval $compile && $run ./try 2>&1 >/dev/null; then + case "`$run ./try`" in + "that's all right, then") + okay=yes ;; esac - $rm_try - ;; -*) echo "You don't have , not checking for va_copy()." >&4 +fi +case "$okay" in +yes) echo "It seems that you don't need va_copy()." >&4 need_va_copy="$undef" ;; +*) echo "It seems that va_copy() or similar will be needed." >&4 + need_va_copy="$define" + ;; esac +$rm_try : see what type is used for size_t rp="What is the type used for the length parameter for string functions?" @@ -22317,25 +21707,15 @@ else fi $rm -f foo* bar* -: see if this is a values.h system -set values.h i_values -eval $inhdr - : Check the max offset that gmtime and localtime accept echo "Checking max offsets that gmtime () accepts" -case $i_values in - define) yyy="#include " ;; - *) yyy="" ;; - esac - case "$sGMTIME_min/$sGMTIME_max" in 0/0|/) $cat >try.c < #include #include -$yyy int i; struct tm *tmp; @@ -22414,7 +21794,6 @@ case "$sLOCALTIME_min/$sLOCALTIME_max" in #include #include #include -$yyy int i; struct tm *tmp; @@ -22883,17 +22262,17 @@ case "$doinit" in yes) echo "Generating a list of signal names and numbers..." >&4 . ./signal_cmd - sig_count=`$awk '/^NSIG/ { printf "%d", $2 }' signal.lst` - sig_name=`$awk 'BEGIN { printf "ZERO " } - !/^NSIG/ { printf "%s ", $1 }' signal.lst` - sig_num=`$awk 'BEGIN { printf "0 " } - !/^NSIG/ { printf "%d ", $2 }' signal.lst` - sig_name_init=`$awk 'BEGIN { printf "\"ZERO\", " } - !/^NSIG/ { printf "\"%s\", ", $1 } - END { printf "0\n" }' signal.lst` - sig_num_init=`$awk 'BEGIN { printf "0, " } - !/^NSIG/ { printf "%d, ", $2} - END { printf "0\n"}' signal.lst` + sig_count=`$awk '/^NSIG/ { printf "%d", $2 }' signal.lst` + sig_name=`$awk 'BEGIN { printf "ZERO " } + !/^NSIG/ { printf "%s ", $1 }' signal.lst` + sig_num=`$awk 'BEGIN { printf "0 " } + !/^NSIG/ { printf "%d ", $2 }' signal.lst` + sig_name_init=`$awk 'BEGIN { printf "\"ZERO\", " } + !/^NSIG/ { printf "\"%s\", ", $1 } + END { printf "0\n" }' signal.lst` + sig_num_init=`$awk 'BEGIN { printf "0, " } + !/^NSIG/ { printf "%d, ", $2} + END { printf "0\n"}' signal.lst` ;; esac echo "The following $sig_count signals are available:" @@ -22952,7 +22331,6 @@ else echo "(I can't compile the test program--guessing $sizesize.)" >&4 fi - : check for socklen_t echo " " echo "Checking to see if you have socklen_t..." >&4 @@ -23225,7 +22603,6 @@ else echo "(I can't compile the test program--guessing unsigned.)" >&4 fi - : Check format string for UID echo " " $echo "Checking the format string to be used for uids..." >&4 @@ -23490,21 +22867,6 @@ case "$usesitecustomize" in ;; esac -: see if prototypes support variable argument declarations -echo " " -case "$prototype$i_stdarg" in -$define$define) - echo "It appears we'll be able to prototype varargs functions." >&4 - val="$define" - ;; -*) - echo "Too bad... We won't be using prototyped varargs functions..." >&4 - val="$undef" - ;; -esac -set vaproto -eval $setvar - : determine compiler compiler case "$yacc" in '') @@ -23536,10 +22898,6 @@ case "$yacc" in ;; esac -: see if this is a assert.h system -set assert.h i_assert -eval $inhdr - : see if this is a bfd.h system set bfd.h i_bfd eval $inhdr @@ -23663,7 +23021,7 @@ FAVOR_BSD FILE_OFFSET_BITS FORTIFY_SOURCE FreeBSD GCC_NEW_VARARGS gcos gcx gimpel GLIBC GLIBC_MINOR GNUC GNUC_MINOR GNU_LIBRARY GNU_SOURCE GO32 gould GOULD_PN H3050R H3050RX hbullx20 hcx host_mips hp200 hp300 HP700 hp700 -hp800 hp9000 hp9000s200 hp9000s300 hp9000s400 hp9000s500 +hp800 hp9000 hp9000s200 hp9000s300 hp9000s400 hp9000s700 hp9000s800 hp9k8 hppa hpux HPUX_SOURCE hp_osf i186 i286 i386 i486 i586 i686 i8086 i80960 i860 I960 IA32 IA64 iAPX286 ibm ibm032 ibmesa IBMR2 ibmrt ILP32 ILP64 @@ -23677,7 +23035,7 @@ M68000 m68k m88100 m88k M88KBCS_TARGET MACH machine MachTen MATH_HAS_NO_SIDE_EFFECTS mc300 mc500 mc68000 mc68010 mc68020 mc68030 mc68040 mc68060 mc68k mc68k32 mc700 mc88000 mc88100 merlin mert MiNT mips MIPSEB MIPSEL MIPS_FPSET MIPS_ISA MIPS_SIM -MIPS_SZINT MIPS_SZLONG MIPS_SZPTR MODERN_C motorola mpeix MSDOS +MIPS_SZINT MIPS_SZLONG MIPS_SZPTR MODERN_C motorola MSDOS MTXINU MULTIMAX MVS mvs M_AMD64 M_ARM M_ARMT M_COFF M_I186 M_I286 M_I386 M_I8086 M_I86 M_I86SM M_IA64 M_IX86 M_PPC M_SYS3 M_SYS5 M_SYSIII M_SYSV M_UNIX M_X86 M_XENIX @@ -23762,7 +23120,7 @@ cat <<'EOSH' >> Cppsym.try printf "#ifdef _%s\nprintf(\"_%s=%%s\\n\", STRINGIFY(_%s));\n#endif\n", $1, $1, $1 printf "#ifdef __%s\nprintf(\"__%s=%%s\\n\", STRINGIFY(__%s));\n#endif\n", $1, $1, $1 printf "#ifdef __%s__\nprintf(\"__%s__=%%s\\n\", STRINGIFY(__%s__));\n#endif\n", $1, $1, $1 -}' >> try.c +}' >> try.c echo 'return 0;}' >> try.c EOSH cat <> Cppsym.try @@ -23868,7 +23226,7 @@ fi : add -D_FORTIFY_SOURCE if feasible and not already there case "$gccversion" in -[4567].*) case "$optimize$ccflags" in +[456789].*|[1-9][0-9]*) case "$optimize$ccflags" in *-O*) case "$ccflags$cppsymbols" in *_FORTIFY_SOURCE=*) # Don't add it again. echo "You seem to have -D_FORTIFY_SOURCE already, not adding it." >&4 @@ -23886,6 +23244,24 @@ case "$gccversion" in ;; esac +: script used to emit important warnings +cat >warn <msg +else + cat >msg +fi +echo "*** WARNING:" >&4 +sed -e 's/^/*** /' &4 +echo "*** " >&4 +cat msg >>config.msg +echo " " >>config.msg +rm -f msg +EOS +chmod +x warn +$eunicefix warn + : see if this is a termio system val="$undef" val2="$undef" @@ -23970,10 +23346,6 @@ $rm_try set i_stdbool eval $setvar -: see if stddef is available -set stddef.h i_stddef -eval $inhdr - : see if stdint is available set stdint.h i_stdint eval $inhdr @@ -24180,11 +23552,6 @@ for xxx in $xs_extensions ; do $define) avail_ext="$avail_ext $xxx" ;; esac ;; - I18N/Langinfo|i18n_lan) - case "$i_langinfo$d_nl_langinfo" in - $define$define) avail_ext="$avail_ext $xxx" ;; - esac - ;; IPC/SysV|ipc/sysv) : XXX Do we need a useipcsysv variable here case "${d_msg}${d_sem}${d_shm}" in @@ -24238,6 +23605,11 @@ for xxx in $xs_extensions ; do true|$define|y) avail_ext="$avail_ext $xxx" ;; esac ;; + I18N/Langinfo|langinfo) + case "$uselanginfo" in + true|define|y) avail_ext="$avail_ext $xxx" ;; + esac + ;; Sys/Syslog|sys/syslog) case $osname in amigaos) ;; # not really very useful on AmigaOS @@ -24619,7 +23991,6 @@ _o='$_o' afs='$afs' afsroot='$afsroot' alignbytes='$alignbytes' -ansi2knr='$ansi2knr' aphostname='$aphostname' api_revision='$api_revision' api_subversion='$api_subversion' @@ -24695,6 +24066,7 @@ d_PRIu64='$d_PRIu64' d_PRIx64='$d_PRIx64' d_SCNfldbl='$d_SCNfldbl' d__fwalk='$d__fwalk' +d_accept4='$d_accept4' d_access='$d_access' d_accessx='$d_accessx' d_acosh='$d_acosh' @@ -24707,6 +24079,7 @@ d_asinh='$d_asinh' d_atanh='$d_atanh' d_atolf='$d_atolf' d_atoll='$d_atoll' +d_attribute_always_inline='$d_attribute_always_inline' d_attribute_deprecated='$d_attribute_deprecated' d_attribute_format='$d_attribute_format' d_attribute_malloc='$d_attribute_malloc' @@ -24716,8 +24089,6 @@ d_attribute_pure='$d_attribute_pure' d_attribute_unused='$d_attribute_unused' d_attribute_warn_unused_result='$d_attribute_warn_unused_result' d_backtrace='$d_backtrace' -d_bcmp='$d_bcmp' -d_bcopy='$d_bcopy' d_bsd='$d_bsd' d_bsdgetpgrp='$d_bsdgetpgrp' d_bsdsetpgrp='$d_bsdsetpgrp' @@ -24726,12 +24097,10 @@ d_builtin_choose_expr='$d_builtin_choose_expr' d_builtin_expect='$d_builtin_expect' d_builtin_mul_overflow='$d_builtin_mul_overflow' d_builtin_sub_overflow='$d_builtin_sub_overflow' -d_bzero='$d_bzero' d_c99_variadic_macros='$d_c99_variadic_macros' d_casti32='$d_casti32' d_castneg='$d_castneg' d_cbrt='$d_cbrt' -d_charvspr='$d_charvspr' d_chown='$d_chown' d_chroot='$d_chroot' d_chsize='$d_chsize' @@ -24739,7 +24108,6 @@ d_class='$d_class' d_clearenv='$d_clearenv' d_closedir='$d_closedir' d_cmsghdr_s='$d_cmsghdr_s' -d_const='$d_const' d_copysign='$d_copysign' d_copysignl='$d_copysignl' d_cplusplus='$d_cplusplus' @@ -24751,7 +24119,6 @@ d_ctermid_r='$d_ctermid_r' d_ctime64='$d_ctime64' d_ctime_r='$d_ctime_r' d_cuserid='$d_cuserid' -d_dbl_dig='$d_dbl_dig' d_dbminitproto='$d_dbminitproto' d_difftime64='$d_difftime64' d_difftime='$d_difftime' @@ -24774,6 +24141,7 @@ d_double_style_vax='$d_double_style_vax' d_drand48_r='$d_drand48_r' d_drand48proto='$d_drand48proto' d_dup2='$d_dup2' +d_dup3='$d_dup3' d_duplocale='$d_duplocale' d_eaccess='$d_eaccess' d_endgrent='$d_endgrent' @@ -24902,13 +24270,13 @@ d_gmtime64='$d_gmtime64' d_gmtime_r='$d_gmtime_r' d_gnulibc='$d_gnulibc' d_grpasswd='$d_grpasswd' +d_has_C_UTF8='$d_has_C_UTF8' d_hasmntopt='$d_hasmntopt' d_htonl='$d_htonl' d_hypot='$d_hypot' d_ilogb='$d_ilogb' d_ilogbl='$d_ilogbl' d_inc_version_list='$d_inc_version_list' -d_index='$d_index' d_inetaton='$d_inetaton' d_inetntop='$d_inetntop' d_inetpton='$d_inetpton' @@ -24969,21 +24337,18 @@ d_lstat='$d_lstat' d_madvise='$d_madvise' d_malloc_good_size='$d_malloc_good_size' d_malloc_size='$d_malloc_size' +d_malloc_usable_size='$d_malloc_usable_size' d_mblen='$d_mblen' d_mbrlen='$d_mbrlen' d_mbrtowc='$d_mbrtowc' d_mbstowcs='$d_mbstowcs' d_mbtowc='$d_mbtowc' -d_memchr='$d_memchr' -d_memcmp='$d_memcmp' -d_memcpy='$d_memcpy' d_memmem='$d_memmem' -d_memmove='$d_memmove' d_memrchr='$d_memrchr' -d_memset='$d_memset' d_mkdir='$d_mkdir' d_mkdtemp='$d_mkdtemp' d_mkfifo='$d_mkfifo' +d_mkostemp='$d_mkostemp' d_mkstemp='$d_mkstemp' d_mkstemps='$d_mkstemps' d_mktime64='$d_mktime64' @@ -25028,6 +24393,7 @@ d_pathconf='$d_pathconf' d_pause='$d_pause' d_perl_otherlibdirs='$d_perl_otherlibdirs' d_phostname='$d_phostname' +d_pipe2='$d_pipe2' d_pipe='$d_pipe' d_poll='$d_poll' d_portable='$d_portable' @@ -25069,9 +24435,6 @@ d_rewinddir='$d_rewinddir' d_rint='$d_rint' d_rmdir='$d_rmdir' d_round='$d_round' -d_safebcpy='$d_safebcpy' -d_safemcpy='$d_safemcpy' -d_sanemcmp='$d_sanemcmp' d_sbrkproto='$d_sbrkproto' d_scalbn='$d_scalbn' d_scalbnl='$d_scalbnl' @@ -25096,6 +24459,7 @@ d_sethostent_r='$d_sethostent_r' d_setitimer='$d_setitimer' d_setlinebuf='$d_setlinebuf' d_setlocale='$d_setlocale' +d_setlocale_accepts_any_locale_name='$d_setlocale_accepts_any_locale_name' d_setlocale_r='$d_setlocale_r' d_setnent='$d_setnent' d_setnetent_r='$d_setnetent_r' @@ -25147,7 +24511,6 @@ d_socket='$d_socket' d_socklen_t='$d_socklen_t' d_sockpair='$d_sockpair' d_socks5_init='$d_socks5_init' -d_sprintf_returns_strlen='$d_sprintf_returns_strlen' d_sqrtl='$d_sqrtl' d_srand48_r='$d_srand48_r' d_srandom_r='$d_srandom_r' @@ -25166,11 +24529,7 @@ d_stdio_ptr_lval_sets_cnt='$d_stdio_ptr_lval_sets_cnt' d_stdio_stream_array='$d_stdio_stream_array' d_stdiobase='$d_stdiobase' d_stdstdio='$d_stdstdio' -d_strchr='$d_strchr' d_strcoll='$d_strcoll' -d_strctcpy='$d_strctcpy' -d_strerrm='$d_strerrm' -d_strerror='$d_strerror' d_strerror_l='$d_strerror_l' d_strerror_r='$d_strerror_r' d_strftime='$d_strftime' @@ -25178,6 +24537,7 @@ d_strlcat='$d_strlcat' d_strlcpy='$d_strlcpy' d_strnlen='$d_strnlen' d_strtod='$d_strtod' +d_strtod_l='$d_strtod_l' d_strtol='$d_strtol' d_strtold='$d_strtold' d_strtold_l='$d_strtold_l' @@ -25207,6 +24567,8 @@ d_times='$d_times' d_tm_tm_gmtoff='$d_tm_tm_gmtoff' d_tm_tm_zone='$d_tm_tm_zone' d_tmpnam_r='$d_tmpnam_r' +d_towlower='$d_towlower' +d_towupper='$d_towupper' d_trunc='$d_trunc' d_truncate='$d_truncate' d_truncl='$d_truncl' @@ -25232,11 +24594,10 @@ d_vfork='$d_vfork' d_void_closedir='$d_void_closedir' d_voidsig='$d_voidsig' d_voidtty='$d_voidtty' -d_volatile='$d_volatile' -d_vprintf='$d_vprintf' d_vsnprintf='$d_vsnprintf' d_wait4='$d_wait4' d_waitpid='$d_waitpid' +d_wcrtomb='$d_wcrtomb' d_wcscmp='$d_wcscmp' d_wcstombs='$d_wcstombs' d_wcsxfrm='$d_wcsxfrm' @@ -25348,7 +24709,6 @@ i64type='$i64type' i8size='$i8size' i8type='$i8type' i_arpainet='$i_arpainet' -i_assert='$i_assert' i_bfd='$i_bfd' i_bsdioctl='$i_bsdioctl' i_crypt='$i_crypt' @@ -25359,7 +24719,6 @@ i_dlfcn='$i_dlfcn' i_execinfo='$i_execinfo' i_fcntl='$i_fcntl' i_fenv='$i_fenv' -i_float='$i_float' i_fp='$i_fp' i_fp_class='$i_fp_class' i_gdbm='$i_gdbm' @@ -25370,13 +24729,10 @@ i_ieeefp='$i_ieeefp' i_inttypes='$i_inttypes' i_langinfo='$i_langinfo' i_libutil='$i_libutil' -i_limits='$i_limits' i_locale='$i_locale' i_machcthr='$i_machcthr' i_malloc='$i_malloc' i_mallocmalloc='$i_mallocmalloc' -i_math='$i_math' -i_memory='$i_memory' i_mntent='$i_mntent' i_ndbm='$i_ndbm' i_netdb='$i_netdb' @@ -25392,12 +24748,9 @@ i_rpcsvcdbm='$i_rpcsvcdbm' i_sgtty='$i_sgtty' i_shadow='$i_shadow' i_socks='$i_socks' -i_stdarg='$i_stdarg' i_stdbool='$i_stdbool' -i_stddef='$i_stddef' i_stdint='$i_stdint' i_stdlib='$i_stdlib' -i_string='$i_string' i_sunmath='$i_sunmath' i_sysaccess='$i_sysaccess' i_sysdir='$i_sysdir' @@ -25434,11 +24787,9 @@ i_time='$i_time' i_unistd='$i_unistd' i_ustat='$i_ustat' i_utime='$i_utime' -i_values='$i_values' -i_varargs='$i_varargs' -i_varhdr='$i_varhdr' i_vfork='$i_vfork' i_wchar='$i_wchar' +i_wctype='$i_wctype' i_xlocale='$i_xlocale' ignore_versioned_solibs='$ignore_versioned_solibs' inc_version_list='$inc_version_list' @@ -25598,7 +24949,6 @@ prefixexp='$prefixexp' privlib='$privlib' privlibexp='$privlibexp' procselfexe='$procselfexe' -prototype='$prototype' ptrsize='$ptrsize' quadkind='$quadkind' quadtype='$quadtype' @@ -25709,7 +25059,6 @@ stdio_filbuf='$stdio_filbuf' stdio_ptr='$stdio_ptr' stdio_stream_array='$stdio_stream_array' strerror_r_proto='$strerror_r_proto' -strings='$strings' submit='$submit' subversion='$subversion' sysman='$sysman' @@ -25761,6 +25110,7 @@ usedtrace='$usedtrace' usefaststdio='$usefaststdio' useithreads='$useithreads' usekernprocpathname='$usekernprocpathname' +uselanginfo='$uselanginfo' uselargefiles='$uselargefiles' uselongdouble='$uselongdouble' usemallocwrap='$usemallocwrap' @@ -25790,7 +25140,6 @@ uvsize='$uvsize' uvtype='$uvtype' uvuformat='$uvuformat' uvxformat='$uvxformat' -vaproto='$vaproto' vendorarch='$vendorarch' vendorarchexp='$vendorarchexp' vendorbin='$vendorbin'