diff options
-rwxr-xr-x | Configure | 82 | ||||
-rw-r--r-- | Porting/Glossary | 2 | ||||
-rw-r--r-- | Porting/config.sh | 4 | ||||
-rw-r--r-- | Porting/config_H | 4 | ||||
-rw-r--r-- | config_h.SH | 2 |
5 files changed, 52 insertions, 42 deletions
@@ -20,7 +20,7 @@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # -# Generated on Thu May 20 10:07:46 EET DST 1999 [metaconfig 3.0 PL70] +# Generated on Sat May 22 00:54:37 EET DST 1999 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ <<EOF @@ -10975,7 +10975,7 @@ $cat >try.c <<EOCP #include <stdio.h> #$t_unistd I_UNISTD #ifdef I_UNISTD -#include <unistd.h> +# include <unistd.h> #endif #$d_sysconf HAS_SYSCONF #$d_stdio_stream_array HAS_STDIO_STREAM_ARRAY @@ -11053,12 +11053,16 @@ case "$fflushNULL" in '') set try -DTRY_FFLUSH_NULL $output $rm -f try.out if eval $compile; then - $cat >&4 <<EOM -(This test may fail, saying "Core dumped" or something equally evil.) -EOM ./try$exe_ext 2>/dev/null - if $test -s try.out -a "X$?" = X42; then + code="$?" + if $test -s try.out -a "X$code" = X42; then fflushNULL="`$cat try.out`" + else + if $test "X$code" != X42; then + $cat >&4 <<EOM +(If this test failed, don't worry, we'll try another method shortly.) +EOM + fi fi fi $rm -f core try.core core.try.* @@ -11088,51 +11092,51 @@ $define|true|[yY]*) fflushNULL="$undef" ;; esac -: check for fflush all behaviour -case "$fflushall" in -'') set try -DTRY_FFLUSH_ALL $output - $rm -f try.out - if eval $compile; then +: check explicit looping only if NULL did not work +case "$fflushNULL" in +"$undef") + : check for fflush all behaviour + case "$fflushall" in + '') set try -DTRY_FFLUSH_ALL $output + $rm -f try.out + if eval $compile; then $cat >&4 <<EOM -(Also this test may fail.) +(Now testing the other method--but note that also this may fail.) EOM - ./try$exe_ext 2>/dev/null - if $test -s try.out -a "X$?" = X42; then - fflushall="`$cat try.out`" + ./try$exe_ext 2>/dev/null + if $test -s try.out -a "X$?" = X42; then + fflushall="`$cat try.out`" + fi fi - fi - $rm -f core try.core core.try.* - case "$fflushall" in - x) $cat >&4 <<EOM -Flushing explicitly all the stdio streams works. + $rm -f core try.core core.try.* + case "$fflushall" in + x) $cat >&4 <<EOM +Whew. Flushing explicitly all the stdio streams works. EOM - fflushall="$define" - ;; - '') $cat >&4 <<EOM -Flushing explicitly all the stdio streams doesn't work. + fflushall="$define" + ;; + '') $cat >&4 <<EOM +Sigh. Flushing explicitly all the stdio streams doesn't work. EOM - fflushall="$undef" - ;; - *) $cat >&4 <<EOM + fflushall="$undef" + ;; + *) $cat >&4 <<EOM Cannot figure out whether flushing stdio streams explicitly works or not. I'm assuming it doesn't. EOM - fflushall="$undef" + fflushall="$undef" + ;; + esac ;; - esac - case "$fflushall$fflushNULL" in - undefdefine) - $cat >&4 <<EOM -(That's ok. I'll use fflush(NULL) instead.) -EOM + "$define"|true|[yY]*) + fflushall="$define" + ;; + *) + fflushall="$undef" ;; esac ;; -$define|true|[yY]*) - fflushall="$define" - ;; -*) - fflushall="$undef" +*) fflushall="$undef" ;; esac case "$fflushNULL$fflushall" in diff --git a/Porting/Glossary b/Porting/Glossary index 070027b991..8256ea8375 100644 --- a/Porting/Glossary +++ b/Porting/Glossary @@ -1659,6 +1659,8 @@ fflushall (fflushall.U): This symbol, if defined, tells that to flush all pending stdio output one must loop through all the stdio file handles stored in an array and fflush them. + Note that if fflushNULL is defined, fflushall will not + even be probed for and will be left undefined. fflushNULL (fflushall.U): This symbol, if defined, tells that fflush(NULL) does flush diff --git a/Porting/config.sh b/Porting/config.sh index fc3bacf1d3..f9e944729a 100644 --- a/Porting/config.sh +++ b/Porting/config.sh @@ -8,7 +8,7 @@ # Package name : perl5 # Source directory : . -# Configuration time: Thu May 20 09:56:03 EET DST 1999 +# Configuration time: Sat May 22 00:43:12 EET DST 1999 # Configured by : jhi # Target system : osf1 alpha.hut.fi v4.0 878 alpha @@ -55,7 +55,7 @@ ccflags='-pthread -std -DLANGUAGE_C' ccsymbols='__LANGUAGE_C__=1 _LONGLONG=1 LANGUAGE_C=1 SYSTYPE_BSD=1' cf_by='jhi' cf_email='yourname@yourhost.yourplace.com' -cf_time='Thu May 20 09:56:03 EET DST 1999' +cf_time='Sat May 22 00:43:12 EET DST 1999' chgrp='' chmod='' chown='' diff --git a/Porting/config_H b/Porting/config_H index 135308adf9..e215393dae 100644 --- a/Porting/config_H +++ b/Porting/config_H @@ -17,7 +17,7 @@ /* * Package name : perl5 * Source directory : . - * Configuration time: Thu May 20 09:56:03 EET DST 1999 + * Configuration time: Sat May 22 00:43:12 EET DST 1999 * Configured by : jhi * Target system : osf1 alpha.hut.fi v4.0 878 alpha */ @@ -2213,6 +2213,8 @@ * This symbol, if defined, tells that to flush * all pending stdio output one must loop through all * the stdio file handles stored in an array and fflush them. + * Note that if fflushNULL is defined, fflushall will not + * even be probed for and will be left undefined. */ #define FFLUSH_NULL /**/ /*#define FFLUSH_ALL / **/ diff --git a/config_h.SH b/config_h.SH index ae4ba196d6..97f084e35c 100644 --- a/config_h.SH +++ b/config_h.SH @@ -2227,6 +2227,8 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- * This symbol, if defined, tells that to flush * all pending stdio output one must loop through all * the stdio file handles stored in an array and fflush them. + * Note that if fflushNULL is defined, fflushall will not + * even be probed for and will be left undefined. */ #$fflushNULL FFLUSH_NULL /**/ #$fflushall FFLUSH_ALL /**/ |