# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
#
-# Generated on Sat Jul 29 02:22:13 EET DST 2000 [metaconfig 3.0 PL70]
+# Generated on Wed Aug 16 02:10:47 EET DST 2000 [metaconfig 3.0 PL70]
# (with additional metaconfig patches by perlbug@perl.com)
cat >/tmp/c1$$ <<EOF
d_pipe=''
d_poll=''
d_portable=''
+d_printf_exp_digits=''
d_old_pthread_create_joinable=''
old_pthread_create_joinable=''
d_pthread_yield=''
i_iconv=''
i_ieeefp=''
i_inttypes=''
+i_libutil=''
i_limits=''
i_locale=''
i_machcthr=''
archname64=''
use64bitall=''
use64bitint=''
+ccflags_uselargefiles=''
+ldflags_uselargefiles=''
+libswanted_uselargefiles=''
uselargefiles=''
uselongdouble=''
usemorebits=''
libswanted=''
: some systems want to use only the non-versioned libso:s
ignore_versioned_solibs=''
+ccflags_uselargefiles=''
+ldflags_uselargefiles=''
+libswanted_uselargefiles=''
: set usemultiplicity on the Configure command line to enable multiplicity.
: set usesocks on the Configure command line to enable socks.
: set usethreads on the Configure command line to enable threads.
You may safely delete it if you wish.
EOF
+xpatchlevel=`awk '/define[ ]+PERL_VERSION/ {print $3}' $rsrc/patchlevel.h`
+case "$usedevel" in
+$define|true|[yY]*) ;;
+*) case "$xpatchlevel" in
+ *[13579])
+ cat >&4 <<EOH
+*** WHOA THERE!!! ***
+
+ This is an UNSTABLE DEVELOPMENT release.
+ (The patchlevel, $xpatchlevel, is odd--as opposed to even,
+ and that signifies a development release. If you want a
+ maintenance release, you want an even-numbered release.)
+
+ Do ***NOT*** install this into production use.
+ Data corruption and crashes are possible.
+
+ It is most seriously suggested that you do not continue any further
+ unless you want to help in developing and debugging Perl.
+
+EOH
+ rp='Do you really want to continue?'
+ dflt='n'
+ . ./myread
+ case "$ans" in
+ [yY]) echo >&4 "Okay, continuing." ;;
+ *) echo >&4 "Okay, bye."
+ exit 1
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+esac
+
: general instructions
needman=true
firsttime=true
esac
case "$gccversion" in
'') gccosandvers='' ;;
-*) gccosandvers=`gcc -v 2>&1|grep '/specs$'|sed 's!.*/[^-]*-[^-]*-\([^/]*\)/'$gccversion'/specs$!\1!'`
+*) gccshortvers=`echo "$gccversion"|sed 's/ .*//'`
+ gccosandvers=`$cc -v 2>&1|grep '/specs$'|sed "s!.*/[^-/]*-[^-/]*-\([^-/]*\)/$gccshortvers/specs!\1!"`
+ gccshortvers=''
case "$gccosandvers" in
- $osname$osvers) ;;
+ $osname) gccosandvers='' ;; # linux gccs seem to have no linux osvers, grr
+ $osname$osvers) ;; # looking good
$osname*) cat <<EOM >&4
*** WHOA THERE!!! ***
I'm trying to be optimistic here, though, and will continue.
If later during the configuration and build icky compilation
- problems appear, I suggest reinstalling the gcc to match
+ problems appear (headerfile conflicts being the most common
+ manifestation), I suggest reinstalling the gcc to match
your operating system release.
EOM
;;
- *) ;; # failed to parse, better be silent
+ *) gccosandvers='' ;; # failed to parse, better be silent
esac
;;
esac
set poll d_poll
eval $inlibc
+echo " "
+echo "Checking how many exponent digits your sprintf formats use..."
+$cat >try.c <<'EOSC'
+#include <stdio.h>
+int main() {
+ char b[10];
+ exit(sprintf(b, "%0.1e", 1.2) - 5);
+}
+EOSC
+set try
+if eval $compile; then
+ ./try$_exe
+ case "$?" in
+ 2|3) d_printf_exp_digits=$? ;;
+ esac
+fi
+case "$d_printf_exp_digits" in
+2|3) echo "Your sprintf seems to use $d_printf_exp_digits exponent digits."
+ ;;
+*) cat <<EOM >&4
+I do not understand what your sprintf is saying.
+I'm guessing it uses at least 2 exponent digits.
+EOM
+ d_printf_exp_digits=2
+ ;;
+esac
+$rm -f try try.*
+
: see whether the various POSIXish _yields exist
$cat >try.c <<EOP
set ieeefp.h i_ieeefp
eval $inhdr
+: see if this is a libutil.h system
+set libutil.h i_libutil
+eval $inhdr
+
: see if locale.h is available
set locale.h i_locale
eval $inhdr
EOSH
./tr '[a-z]' '[A-Z]' < Cppsym.know > Cppsym.a
./tr '[A-Z]' '[a-z]' < Cppsym.know > Cppsym.b
-$cat Cppsym.a Cppsym.b | $tr ' ' $trnl | sort | uniq > Cppsym.know
-$rm -f Cppsym.a Cppsym.b
+$cat Cppsym.know > Cppsym.c
+$cat Cppsym.a Cppsym.b Cppsym.c | $tr ' ' $trnl | sort | uniq > Cppsym.know
+$rm -f Cppsym.a Cppsym.b Cppsym.c
cat <<EOSH > Cppsym
$startsh
if $test \$# -gt 0; then
ccflags="$ccflags"
case "$osname-$gccversion" in
irix-) ccflags="\$ccflags -woff 1178" ;;
+os2-*) ccflags="\$ccflags -Zlinker /PM:VIO" ;;
esac
$cc $optimize \$ccflags $ldflags -o try try.c $libs && ./try$exe_ext
EOSH
else
if $test -s ccsym.com; then
echo "Your C compiler and pre-processor define these symbols:"
- $sed -e 's/\(.*\)=.*/\1/' ccsym.com
+ $sed -e 's/\(..*\)=.*/\1/' ccsym.com
also='also '
symbols='ones'
cppccsymbols=`$cat ccsym.com`
if $test -s ccsym.cpp; then
$test "$also" && echo " "
echo "Your C pre-processor ${also}defines the following symbols:"
- $sed -e 's/\(.*\)=.*/\1/' ccsym.cpp
+ $sed -e 's/\(..*\)=.*/\1/' ccsym.cpp
also='further '
cppsymbols=`$cat ccsym.cpp`
cppsymbols=`echo $cppsymbols`
if $test -s ccsym.own; then
$test "$also" && echo " "
echo "Your C compiler ${also}defines the following cpp symbols:"
- $sed -e 's/\(.*\)=1/\1/' ccsym.own
- $sed -e 's/\(.*\)=.*/\1/' ccsym.own | $uniq >>Cppsym.true
+ $sed -e 's/\(..*\)=1/\1/' ccsym.own
+ $sed -e 's/\(..*\)=.*/\1/' ccsym.own | $uniq >>Cppsym.true
ccsymbols=`$cat ccsym.own`
ccsymbols=`echo $ccsymbols`
$test "$silent" || sleep 1
fi
fi
-$rm -f ccsym*
+$rm -f ccsym* Cppsym.*
: see if this is a termio system
val="$undef"
cccdlflags='$cccdlflags'
ccdlflags='$ccdlflags'
ccflags='$ccflags'
+ccflags_uselargefiles='$ccflags_uselargefiles'
ccsymbols='$ccsymbols'
cf_by='$cf_by'
cf_email='$cf_email'
d_pipe='$d_pipe'
d_poll='$d_poll'
d_portable='$d_portable'
+d_printf_exp_digits='$d_printf_exp_digits'
d_pthread_yield='$d_pthread_yield'
d_pwage='$d_pwage'
d_pwchange='$d_pwchange'
i_iconv='$i_iconv'
i_ieeefp='$i_ieeefp'
i_inttypes='$i_inttypes'
+i_libutil='$i_libutil'
i_limits='$i_limits'
i_locale='$i_locale'
i_machcthr='$i_machcthr'
ld='$ld'
lddlflags='$lddlflags'
ldflags='$ldflags'
+ldflags_uselargefiles='$ldflags_uselargefiles'
ldlibpthname='$ldlibpthname'
less='$less'
lib_ext='$lib_ext'
libsfound='$libsfound'
libspath='$libspath'
libswanted='$libswanted'
+libswanted_uselargefiles='$libswanted_uselargefiles'
line='$line'
lint='$lint'
lkflags='$lkflags'