diff options
-rw-r--r-- | hints/linux.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/hints/linux.sh b/hints/linux.sh index 7dccc1cc07..2b6e5d5f75 100644 --- a/hints/linux.sh +++ b/hints/linux.sh @@ -56,6 +56,33 @@ if test -L /lib/libc.so.6; then libc=/lib/$libc fi +# glibc 2.2.90 and above apparently change stdio streams so Perl's +# direct buffer manipulation no longer works. The Configure tests +# should be changed to correctly detect this, but until then, +# the following check should at least let perl compile and run. +# (This quick fix should be updated before 5.8.1.) +# Since we just computed libc above, we'll use it here. A typical +# value looks like libc='/lib/libc-2.0.6.so' +# To be defensive, reject all unknown versions > 2.2.9. +# A. Dougherty, May. 30, 2001 +case "$libc" in +*-2.[01]*) ;; +*-2.2.so) ;; +*-2.2.[0-9].*) ;; +*) # Honor a command-line override + if test -z "$d_stdstdio"; then + d_stdstdio="$undef" + cat <<'EOM' >&4 + +Disabling perl's stdio buffer snooping. This will generate a harmless + *** WHOA THERE!!! *** +message in Configure. Accept the recommended value. +Read hints/linux.sh for further information. +EOM + fi + ;; +esac + # Configure may fail to find lstat() since it's a static/inline # function in <sys/stat.h>. d_lstat=define |