X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Configure;h=b788f76c1c90b827c70a0701d8dd2fc00ea9efce;hb=1d7cb664dc49858d069c4ad7e05c059b1003a3cd;hp=24b62efb7e4b62419658e72712b4ead32656258c;hpb=ad5513430ad41d3071839f83eb3da57da67fe68e;p=p5sagit%2Fp5-mst-13.2.git diff --git a/Configure b/Configure index 24b62ef..b788f76 100755 --- a/Configure +++ b/Configure @@ -20,7 +20,7 @@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # -# Generated on Sat Feb 12 03:16:21 EET 2000 [metaconfig 3.0 PL70] +# Generated on Thu Mar 2 21:42:14 EET 2000 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ <> posthint.sh ;; *) echo "$me: unknown -A command '$xxx', ignoring -A $1" >&2 ;; esac + shift ;; -V) echo "$me generated by metaconfig 3.0 PL70." >&2 exit 0;; @@ -1874,7 +1888,6 @@ ln more nm nroff -perl pg test uname @@ -2400,12 +2413,12 @@ EOM : specified already. case "$hintfile" in ''|' ') - file=`echo "${osname}_${osvers}" | $sed -e 's@\.@_@g' -e 's@_$@@'` + file=`echo "${osname}_${osvers}" | $sed -e 's%\.%_%g' -e 's%_$%%'` : Also try without trailing minor version numbers. - xfile=`echo $file | $sed -e 's@_[^_]*$@@'` - xxfile=`echo $xfile | $sed -e 's@_[^_]*$@@'` - xxxfile=`echo $xxfile | $sed -e 's@_[^_]*$@@'` - xxxxfile=`echo $xxxfile | $sed -e 's@_[^_]*$@@'` + xfile=`echo $file | $sed -e 's%_[^_]*$%%'` + xxfile=`echo $xfile | $sed -e 's%_[^_]*$%%'` + xxxfile=`echo $xxfile | $sed -e 's%_[^_]*$%%'` + xxxxfile=`echo $xxxfile | $sed -e 's%_[^_]*$%%'` case "$file" in '') dflt=none ;; *) case "$osvers" in @@ -2608,21 +2621,23 @@ $undef$define) . ./whoa; eval "$var=\$tu";; *) eval "$var=$val";; esac' +case "$usethreads" in +$define|true|[yY]*) dflt='y';; +*) dflt='n';; +esac cat </dev/null|tail -1` + $test -f "$xxx" && eval $libscheck + $test -f "$xxx" && libstyle=shared + fi + if test ! -f "$xxx"; then + xxx=$thisdir/lib$thislib.$so + $test -f "$xxx" && eval $libscheck + $test -f "$xxx" && libstyle=shared + fi + if test ! -f "$xxx"; then + xxx=$thisdir/lib$thislib$_a + $test -f "$xxx" && eval $libscheck + $test -f "$xxx" && libstyle=static + fi + if test ! -f "$xxx"; then + xxx=$thisdir/$thislib$_a + $test -f "$xxx" && eval $libscheck + $test -f "$xxx" && libstyle=static + fi + if test ! -f "$xxx"; then + xxx=$thisdir/lib${thislib}_s$_a + $test -f "$xxx" && eval $libscheck + $test -f "$xxx" && libstyle=static + $test -f "$xxx" && thislib=${thislib}_s + fi + if test ! -f "$xxx"; then + xxx=$thisdir/Slib$thislib$_a + $test -f "$xxx" && eval $libscheck + $test -f "$xxx" && libstyle=static + fi + if $test -f "$xxx"; then case "$libstyle" in - shared) echo "Found -l$libname (shared)." ;; - static) echo "Found -l$libname." ;; - *) echo "Found -l$libname ($libstyle)." ;; + shared) echo "Found -l$thislib (shared)." ;; + static) echo "Found -l$thislib." ;; + *) echo "Found -l$thislib ($libstyle)." ;; esac case " $dflt " in *"-l$thislib "*);; - *) dflt="$dflt -l$libname" + *) dflt="$dflt -l$thislib" libsfound="$libsfound $xxx" yyy=`basename $xxx` libsfiles="$libsfiles $yyy" - yyy=`echo $xxx|sed "s@/$yyy\\$@@"` + yyy=`echo $xxx|$sed -e "s%/$yyy\\$%%"` case " $libsdirs " in *" $yyy "*) ;; *) libsdirs="$libsdirs $yyy" ;; esac ;; esac - else - echo "No -l$thislib." + break + fi + done + if $test ! -f "$xxx"; then + echo "No -l$thislib." fi done set X $dflt @@ -4191,7 +4229,7 @@ set off_t lseektype long stdio.h sys/types.h eval $typedef_ask echo " " -$echo $n "Checking to see how big your file offsets are...$c" >&4 +echo "Checking to see how big your file offsets are..." >&4 $cat >try.c < #include @@ -4204,7 +4242,7 @@ EOCP set try if eval $compile_ok; then lseeksize=`./try` - $echo " $lseeksize bytes." >&4 + echo "Your file offsets are $lseeksize bytes long." else dflt=$longsize echo " " @@ -4225,7 +4263,7 @@ case "$fpostype" in *_t) zzz="$fpostype" ;; *) zzz="fpos_t" ;; esac -$echo $n "Checking the size of $zzz...$c" >&4 +echo "Checking the size of $zzz..." >&4 cat > try.c < #include @@ -4239,16 +4277,15 @@ if eval $compile_ok; then yyy=`./try` case "$yyy" in '') fpossize=4 - echo " " echo "(I can't execute the test program--guessing $fpossize.)" >&4 ;; *) fpossize=$yyy - echo " $fpossize bytes." + echo "Your $zzz is $fpossize bytes long." ;; esac else dflt="$longsize" - echo " " + echo " " >&4 echo "(I can't compile the test program. Guessing...)" >&4 rp="What is the size of your file positions (in bytes)?" . ./myread @@ -4257,23 +4294,34 @@ fi +# Backward compatibility (uselfs is deprecated). +case "$uselfs" in +"$define"|true|[yY]*) + cat <&4 + +*** Configure -Duselfs is deprecated, using -Duselargefiles instead. +EOM + uselargefiles="$define" + ;; +esac + case "$lseeksize:$fpossize" in 8:8) cat <&4 + echo "Rechecking to see how big your file offsets are..." >&4 $cat >try.c < #include @@ -4306,7 +4354,7 @@ EOCP set try if eval $compile_ok; then lseeksize=`./try` - $echo " $lseeksize bytes." >&4 + $echo "Your file offsets are now $lseeksize bytes long." else dflt="$lseeksize" echo " " @@ -4337,7 +4385,7 @@ EOCP echo "(I can't execute the test program--guessing $fpossize.)" >&4 ;; *) fpossize=$yyy - echo " $fpossize bytes." + echo " $fpossize bytes." >&4 ;; esac else @@ -4356,7 +4404,7 @@ esac case "$usemorebits" in "$define"|true|[yY]*) - use64bits="$define" + use64bitint="$define" uselongdouble="$define" usemorebits="$define" ;; @@ -4365,28 +4413,84 @@ case "$usemorebits" in esac -case "$intsize:$longsize" in -8:*|*:8) cat <&4 + +*** Configure -Duselonglong is deprecated, using -Duse64bitint instead. +EOM + use64bitint="$define" + ;; +esac +case "$use64bits" in +"$define"|true|[yY]*) + cat <&4 + +*** Configure -Duse64bits is deprecated, using -Duse64bitint instead. +EOM + use64bitint="$define" + ;; +esac +case "$use64bitints" in +"$define"|true|[yY]*) + cat <&4 + +*** There is no Configure -Duse64bitints, using -Duse64bitint instead. +EOM + use64bitint="$define" + ;; +esac +case "$use64bitsint" in +"$define"|true|[yY]*) + cat <&4 + +*** There is no Configure -Duse64bitsint, using -Duse64bitint instead. +EOM + use64bitint="$define" + ;; +esac +case "$uselonglongs" in +"$define"|true|[yY]*) + cat <&4 + +*** There is no Configure -Duselonglongs, using -Duse64bitint instead. +EOM + use64bitint="$define" + ;; +esac +case "$use64bitsall" in +"$define"|true|[yY]*) + cat <&4 -You have natively 64-bit integers. +*** There is no Configure -Duse64bitsall, using -Duse64bitall instead. +EOM + use64bitall="$define" + ;; +esac + +case "$ccflags" in +*-DUSE_LONG_LONG*|*-DUSE_64_BIT_INT*|*-DUSE_64_BIT_ALL*) use64bitint="$define";; +esac +case "$use64bitall" in +"$define"|true|[yY]*) use64bitint="$define" ;; +esac + +case "$longsize" in +8) cat <&4 if $test -r $rsrc/patchlevel.h;then + revision=`awk '/define[ ]+PERL_REVISION/ {print $3}' $rsrc/patchlevel.h` patchlevel=`awk '/define[ ]+PERL_VERSION/ {print $3}' $rsrc/patchlevel.h` subversion=`awk '/define[ ]+PERL_SUBVERSION/ {print $3}' $rsrc/patchlevel.h` api_revision=`awk '/define[ ]+PERL_API_REVISION/ {print $3}' $rsrc/patchlevel.h` api_version=`awk '/define[ ]+PERL_API_VERSION/ {print $3}' $rsrc/patchlevel.h` api_subversion=`awk '/define[ ]+PERL_API_SUBVERSION/ {print $3}' $rsrc/patchlevel.h` else + revision=0 patchlevel=0 subversion=0 api_revision=0 api_version=0 api_subversion=0 fi -$echo $n "(You have $package" $c -case "$package" in -"*$baserev") ;; -*) $echo $n " $baserev" $c ;; -esac +$echo $n "(You have $package revision $revision" $c $echo $n " patchlevel $patchlevel" $c test 0 -eq "$subversion" || $echo $n " subversion $subversion" $c echo ".)" case "$osname" in dos|vms) : XXX Should be a Configure test for double-dots in filenames. - version=`echo $baserev $patchlevel $subversion | \ + version=`echo $revision $patchlevel $subversion | \ $awk '{ printf "%d_%d_%d\n", $1, $2, $3 }'` api_versionstring=`echo $api_revision $api_version $api_subversion | \ $awk '{ printf "%d_%d_%d\n", $1, $2, $3 }'` ;; *) - version=`echo $baserev $patchlevel $subversion | \ + version=`echo $revision $patchlevel $subversion | \ $awk '{ printf "%d.%d.%d\n", $1, $2, $3 }'` api_versionstring=`echo $api_revision $api_version $api_subversion | \ $awk '{ printf "%d.%d.%d\n", $1, $2, $3 }'` @@ -4682,7 +4817,7 @@ case "$installstyle" in *) dflt='lib/perl5' ;; esac ;; -*) dflt='lib/perl5' ;; +*) dflt="$installstyle" ;; esac : Probably not worth prompting for this since we prompt for all : the directories individually, and the prompt would be too long and @@ -5116,7 +5251,12 @@ EOM rp='Do you want to configure vendor-specific add-on directories?' case "$usevendorprefix" in define|true|[yY]*) dflt=y ;; -*) dflt=n ;; +*) : User may have set vendorprefix directly on Configure command line. + case "$vendorprefix" in + ''|' ') dflt=n ;; + *) dflt=y ;; + esac + ;; esac . ./myread case "$ans" in @@ -5127,6 +5267,7 @@ case "$ans" in *) dflt=$vendorprefix ;; esac . ./getfile + : XXX Prefixit unit does not yet support siteprefix and vendorprefix oldvendorprefix='' case "$vendorprefix" in '') ;; @@ -5154,24 +5295,30 @@ case "$vendorprefix" in *) d_vendorlib="$define" : determine where vendor-supplied modules go. : Usual default is /usr/local/lib/perl5/vendor_perl/$version - prog=`echo $package | $sed 's/-*[0-9.]*$//'` - case "$installstyle" in - *lib/perl5*) dflt=$vendorprefix/lib/$package/vendor_$prog/$version ;; - *) dflt=$vendorprefix/lib/vendor_$prog/$version ;; + case "$vendorlib" in + '') + prog=`echo $package | $sed 's/-*[0-9.]*$//'` + case "$installstyle" in + *lib/perl5*) dflt=$vendorprefix/lib/$package/vendor_$prog/$version ;; + *) dflt=$vendorprefix/lib/vendor_$prog/$version ;; + esac + ;; + *) dflt="$vendorlib" + ;; esac fn=d~+ rp='Pathname for the vendor-supplied library files?' . ./getfile vendorlib="$ans" vendorlibexp="$ansexp" - : Change installation prefix, if necessary. - if $test X"$prefix" != X"$installprefix"; then - installvendorlib=`echo $vendorlibexp | $sed "s#^$prefix#$installprefix#"` - else - installvendorlib="$vendorlibexp" - fi ;; esac +: Change installation prefix, if necessary. +if $test X"$prefix" != X"$installprefix"; then + installvendorlib=`echo $vendorlibexp | $sed "s#^$prefix#$installprefix#"` +else + installvendorlib="$vendorlibexp" +fi : Cruising for prototypes echo " " @@ -5234,6 +5381,28 @@ else installbin="$binexp" fi +: Find perl5.005 or later. +echo "Looking for a previously installed perl5.005 or later... " +case "$perl5" in +'') for tdir in `echo "$binexp:$PATH" | $sed "s/$path_sep/ /g"`; do + : Check if this perl is recent and can load a simple module + if $test -x $tdir/perl && $tdir/perl -Mless -e 'use 5.005;' >/dev/null 2>&1; then + perl5=$tdir/perl + break; + elif $test -x $tdir/perl5 && $tdir/perl5 -Mless -e 'use 5.005;' >/dev/null 2>&1; then + perl5=$tdir/perl + break; + fi + done + ;; +*) perl5="$perl5" + ;; +esac +case "$perl5" in +'') echo "None found. That's ok.";; +*) echo "Using $perl5." ;; +esac + $cat < getverlist <&4 -You requested the use of long doubles but you do not seem to have -the mathematic functions for long doubles. I'm disabling the use -of long doubles. +*** You requested the use of long doubles but you do not seem to have +*** the mathematic functions for long doubles. I'm disabling the use +*** of long doubles. + EOM uselongdouble=$undef ;; esac +case "$useperlio" in +$define|true|[yY]*) dflt='y';; +*) dflt='n';; +esac cat <&4 + echo "Checking to see how big your double precision numbers are..." >&4 $cat >try.c <<'EOCP' #include int main() @@ -7116,7 +7305,7 @@ EOCP set try if eval $compile_ok; then doublesize=`./try` - $echo " $doublesize bytes." >&4 + echo "Your double is $doublesize bytes long." else dflt='8' echo "(I can't seem to compile the test program. Guessing...)" @@ -7130,15 +7319,15 @@ $rm -f try.c try : check for long doubles echo " " -$echo $n "Checking to see if your system supports long double..." $c >&4 +echo "Checking to see if you have long double..." >&4 echo 'int main() { long double x = 7.0; }' > try.c set try if eval $compile; then val="$define" - echo " Yes, it does." >&4 + echo "You have long double." else val="$undef" - echo " No, it doesn't." >&4 + echo "You do not have long double." fi $rm try.* set d_longdbl @@ -7148,7 +7337,7 @@ eval $setvar case "${d_longdbl}${longdblsize}" in $define) echo " " - $echo $n "Checking to see how big your long doubles are..." $c >&4 + echo "Checking to see how big your long doubles are..." >&4 $cat >try.c <<'EOCP' #include int main() @@ -7160,7 +7349,7 @@ EOCP set try if eval $compile; then longdblsize=`./try$exe_ext` - $echo " $longdblsize bytes." >&4 + echo "Your long doubles are $longdblsize bytes long." else dflt='8' echo " " @@ -7176,118 +7365,6 @@ EOCP esac $rm -f try.* try -: Check how to convert floats to strings. -if test "X$d_Gconvert" = X; then - echo " " - echo "Checking for an efficient way to convert floats to strings." - $cat >try.c < - -#define I_STDLIB $i_stdlib -#ifdef I_STDLIB -#include -#endif - -int -checkit(expect, got) -char *expect; -char *got; -{ - if (strcmp(expect, got)) { - printf("%s oddity: Expected %s, got %s\n", - myname, expect, got); - exit(1); - } -} - -int main() -{ - char buf[64]; - buf[63] = '\0'; - - /* This must be 1st test on (which?) platform */ - /* Alan Burlison */ - Gconvert((DOUBLETYPE)0.1, 8, 0, buf); - checkit("0.1", buf); - - Gconvert((DOUBLETYPE)1.0, 8, 0, buf); - checkit("1", buf); - - Gconvert((DOUBLETYPE)0.0, 8, 0, buf); - checkit("0", buf); - - Gconvert((DOUBLETYPE)-1.0, 8, 0, buf); - checkit("-1", buf); - - /* Some Linux gcvt's give 1.e+5 here. */ - Gconvert((DOUBLETYPE)100000.0, 8, 0, buf); - checkit("100000", buf); - - /* Some Linux gcvt's give -1.e+5 here. */ - Gconvert((DOUBLETYPE)-100000.0, 8, 0, buf); - checkit("-100000", buf); - - exit(0); -} -EOP - case "$d_Gconvert" in - gconvert*) xxx_list='gconvert gcvt sprintf' ;; - gcvt*) xxx_list='gcvt gconvert sprintf' ;; - sprintf*) xxx_list='sprintf gconvert gcvt' ;; - *) xxx_list='gconvert gcvt sprintf' ;; - esac - - case "$d_longdbl$uselongdouble" in - definedefine) xxx_list="`echo $xxx_list|sed 's/gcvt/qgcvt gcvt/'`" ;; - esac - - for xxx_convert in $xxx_list; do - echo "Trying $xxx_convert..." - $rm -f try try$_o - set try -DTRY_$xxx_convert - if eval $compile; then - echo "$xxx_convert() found." >&4 - if ./try; then - echo "I'll use $xxx_convert to convert floats into a string." >&4 - break; - else - echo "...But $xxx_convert didn't work as I expected." - fi - else - echo "$xxx_convert NOT found." >&4 - fi - done - - case "$xxx_convert" in - gconvert) d_Gconvert='gconvert((x),(n),(t),(b))' ;; - gcvt) d_Gconvert='gcvt((x),(n),(b))' ;; - qgcvt) d_Gconvert='qgcvt((x),(n),(b))' ;; - *) d_Gconvert='sprintf((b),"%.*g",(n),(x))' ;; - esac -fi - echo " " if $test X"$d_longdbl" = X"$define"; then @@ -7368,36 +7445,189 @@ int main() { long double d = 123.456; printf("%.3lf\n", d); } -EOCP - set try - if eval $compile; then - yyy=`./try$exe_ext` - case "$yyy" in - 123.456) - sPRIfldbl='"lf"'; sPRIgldbl='"lg"'; sPRIeldbl='"le"'; - sPRIFldbl='"lF"'; sPRIGldbl='"lG"'; sPRIEldbl='"lE"'; - echo "We will use %lf." - ;; - esac - fi -fi +EOCP + set try + if eval $compile; then + yyy=`./try$exe_ext` + case "$yyy" in + 123.456) + sPRIfldbl='"lf"'; sPRIgldbl='"lg"'; sPRIeldbl='"le"'; + sPRIFldbl='"lF"'; sPRIGldbl='"lG"'; sPRIEldbl='"lE"'; + echo "We will use %lf." + ;; + esac + fi +fi + +if $test X"$sPRIfldbl" = X; then + echo "Cannot figure out how to print long doubles." >&4 +fi + +$rm -f try try.* + +fi # d_longdbl + +case "$sPRIfldbl" in +'') d_PRIfldbl="$undef"; d_PRIgldbl="$undef"; d_PRIeldbl="$undef"; + d_PRIFldbl="$undef"; d_PRIGldbl="$undef"; d_PRIEldbl="$undef"; + ;; +*) d_PRIfldbl="$define"; d_PRIgldbl="$define"; d_PRIeldbl="$define"; + d_PRIFldbl="$define"; d_PRIGldbl="$define"; d_PRIEldbl="$define"; + ;; +esac + +: Check how to convert floats to strings. +if test "X$d_Gconvert" = X; then + echo " " + echo "Checking for an efficient way to convert floats to strings." + echo " " > try.c + case "$uselongdouble" in + "$define") echo "#define USE_LONG_DOUBLE" >>try.c ;; + esac + case "$d_longdbl" in + "$define") echo "#define HAS_LONG_DOUBLE" >>try.c ;; + esac + case "$d_PRIgldbl" in + "$define") echo "#define HAS_PRIgldbl" >>try.c ;; + esac + $cat >>try.c < + +#define I_STDLIB $i_stdlib +#ifdef I_STDLIB +#include +#endif + +int +checkit(expect, got) +char *expect; +char *got; +{ + if (strcmp(expect, got)) { + printf("%s oddity: Expected %s, got %s\n", + myname, expect, got); + exit(1); + } +} -if $test X"$sPRIfldbl" = X; then - echo "Cannot figure out how to print long doubles." >&4 -fi +int main() +{ + char buf[64]; + buf[63] = '\0'; -$rm -f try try.* + /* This must be 1st test on (which?) platform */ + /* Alan Burlison */ + Gconvert((DOUBLETYPE)0.1, 8, 0, buf); + checkit("0.1", buf); -fi # d_longdbl + Gconvert((DOUBLETYPE)1.0, 8, 0, buf); + checkit("1", buf); -case "$sPRIfldbl" in -'') d_PRIfldbl="$undef"; d_PRIgldbl="$undef"; d_PRIeldbl="$undef"; - d_PRIFldbl="$undef"; d_PRIGldbl="$undef"; d_PRIEldbl="$undef"; - ;; -*) d_PRIfldbl="$define"; d_PRIgldbl="$define"; d_PRIeldbl="$define"; - d_PRIFldbl="$define"; d_PRIGldbl="$define"; d_PRIEldbl="$define"; - ;; -esac + Gconvert((DOUBLETYPE)1.1, 8, 0, buf); + checkit("1.1", buf); + + Gconvert((DOUBLETYPE)1.01, 8, 0, buf); + checkit("1.01", buf); + + Gconvert((DOUBLETYPE)1.001, 8, 0, buf); + checkit("1.001", buf); + + Gconvert((DOUBLETYPE)1.0001, 8, 0, buf); + checkit("1.0001", buf); + + Gconvert((DOUBLETYPE)1.00001, 8, 0, buf); + checkit("1.00001", buf); + + Gconvert((DOUBLETYPE)1.000001, 8, 0, buf); + checkit("1.000001", buf); + + Gconvert((DOUBLETYPE)0.0, 8, 0, buf); + checkit("0", buf); + + Gconvert((DOUBLETYPE)-1.0, 8, 0, buf); + checkit("-1", buf); + + /* Some Linux gcvt's give 1.e+5 here. */ + Gconvert((DOUBLETYPE)100000.0, 8, 0, buf); + checkit("100000", buf); + + /* Some Linux gcvt's give -1.e+5 here. */ + Gconvert((DOUBLETYPE)-100000.0, 8, 0, buf); + checkit("-100000", buf); + + exit(0); +} +EOP + case "$d_Gconvert" in + gconvert*) xxx_list='gconvert gcvt sprintf' ;; + gcvt*) xxx_list='gcvt gconvert sprintf' ;; + sprintf*) xxx_list='sprintf gconvert gcvt' ;; + *) xxx_list='gconvert gcvt sprintf' ;; + esac + + case "$d_longdbl$uselongdouble$d_qgcvt" in + "$define$define$define") xxx_list="`echo $xxx_list|sed 's/gcvt/qgcvt gcvt/'`" ;; + esac + + for xxx_convert in $xxx_list; do + echo "Trying $xxx_convert..." + $rm -f try try$_o + set try -DTRY_$xxx_convert + if eval $compile; then + echo "$xxx_convert() found." >&4 + if ./try; then + echo "I'll use $xxx_convert to convert floats into a string." >&4 + break; + else + echo "...But $xxx_convert didn't work as I expected." + fi + else + echo "$xxx_convert NOT found." >&4 + fi + done + + case "$xxx_convert" in + gconvert) d_Gconvert='gconvert((x),(n),(t),(b))' ;; + gcvt) d_Gconvert='gcvt((x),(n),(b))' ;; + qgcvt) d_Gconvert='qgcvt((x),(n),(b))' ;; + *) case "$uselongdouble$d_longdbl$d_PRIgldbl" in + "$define$define$define") + d_Gconvert="sprintf((b),\"%.*$sPRIgldbl\",(n),(x))" ;; + *) d_Gconvert='sprintf((b),"%.*g",(n),(x))' ;; + esac + ;; + esac +fi : Initialize h_fcntl h_fcntl=false @@ -8785,43 +9015,20 @@ set fpathconf d_fpathconf eval $inlibc -: check for off64_t -echo " " -echo "Checking to see if your system supports off64_t..." >&4 -$cat >try.c < -#include -int main() { off64_t x = 7; }' -EOCP -set try -if eval $compile; then - val="$define" - echo "Yes, it does." -else - val="$undef" - echo "No, it doesn't." - case "$lseeksize" in - 8) echo "(Your off_t is 64 bits, so you could use that.)" ;; - esac -fi -$rm -f try.* try -set d_off64_t -eval $setvar - : check for fpos64_t echo " " -echo "Checking to see if your system supports fpos64_t..." >&4 +echo "Checking to see if you have fpos64_t..." >&4 $cat >try.c < -int main() { fpos64_t x x = 7; }' +#include +int main() { fpos64_t x = 7; } EOCP set try if eval $compile; then val="$define" - echo "Yes, it does." + echo "You have fpos64_t." else val="$undef" - echo "No, it doesn't." + echo "You do not have fpos64_t." case "$fpossize" in 8) echo "(Your fpos_t is 64 bits, so you could use that.)" ;; esac @@ -8907,6 +9114,11 @@ esac set getcwd d_getcwd eval $inlibc + +: see if getfsstat exists +set getfsstat d_getfsstat +eval $inlibc + : see if getgrent exists set getgrent d_getgrent eval $inlibc @@ -9269,7 +9481,7 @@ eval $setvar : check for int64_t echo " " -$echo $n "Checking to see if your system supports int64_t...$c" >&4 +echo "Checking to see if you have int64_t..." >&4 $cat >try.c < #$i_inttypes I_INTTYPES @@ -9281,13 +9493,13 @@ EOCP set try if eval $compile; then val="$define" - echo " Yes, it does." >&4 + echo "You have int64_t." else val="$undef" - echo " No, it doesn't." >&4 + echo "You do not have int64_t." fi $rm -f try try.* -set d_int64t +set d_int64_t eval $setvar : Look for isascii @@ -9392,15 +9604,15 @@ eval $inlibc : check for long long echo " " -$echo $n "Checking to see if your system supports long long..." $c >&4 +echo "Checking to see if you have long long..." >&4 echo 'int main() { long long x = 7; return 0; }' > try.c set try if eval $compile; then val="$define" - echo " Yes, it does." >&4 + echo "You have have long long." else val="$undef" - echo " No, it doesn't." >&4 + echo "You do not have long long." fi $rm try.* set d_longlong @@ -9410,7 +9622,7 @@ eval $setvar case "${d_longlong}${longlongsize}" in $define) echo " " - $echo $n "Checking to see how big your long longs are..." $c >&4 + echo "Checking to see how big your long longs are..." >&4 $cat >try.c <<'EOCP' #include int main() @@ -9422,7 +9634,7 @@ EOCP set try if eval $compile_ok; then longlongsize=`./try$exe_ext` - $echo " $longlongsize bytes." >&4 + echo "Your long longs are $longlongsize bytes long." else dflt='8' echo " " @@ -9438,10 +9650,19 @@ EOCP esac $rm -f try.* try +: see if prototype for lseek is available +echo " " +set d_lseekproto lseek $i_systypes sys/types.h $i_unistd unistd.h +eval $hasproto + : see if lstat exists set lstat d_lstat eval $inlibc +: see if madvise exists +set madvise d_madvise +eval $inlibc + : see if mblen exists set mblen d_mblen eval $inlibc @@ -9498,6 +9719,33 @@ eval $inlibc set mktime d_mktime eval $inlibc +: see if this is a sys/mman.h system +set sys/mman.h i_sysmman +eval $inhdr + +: see if mmap exists +set mmap d_mmap +eval $inlibc +: see what shmat returns +: default to something harmless +mmaptype='void *' +case "$i_sysmman$d_mmap" in +"$define$define") + $cat >mmap.c <<'END' +#include +void *mmap(); +END + if $cc $ccflags -c mmap.c >/dev/null 2>&1; then + mmaptype='void *' + else + mmaptype='caddr_t' + fi + echo "and it returns ($mmaptype)." >&4 + ;; +esac + + + : see if mprotect exists set mprotect d_mprotect eval $inlibc @@ -9598,7 +9846,7 @@ case "$intsize" in eval $setvar quadkind=3 ;; - *) case "$d_int64t" in + *) case "$d_int64_t" in define) val=int64_t set quadtype @@ -9620,7 +9868,7 @@ case "$quadtype" in '') echo "Alas, no 64-bit integer types in sight." >&4 d_quad="$undef" ;; -*) if test X"$use64bits" = Xdefine -o X"$longsize" = X8; then +*) if test X"$use64bitint" = Xdefine -o X"$longsize" = X8; then verb="will" else verb="could" @@ -9664,7 +9912,7 @@ $rm -f try.c try echo " " $echo "Choosing the C types to be used for Perl's internal types..." >&4 -case "$use64bits:$d_quad:$quadtype" in +case "$use64bitint:$d_quad:$quadtype" in define:define:?*) ivtype="$quadtype" uvtype="$uquadtype" @@ -9867,6 +10115,30 @@ esac $rm -f try.* try + +: check for off64_t +echo " " +echo "Checking to see if you have off64_t..." >&4 +$cat >try.c < +#include +int main() { off64_t x = 7; } +EOCP +set try +if eval $compile; then + val="$define" + echo "You have off64_t." +else + val="$undef" + echo "You do not have off64_t." + case "$lseeksize" in + 8) echo "(Your off_t is 64 bits, so you could use that.)" ;; + esac +fi +$rm -f try.* try +set d_off64_t +eval $setvar + : see if POSIX threads are available set pthread.h i_pthread eval $inhdr @@ -11445,7 +11717,7 @@ case "$crosscompile" in esac case "$osname" in -next|rhapsody) multiarch="$define" ;; +next|rhapsody|darwin) multiarch="$define" ;; esac case "$multiarch" in ''|[nN]*) multiarch="$undef" ;; @@ -11467,11 +11739,20 @@ EOM *) case "$alignbytes" in '') echo "Checking alignment constraints..." >&4 - $cat >try.c <<'EOCP' + if $test "X$uselongdouble" = Xdefine -a "X$d_longdbl" = Xdefine; then + $cat >try.c <<'EOCP' +typedef long double NV; +EOCP + else + $cat >try.c <<'EOCP' +typedef double NV; +EOCP + fi + $cat >>try.c <<'EOCP' #include struct foobar { char foo; - double bar; + NV bar; } try_algn; int main() { @@ -11498,6 +11779,9 @@ EOCP esac +: set the base revision +baserev=5.0 + : check for ordering of bytes in a long echo " " case "$crosscompile$multiarch" in @@ -12274,7 +12558,7 @@ if eval $compile_ok; then echo "(I can't execute the test program--guessing $gidsize.)" >&4 ;; *) gidsize=$yyy - echo "Your $zzz size is $gidsize bytes." + echo "Your $zzz is $gidsize bytes long." ;; esac else @@ -12603,33 +12887,6 @@ case "$make_set_make" in *) echo "Nope, it doesn't.";; esac -: see if this is a sys/mman.h system -set sys/mman.h i_sysmman -eval $inhdr - -: see if mmap exists -set mmap d_mmap -eval $inlibc -: see what shmat returns -: default to something harmless -mmaptype='void *' -case "$i_sysmman$d_mmap" in -"$define$define") - $cat >mmap.c <<'END' -#include -void *mmap(); -END - if $cc $ccflags -c mmap.c >/dev/null 2>&1; then - mmaptype='void *' - else - mmaptype='caddr_t' - fi - echo "and it returns ($mmaptype)." >&4 - ;; -esac - - - : see what type is used for mode_t rp="What is the type used for file modes for system calls (e.g. fchmod())?" set mode_t modetype int stdio.h sys/types.h @@ -12851,7 +13108,7 @@ pm_apiversion='5.005' echo " " case "$ptrsize" in '') - $echo $n "Checking to see how big your pointers are...$c" >&4 + echo "Checking to see how big your pointers are..." >&4 if test "$voidflags" -gt 7; then echo '#define VOID_PTR char *' > try.c else @@ -12868,7 +13125,7 @@ EOCP set try if eval $compile_ok; then ptrsize=`./try` - $echo " $ptrsize bytes." >&4 + echo "Your pointers are $ptrsize bytes long." else dflt='4' echo "(I can't seem to compile the test program. Guessing...)" >&4 @@ -13332,6 +13589,69 @@ echo $sig_name | $awk \ }' $rm -f signal signal.c signal.awk signal.lst signal_cmd +: check for socklen_t +echo " " +echo "Checking to see if you have socklen_t..." >&4 +$cat >try.c < +#$d_socket HAS_SOCKET +#ifdef HAS_SOCKET +#include +#endif +int main() { socklen_t x = 16; } +EOCP +set try +if eval $compile; then + val="$define" + echo "You have socklen_t." +else + val="$undef" + echo "You do not have socklen_t." + case "$sizetype" in + size_t) echo "(You do have size_t, that might work.)" ;; + esac +fi +$rm -f try try.* +set d_socklen_t +eval $setvar + +: check for type of the size argument to socket calls +case "$d_socket" in +"$define") + $cat <&4 ;; *) uidsize=$yyy - echo "Your $zzz size is $uidsize bytes." + echo "Your $zzz is $uidsize bytes long." ;; esac else @@ -13802,13 +14122,11 @@ cat <<'EOSH' >> Cppsym.try echo '}' >> try.c EOSH cat <> Cppsym.try -cc="$cc" -optimize="$optimize" ccflags="$ccflags" -ldflags="$ldflags" -libs="$libs" -exe_ext="$exe_ext" -$cc $optimize $ccflags $ldflags -o try try.c $libs && ./try$exe_ext +case "$osname-$gccversion" in +irix-) ccflags="\$ccflags -woff 1178" ;; +esac +$cc $optimize \$ccflags $ldflags -o try try.c $libs && ./try$exe_ext EOSH chmod +x Cppsym.try $eunicefix Cppsym.try @@ -14055,6 +14373,10 @@ $rm -f varargs* set stddef.h i_stddef eval $inhdr +: see if this is a sunmath.h system +set sunmath.h i_sunmath +eval $inhdr + : see if sys/access.h is available set sys/access.h i_sysaccess eval $inhdr @@ -14085,6 +14407,11 @@ eval $setvar set syslog.h i_syslog eval $inhdr + +: see if this is a sys/mode.h system +set sys/mode.h i_sysmode +eval $inhdr + : see if sys/resource.h has to be included set sys/resource.h i_sysresrc eval $inhdr @@ -14105,6 +14432,11 @@ eval $inhdr set sys/un.h i_sysun eval $inhdr + +: see if this is a sys/utsname.h system +set sys/utsname.h i_sysutsname +eval $inhdr + : see if this is a syswait system set sys/wait.h i_syswait eval $inhdr @@ -14215,12 +14547,30 @@ for xxx in $known_extensions ; do ;; NDBM_File|ndbm_fil) case "$i_ndbm" in - $define) avail_ext="$avail_ext $xxx" ;; + $define) + case "$osname-$use64bitint" in + hpux-define) + case "$libs" in + *-lndbm*) avail_ext="$avail_ext $xxx" ;; + esac + ;; + *) avail_ext="$avail_ext $xxx" ;; + esac + ;; esac ;; ODBM_File|odbm_fil) case "${i_dbm}${i_rpcsvcdbm}" in - *"${define}"*) avail_ext="$avail_ext $xxx" ;; + *"${define}"*) + case "$osname-$use64bitint" in + hpux-define) + case "$libs" in + *-ldbm*) avail_ext="$avail_ext $xxx" ;; + esac + ;; + *) avail_ext="$avail_ext $xxx" ;; + esac + ;; esac ;; POSIX|posix) @@ -14598,6 +14948,7 @@ d_fstatvfs='$d_fstatvfs' d_ftello='$d_ftello' d_ftime='$d_ftime' d_getcwd='$d_getcwd' +d_getfsstat='$d_getfsstat' d_getgrent='$d_getgrent' d_getgrps='$d_getgrps' d_gethbyaddr='$d_gethbyaddr' @@ -14636,7 +14987,7 @@ d_htonl='$d_htonl' d_iconv='$d_iconv' d_index='$d_index' d_inetaton='$d_inetaton' -d_int64t='$d_int64t' +d_int64_t='$d_int64_t' d_isascii='$d_isascii' d_killpg='$d_killpg' d_lchown='$d_lchown' @@ -14646,7 +14997,9 @@ d_locconv='$d_locconv' d_lockf='$d_lockf' d_longdbl='$d_longdbl' d_longlong='$d_longlong' +d_lseekproto='$d_lseekproto' d_lstat='$d_lstat' +d_madvise='$d_madvise' d_mblen='$d_mblen' d_mbstowcs='$d_mbstowcs' d_mbtowc='$d_mbtowc' @@ -14698,6 +15051,7 @@ d_pwexpire='$d_pwexpire' d_pwgecos='$d_pwgecos' d_pwpasswd='$d_pwpasswd' d_pwquota='$d_pwquota' +d_qgcvt='$d_qgcvt' d_quad='$d_quad' d_readdir='$d_readdir' d_readlink='$d_readlink' @@ -14751,6 +15105,7 @@ d_shmget='$d_shmget' d_sigaction='$d_sigaction' d_sigsetjmp='$d_sigsetjmp' d_socket='$d_socket' +d_socklen_t='$d_socklen_t' d_sockpair='$d_sockpair' d_sqrtl='$d_sqrtl' d_statblks='$d_statblks' @@ -14897,6 +15252,7 @@ i_stdarg='$i_stdarg' i_stddef='$i_stddef' i_stdlib='$i_stdlib' i_string='$i_string' +i_sunmath='$i_sunmath' i_sysaccess='$i_sysaccess' i_sysdir='$i_sysdir' i_sysfile='$i_sysfile' @@ -14905,6 +15261,7 @@ i_sysin='$i_sysin' i_sysioctl='$i_sysioctl' i_syslog='$i_syslog' i_sysmman='$i_sysmman' +i_sysmode='$i_sysmode' i_sysmount='$i_sysmount' i_sysndir='$i_sysndir' i_sysparam='$i_sysparam' @@ -14921,6 +15278,7 @@ i_systimes='$i_systimes' i_systypes='$i_systypes' i_sysuio='$i_sysuio' i_sysun='$i_sysun' +i_sysutsname='$i_sysutsname' i_sysvfs='$i_sysvfs' i_syswait='$i_syswait' i_termio='$i_termio' @@ -14973,6 +15331,7 @@ libs='$libs' libsdirs='$libsdirs' libsfiles='$libsfiles' libsfound='$libsfound' +libspath='$libspath' libswanted='$libswanted' line='$line' lint='$lint' @@ -15039,6 +15398,7 @@ pager='$pager' passcat='$passcat' patchlevel='$patchlevel' path_sep='$path_sep' +perl5='$perl5' perl='$perl' perladmin='$perladmin' perlpath='$perlpath' @@ -15062,6 +15422,7 @@ randfunc='$randfunc' randseedtype='$randseedtype' ranlib='$ranlib' rd_nodata='$rd_nodata' +revision='$revision' rm='$rm' rmail='$rmail' runnm='$runnm' @@ -15113,6 +15474,7 @@ small='$small' so='$so' sockethdr='$sockethdr' socketlib='$socketlib' +socksizetype='$socksizetype' sort='$sort' spackage='$spackage' spitshell='$spitshell' @@ -15160,7 +15522,8 @@ uname='$uname' uniq='$uniq' uquadtype='$uquadtype' use5005threads='$use5005threads' -use64bits='$use64bits' +use64bitall='$use64bitall' +use64bitint='$use64bitint' usedl='$usedl' useithreads='$useithreads' uselargefiles='$uselargefiles'