diff options
Diffstat (limited to 'Configure')
-rwxr-xr-x | Configure | 215 |
1 files changed, 141 insertions, 74 deletions
@@ -20,7 +20,7 @@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # -# Generated on Tue Nov 16 23:04:27 EET 1999 [metaconfig 3.0 PL70] +# Generated on Fri Jan 7 16:14:30 EST 2000 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ <<EOF @@ -746,6 +746,8 @@ ranlib='' package='' spackage='' pager='' +apirevision='' +apisubversion='' apiversion='' patchlevel='' subversion='' @@ -862,6 +864,8 @@ usenm='' useperlio='' usesocks='' d_oldpthreads='' +use5005threads='' +useithreads='' usethreads='' incpath='' mips_type='' @@ -879,8 +883,6 @@ vendorprefix='' vendorprefixexp='' defvoidused='' voidflags='' -pm_apiversion='' -xs_apiversion='' CONFIG='' define='define' @@ -1888,6 +1890,7 @@ comm cp echo expr +find grep ls make @@ -1909,11 +1912,14 @@ date egrep gzip less +line ln more nm nroff +perl pg +sendmail test uname zip @@ -2205,12 +2211,14 @@ EOM osvers="$2.$3" fi fi - $test -f /sys/posix.dll && - $test -f /usr/bin/what && - set X `/usr/bin/what /sys/posix.dll` && - $test "$3" = UWIN && - osname=uwin && - osvers="$5" + + $test -f /sys/posix.dll && + $test -f /usr/bin/what && + set X `/usr/bin/what /sys/posix.dll` && + $test "$3" = UWIN && + osname=uwin && + osvers="$5" + if $test -f $uname; then set X $myuname shift @@ -2260,6 +2268,12 @@ EOM *) osvers=$tmp;; esac ;; + bsd386) osname=bsd386 + osvers=`$uname -r` + ;; + cygwin*) osname=cygwin + osvers="$3" + ;; *dc.osx) osname=dcosx osvers="$3" ;; @@ -2304,17 +2318,17 @@ EOM *) osname=newsos ;; esac ;; - bsd386) osname=bsd386 - osvers=`$uname -r` + next*) osname=next ;; + POSIX-BC | posix-bc ) osname=posix-bc + osvers="$3" ;; - POSIX-BC | posix-bc ) osname=posix-bc - osvers="$3" - ;; powerux | power_ux | powermax_os | powermaxos | \ powerunix | power_unix) osname=powerux osvers="$3" ;; - next*) osname=next ;; + qnx) osname=qnx + osvers="$4" + ;; solaris) osname=solaris case "$3" in 5*) osvers=`echo $3 | $sed 's/^5/2/g'` ;; @@ -2355,9 +2369,6 @@ EOM uts) osname=uts osvers="$3" ;; - qnx) osname=qnx - osvers="$4" - ;; $2) case "$osname" in *isc*) ;; *freebsd*) ;; @@ -2657,11 +2668,52 @@ esac rp='Build a threading Perl?' . ./myread case "$ans" in -y|Y) val="$define" ;; +y|Y) val="$define" ;; *) val="$undef" ;; esac set usethreads -eval $setvar +eval $setvar + +case "$usethreads" in +$define) + $cat <<EOM + +As of 5.5.640, Perl has two different internal threading implementations, +the 5.005 version (5005threads) and an interpreter-based version +(ithreads) that has one interpreter per thread. Both are very +experimental. This arrangement exists to help developers work out +which one is better. +EOM + : Default to ithreads unless overridden on command line or with + : old config.sh + dflt='y' + case "$use5005threads" in + $define|true|[yY]*) dflt='n';; + esac + case "$useithreads" in + $undef|false|[nN]*) dflt='n';; + esac + rp='Use interpreter-based ithreads?' + . ./myread + case "$ans" in + y|Y) val="$define" ;; + *) val="$undef" ;; + esac + set useithreads + eval $setvar + : Now set use5005threads to the opposite value. + case "$useithreads" in + $define) val="$undef" ;; + *) val="$define" ;; + esac + set use5005threads + eval $setvar + ;; +*) + useithreads="$undef" + use5005threads="$undef" + ;; +esac case "$d_oldpthreads" in '') : Configure tests would be welcome here. For now, assume undef. @@ -2686,27 +2738,34 @@ case "$usethreads" in Assuming POSIX threads, then.) EOM fi - ;; + ;; esac -cat <<EOM +case "$useithreads" in +$define|true|[yY]*) + echo "Interpreter threads requested, multiple interpreter support enabled..." >&4 + val="$define" ;; +*) + cat <<EOM -Perl can be built so that multiple Perl interpreters can coexist -within the same Perl executable. To do so, Configure must be run with --Dusemultiplicity. + Perl can be built so that multiple Perl interpreters can coexist + within the same Perl executable. To do so, Configure must be run with + -Dusemultiplicity. -Normally you do not need this and you should answer no. + Normally you do not need this and you should answer no. EOM -case "$usemultiplicity" in -$define|true|[yY]*) dflt='y';; -*) dflt='n';; -esac -rp='Build Perl for multiplicity?' -. ./myread -case "$ans" in -y|Y) val="$define" ;; -*) val="$undef" ;; + case "$usemultiplicity" in + $define|true|[yY]*) dflt='y';; + *) dflt='n';; + esac + rp='Build Perl for multiplicity?' + . ./myread + case "$ans" in + y|Y) val="$define" ;; + *) val="$undef" ;; + esac + ;; esac set usemultiplicity eval $setvar @@ -4595,20 +4654,23 @@ prefixit='case "$3" in esac;; esac' -: set the base revision -baserev=5.0 - -: get the patchlevel +: get the revision, patchlevel, subversion echo " " echo "Getting the current patchlevel..." >&4 if $test -r $rsrc/patchlevel.h;then + baserev=`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` - apiversion=`awk '/define[ ]+PERL_APIVERSION/ {print $3}' $rsrc/patchlevel.h` + apirevision=`awk '/define[ ]+PERL_API_REVISION/ {print $3}' $rsrc/patchlevel.h` + apiversion=`awk '/define[ ]+PERL_API_VERSION/ {print $3}' $rsrc/patchlevel.h` + apisubversion=`awk '/define[ ]+PERL_API_SUBVERSION/ {print $3}' $rsrc/patchlevel.h` else + baserev=0 patchlevel=0 subversion=0 + apirevision=0 apiversion=0 + apisubversion=0 fi $echo $n "(You have $package" $c case "$package" in @@ -4619,14 +4681,14 @@ $echo $n " patchlevel $patchlevel" $c test 0 -eq "$subversion" || $echo $n " subversion $subversion" $c echo ".)" -if test 0 -eq "$subversion"; then +if $test -n $osname -a "$osname" = "dos"; then version=`LC_ALL=C; export LC_ALL; \ - echo $baserev $patchlevel | \ - $awk '{ printf "%.3f\n", $1 + $2/1000.0 }'` + echo $baserev $patchlevel $subversion | \ + $awk '{ printf "%d_%d_%d\n", $1, $2, $3 }'` else version=`LC_ALL=C; export LC_ALL; \ echo $baserev $patchlevel $subversion | \ - $awk '{ printf "%.5f\n", $1 + $2/1000.0 + $3/100000.0 }'` + $awk '{ printf "%d.%d.%d\n", $1, $2, $3 }'` fi : determine installation style @@ -5109,11 +5171,11 @@ case "$vendorprefix" in ;; *) d_vendorlib="$define" : determine where vendor-supplied modules go. - : Usual default is /usr/local/lib/perl5/vendor_perl + : 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 ;; - *) dflt=$vendorprefix/lib/vendor_$prog ;; + *lib/perl5*) dflt=$vendorprefix/lib/$package/vendor_$prog/$version ;; + *) dflt=$vendorprefix/lib/vendor_$prog/$version ;; esac fn=d~+ rp='Pathname for the vendor-supplied library files?' @@ -5905,7 +5967,7 @@ $undef) ;; *) case "$useshrplib" in '') case "$osname" in - svr4*|dgux|dynixptx|esix|powerux|beos) + svr4*|dgux|dynixptx|esix|powerux|beos|cygwin*) dflt=y also='Building a shared libperl is required for dynamic loading to work on your system.' ;; @@ -5975,6 +6037,9 @@ true) linux*) # ld won't link with a bare -lperl otherwise. dflt=libperl.$so ;; + cygwin*) # include version + dflt=`echo libperl$version | sed -e 's/\./_/g'`$lib_ext + ;; *) # Try to guess based on whether libc has major.minor. case "$libc" in *libc.$so.[0-9]*.[0-9]*) dflt=$majmin ;; @@ -6378,13 +6443,13 @@ if $test -d /usr/etc/yp || $test -d /etc/yp; then esac fi case "$hostcat" in -'') hostcat='cat /etc/hosts';; +'') test -f /etc/hosts && hostcat='cat /etc/hosts';; esac case "$groupcat" in -'') groupcat='cat /etc/group';; +'') test -f /etc/group && groupcat='cat /etc/group';; esac case "$passcat" in -'') passcat='cat /etc/passwd';; +'') test -f /etc/passwd && passcat='cat /etc/passwd';; esac : now get the host name @@ -6486,6 +6551,7 @@ case "$myhostname" in $sed -e 's/[ ]*#.*//; s/$/ /' > hosts && \ $test -s hosts } || { + test "X$hostcat" != "X" && $hostcat | $sed -n -e "s/[ ]*#.*//; s/\$/ / /[ ]$myhostname[ . ]/p" > hosts } @@ -6773,13 +6839,13 @@ siteprefix="$ans" siteprefixexp="$ansexp" : determine where site specific libraries go. -: Usual default is /usr/local/lib/perl5/site_perl +: Usual default is /usr/local/lib/perl5/site_perl/$version : The default "style" setting is made in installstyle.U : XXX No longer works with Prefixit stuff. prog=`echo $package | $sed 's/-*[0-9.]*$//'` case "$installstyle" in -*lib/perl5*) dflt=$siteprefix/lib/site_$prog ;; -*) dflt=$siteprefix/lib/site_$prog ;; +*lib/perl5*) dflt=$siteprefix/lib/$package/site_$prog/$version ;; +*) dflt=$siteprefix/lib/site_$prog/$version ;; esac $cat <<EOM @@ -6802,11 +6868,11 @@ else fi : determine where site specific architecture-dependent libraries go. -: sitelib default is /usr/local/lib/perl5/site_perl/ -: sitearch default is /usr/local/lib/perl5/site_perl/$apiversion/$archname +: sitelib default is /usr/local/lib/perl5/site_perl/$version +: sitearch default is /usr/local/lib/perl5/site_perl/$version/$archname : sitelib may have an optional trailing /share. tdflt=`echo $sitelib | $sed 's,/share$,,'` -tdflt="$tdflt/$apiversion/$archname" +tdflt="$tdflt/$archname" set sitearch sitearch none eval $prefixit case "$sitearch" in @@ -11262,7 +11328,7 @@ int main() } EOCP set try - if eval $compile && ./try; then + if eval $compile_ok && ./try; then echo 'Looks OK.' >&4 else echo "I can't use Berkeley DB with your <db.h>. I'll disable Berkeley DB." >&4 @@ -12619,15 +12685,6 @@ rp="What is the type of process ids on this system?" set pid_t pidtype int stdio.h sys/types.h eval $typedef_ask -: Find earliest binary compatible site_perl subdirectory perl can use. -case "$bincompat5005" in -"$define") xs_apiversion='5.005' ;; -*) xs_apiversion=$apiversion ;; # The current site_perl version. -esac -: Find earliest pure perl site_perl subdirectory perl can use. -: The versioned directories started at 5.005. -pm_apiversion='5.005' - : check for length of pointer echo " " case "$ptrsize" in @@ -12856,10 +12913,16 @@ esac : Remove SIGSTKSIZE used by Linux. : Remove SIGSTKSZ used by Posix. : Remove SIGTYP void lines used by OS2. -xxx=`echo '#include <signal.h>' | +: Some cpps, like os390, dont give the file name anywhere +if [ "X$fieldn" = X ]; then + : Just make some guesses. We check them later. + xxx='/usr/include/signal.h /usr/include/sys/signal.h' +else + xxx=`echo '#include <signal.h>' | $cppstdin $cppminus $cppflags 2>/dev/null | $grep '^[ ]*#.*include' | $awk "{print \\$$fieldn}" | $sed 's!"!!g' | $sort | $uniq` +fi : Check this list of files to be sure we have parsed the cpp output ok. : This will also avoid potentially non-existent files, such : as ../foo/bar.h @@ -12879,10 +12942,12 @@ $1 == "#" && $2 ~ /^define$/ && $3 ~ /^SIG[A-Z0-9]*$/ && $3 !~ /SIGARRAYSIZE/ && print substr($3, 4, 20) }' $xxxfiles` : Append some common names just in case the awk scan failed. -xxx="$xxx ABRT ALRM BUS CHLD CLD CONT DIL EMT FPE HUP ILL INT IO IOT KILL" -xxx="$xxx LOST PHONE PIPE POLL PROF PWR QUIT SEGV STKFLT STOP SYS TERM TRAP" -xxx="$xxx TSTP TTIN TTOU URG USR1 USR2 USR3 USR4 VTALRM" -xxx="$xxx WINCH WIND WINDOW XCPU XFSZ" +xxx="$xxx ABRT ALRM BUS CANCEL CHLD CLD CONT DIL EMT FPE" +xxx="$xxx FREEZE HUP ILL INT IO IOT KILL LOST LWP PHONE" +xxx="$xxx PIPE POLL PROF PWR QUIT RTMAX RTMIN SEGV STKFLT STOP" +xxx="$xxx SYS TERM THAW TRAP TSTP TTIN TTOU URG USR1 USR2" +xxx="$xxx USR3 USR4 VTALRM WAITING WINCH WIND WINDOW XCPU XFSZ" + : generate a few handy files for later $cat > signal.c <<'EOCP' #include <sys/types.h> @@ -14166,6 +14231,8 @@ afs='$afs' alignbytes='$alignbytes' ansi2knr='$ansi2knr' aphostname='$aphostname' +apirevision='$apirevision' +apisubversion='$apisubversion' apiversion='$apiversion' ar='$ar' archlib='$archlib' @@ -14718,7 +14785,6 @@ pg='$pg' phostname='$phostname' pidtype='$pidtype' plibpth='$plibpth' -pm_apiversion='$pm_apiversion' pmake='$pmake' pr='$pr' prefix='$prefix' @@ -14831,8 +14897,10 @@ uidtype='$uidtype' uname='$uname' uniq='$uniq' uquadtype='$uquadtype' +use5005threads='$use5005threads' use64bits='$use64bits' usedl='$usedl' +useithreads='$useithreads' uselargefiles='$uselargefiles' uselongdouble='$uselongdouble' uselonglong='$uselonglong' @@ -14866,7 +14934,6 @@ version='$version' vi='$vi' voidflags='$voidflags' xlibpth='$xlibpth' -xs_apiversion='$xs_apiversion' zcat='$zcat' zip='$zip' EOT |