# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
#
-# Generated on Thu May 30 16:44:56 EET DST 2002 [metaconfig 3.0 PL70]
+# Generated on Wed Oct 2 11:55:39 METDST 2002 [metaconfig 3.0 PL70]
# (with additional metaconfig patches by perlbug@perl.org)
cat >c1$$ <<EOF
d_gmtime_r=''
gmtime_r_proto=''
d_gnulibc=''
+gnulibc_version=''
d_hasmntopt=''
d_htonl=''
d_inetaton=''
mmaptype=''
d_modfl=''
d_modfl_pow32_bug=''
+d_modflproto=''
d_mprotect=''
d_msg=''
d_msgctl=''
d_msgsnd=''
d_msync=''
d_munmap=''
+d_nanosleep=''
d_nice=''
d_nl_langinfo=''
d_off64_t=''
fflushall=''
fpossize=''
fpostype=''
+gccansipedantic=''
gccosandvers=''
gccversion=''
gidformat=''
groupstype=''
h_fcntl=''
h_sysfile=''
+html1dir=''
+html1direxp=''
+installhtml1dir=''
+html3dir=''
+html3direxp=''
+installhtml3dir=''
i_arpainet=''
i_crypt=''
db_hashtype=''
installsitebin=''
sitebin=''
sitebinexp=''
+installsitehtml1=''
+sitehtml1=''
+sitehtml1exp=''
+installsitehtml3=''
+sitehtml3=''
+sitehtml3exp=''
installsitelib=''
sitelib=''
sitelib_stem=''
sitelibexp=''
+installsiteman1=''
+siteman1=''
+siteman1exp=''
+installsiteman3=''
+siteman3=''
+siteman3exp=''
siteprefix=''
siteprefixexp=''
+installsitescript=''
+sitescript=''
+sitescriptexp=''
sizesize=''
sizetype=''
so=''
installvendorbin=''
vendorbin=''
vendorbinexp=''
+installvendorhtml1=''
+vendorhtml1=''
+vendorhtml1exp=''
+installvendorhtml3=''
+vendorhtml3=''
+vendorhtml3exp=''
d_vendorlib=''
installvendorlib=''
vendorlib=''
vendorlib_stem=''
vendorlibexp=''
+installvendorman1=''
+vendorman1=''
+vendorman1exp=''
+installvendorman3=''
+vendorman3=''
+vendorman3exp=''
usevendorprefix=''
vendorprefix=''
vendorprefixexp=''
+d_vendorscript=''
+installvendorscript=''
+vendorscript=''
+vendorscriptexp=''
versiononly=''
defvoidused=''
voidflags=''
libswanted=''
: some systems want to use only the non-versioned libso:s
ignore_versioned_solibs=''
+siteman1=''
+siteman3=''
+sitescript=''
archname64=''
ccflags_uselargefiles=''
ldflags_uselargefiles=''
elif test -f \$dir/\$thing.exe; then
if test -n "$DJGPP"; then
echo \$dir/\$thing.exe
- else
+ elif test "$eunicefix" != ":"; then
: on Eunice apparently
echo \$dir/\$thing
+ exit 0
fi
exit 0
fi
*) eval "$var=$val";;
esac'
+case "$usesocks" in
+$define|true|[yY]*) dflt='y';;
+*) dflt='n';;
+esac
+cat <<EOM
+
+Perl can be built to use the SOCKS proxy protocol library. To do so,
+Configure must be run with -Dusesocks. If you use SOCKS you also need
+to use the PerlIO abstraction layer, this will be implicitly selected.
+
+If this doesn't make any sense to you, just accept the default '$dflt'.
+EOM
+rp='Build Perl for SOCKS?'
+. ./myread
+case "$ans" in
+y|Y) val="$define" ;;
+*) val="$undef" ;;
+esac
+set usesocks
+eval $setvar
+
+case "$usesocks" in
+$define|true|[yY]*) useperlio="$define";;
+esac
+
+case "$useperlio" in
+$define|true|[yY]*|'') dflt='y';;
+*) dflt='n';;
+esac
+cat <<EOM
+
+Previous version of $package used the standard IO mechanisms as
+defined in <stdio.h>. Versions 5.003_02 and later of $package allow
+alternate IO mechanisms via the PerlIO abstraction layer, but the
+stdio mechanism is still available if needed. The abstraction layer
+can use AT&T's sfio (if you already have sfio installed) or regular stdio.
+Using PerlIO with sfio may cause problems with some extension modules.
+
+If this doesn't make any sense to you, just accept the default '$dflt'.
+EOM
+rp='Use the PerlIO abstraction layer?'
+. ./myread
+case "$ans" in
+y|Y)
+ val="$define"
+ ;;
+*)
+ echo "Ok, doing things the stdio way."
+ val="$undef"
+ ;;
+esac
+set useperlio
+eval $setvar
+
+case "$usesocks" in
+$define|true|[yY]*)
+ case "$useperlio" in
+ $define|true|[yY]*) ;;
+ *) cat >&4 <<EOM
+
+You are using the SOCKS proxy protocol library which means that you
+should also use the PerlIO layer. You may be headed for trouble.
+
+EOM
+ ;;
+ esac
+ ;;
+esac
+
+
case "$usethreads" in
$define|true|[yY]*) dflt='y';;
*) # Catch case where user specified ithreads or 5005threads but
# forgot -Dusethreads (A.D. 4/2002)
case "$useithreads$use5005threads" in
- *$define*) dflt='y' ;;
- *) dflt='n';;
+ *$define*)
+ case "$useperlio" in
+ "$define") dflt='y' ;;
+ *) dflt='n' ;;
+ esac
+ ;;
+ *) dflt='n';;
esac
;;
esac
;;
esac
+if test X"$usethreads" = "X$define" -a "X$useperlio" = "Xundef"; then
+ cat >&4 <<EOF
+***
+*** To build with ithreads you must also use the PerlIO layer.
+*** Cannot continue, aborting.
+***
+EOF
+ exit 1
+fi
+
case "$d_oldpthreads" in
'') : Configure tests would be welcome here. For now, assume undef.
val="$undef" ;;
'') ccname="$cc" ;;
esac
-# gcc 3.1 complains about adding -Idirectories that it already knows about,
+# gcc 3.* complain about adding -Idirectories that they already know about,
# so we will take those off from locincpth.
case "$gccversion" in
3*)
echo "main(){}">try.c
- for incdir in `$cc -v -c try.c 2>&1 | \
- sed '1,/^#include <\.\.\.>/d;/^End of search list/,$d;s/^ //'` ; do
- locincpth=`echo $locincpth | sed s!$incdir!!`
+ for incdir in $locincpth; do
+ warn=`$cc $ccflags -I$incdir -c try.c 2>&1 | \
+ grep '^cc1: warning: changing search order '`
+ if test "X$warn" != X; then
+ locincpth=`echo " $locincpth " | sed "s! $incdir ! !"`
+ fi
done
$rm -f try try.*
esac
'') firstmakefile='makefile';;
esac
-case "$usesocks" in
-$define|true|[yY]*) dflt='y';;
-*) dflt='n';;
-esac
-cat <<EOM
-
-Perl can be built to use the SOCKS proxy protocol library. To do so,
-Configure must be run with -Dusesocks. If you use SOCKS you also need
-to use the PerlIO abstraction layer, this will be implicitly selected.
-
-If this doesn't make any sense to you, just accept the default '$dflt'.
-EOM
-rp='Build Perl for SOCKS?'
-. ./myread
-case "$ans" in
-y|Y) val="$define" ;;
-*) val="$undef" ;;
-esac
-set usesocks
-eval $setvar
-
-case "$usesocks" in
-$define|true|[yY]*) useperlio="$define";;
-esac
-
: Looking for optional libraries
echo " "
echo "Checking for optional libraries..." >&4
echo " "
echo "Checking for GNU C Library..." >&4
-cat >try.c <<EOM
+cat >try.c <<'EOCP'
+/* Find out version of GNU C library. __GLIBC__ and __GLIBC_MINOR__
+ alone are insufficient to distinguish different versions, such as
+ 2.0.6 and 2.0.7. The function gnu_get_libc_version() appeared in
+ libc version 2.1.0. A. Dougherty, June 3, 2002.
+*/
#include <stdio.h>
-int main()
+int main(void)
{
#ifdef __GLIBC__
- exit(0);
+# ifdef __GLIBC_MINOR__
+# if __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1
+# include <gnu/libc-version.h>
+ printf("%s\n", gnu_get_libc_version());
+# else
+ printf("%d.%d\n", __GLIBC__, __GLIBC_MINOR__);
+# endif
+# else
+ printf("%d\n", __GLIBC__);
+# endif
+ return 0;
#else
- exit(1);
+ return 1;
#endif
}
-EOM
+EOCP
set try
-if eval $compile_ok && $run ./try; then
+if eval $compile_ok && $run ./try > glibc.ver; then
val="$define"
- echo "You are using the GNU C Library"
+ gnulibc_version=`$cat glibc.ver`
+ echo "You are using the GNU C Library version $gnulibc_version"
else
val="$undef"
+ gnulibc_version=''
echo "You are not using the GNU C Library"
fi
-$rm -f try try.*
+$rm -f try try.* glibc.ver
set d_gnulibc
eval $setvar
esac
case "$dflt" in
'')
- if $test "$osname" = aix -a ! -f /lib/syscalls.exp; then
+ if $test "$osname" = aix -a "X$PASE" != "Xdefine" -a ! -f /lib/syscalls.exp; then
echo " "
echo "Whoops! This is an AIX system without /lib/syscalls.exp!" >&4
echo "'nm' won't be sufficient on this sytem." >&4
fi
fi
nm_extract="$com"
-if $test -f /lib/syscalls.exp; then
+case "$PASE" in
+define)
+ echo " "
+ echo "Since you are compiling for PASE, extracting more symbols from libc.a ...">&4
+ dump -Tv /lib/libc.a | awk '$7 == "/unix" {print $5 " " $8}' | grep "^SV" | awk '{print $2}' >> libc.list
+ ;;
+*) if $test -f /lib/syscalls.exp; then
echo " "
echo "Also extracting names from /lib/syscalls.exp for good ole AIX..." >&4
$sed -n 's/^\([^ ]*\)[ ]*syscall[0-9]*[ ]*$/\1/p' /lib/syscalls.exp >>libc.list
-fi
+ fi
+ ;;
+esac
;;
esac
$rm -f libnames libpath
set sqrtl d_sqrtl
eval $inlibc
+hasproto='varname=$1; func=$2; shift; shift;
+while $test $# -ge 2; do
+ case "$1" in
+ $define) echo "#include <$2>";;
+ esac ;
+ shift 2;
+done > try.c;
+$cppstdin $cppflags $cppminus < try.c > tryout.c 2>/dev/null;
+if $contains "$func.*(" tryout.c >/dev/null 2>&1; then
+ echo "$func() prototype found.";
+ val="$define";
+else
+ echo "$func() prototype NOT found.";
+ val="$undef";
+fi;
+set $varname;
+eval $setvar;
+$rm -f try.c tryout.c'
+
: check for length of double
echo " "
case "$doublesize" in
set modfl d_modfl
eval $inlibc
+: see if prototype for modfl is available
+echo " "
+set d_modflproto modfl math.h
+eval $hasproto
+
d_modfl_pow32_bug="$undef"
case "$d_longdbl$d_modfl" in
$cat >try.c <<EOCP
#include <math.h>
#include <stdio.h>
+EOCP
+if $test "X$d_modflproto" != "X$define"; then
+ $cat >>try.c <<EOCP
+/* Sigh. many current glibcs provide the function, but do not prototype it. */
+long double modfl (long double, long double *);
+EOCP
+fi
+$cat >>try.c <<EOCP
int main() {
long double nv = 4294967303.15;
long double v, w;
uselongdouble=$undef
fi
-case "$useperlio" in
-$define|true|[yY]*|'') dflt='y';;
-*) dflt='n';;
-esac
-cat <<EOM
-
-Previous version of $package used the standard IO mechanisms as
-defined in <stdio.h>. Versions 5.003_02 and later of $package allow
-alternate IO mechanisms via the PerlIO abstraction layer, but the
-stdio mechanism is still available if needed. The abstraction layer
-can use AT&T's sfio (if you already have sfio installed) or regular stdio.
-Using PerlIO with sfio may cause problems with some extension modules.
-
-If this doesn't make any sense to you, just accept the default '$dflt'.
-EOM
-rp='Use the PerlIO abstraction layer?'
-. ./myread
-case "$ans" in
-y|Y)
- val="$define"
- ;;
-*)
- echo "Ok, doing things the stdio way."
- val="$undef"
- ;;
-esac
-set useperlio
-eval $setvar
-
-case "$usesocks" in
-$define|true|[yY]*)
- case "$useperlio" in
- $define|true|[yY]*) ;;
- *) cat >&4 <<EOM
-
-You are using the SOCKS proxy protocol library which means that you
-should also use the PerlIO layer. You may be headed for trouble.
-
-EOM
- ;;
- esac
- ;;
-esac
-
-
: determine the architecture name
echo " "
if xxx=`./loc arch blurfl $pth`; $test -f "$xxx"; then
'')
dflt=`./loc . /usr/local /usr/local /local /opt /usr`
;;
+*?/)
+ dflt=`echo "$prefix" | sed 's/.$//'`
+ ;;
*)
dflt="$prefix"
;;
eval $setvar
echo " "
+: determine where html pages for programs go
+set html1dir html1dir none
+eval $prefixit
+$cat <<EOM
+
+If you wish to install html files for programs in $spackage, indicate
+the appropriate directory here. To skip installing html files,
+answer "none".
+EOM
+case "$html1dir" in
+''|none|$undef|' ') dflt=none ;;
+*) dflt=$html1dir ;;
+esac
+fn=dn+~
+rp="Directory for the main $spackage html pages?"
+. ./getfile
+html1dir="$ans"
+html1direxp="$ansexp"
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$html1dir" = "X" && html1dir=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installhtml1dir=`echo $html1direxp | sed "s#^$prefix#$installprefix#"`
+else
+ installhtml1dir="$html1direxp"
+fi
+
+: determine where html pages for libraries and modules go
+set html3dir html3dir none
+eval $prefixit
+$cat <<EOM
+
+If you wish to install html files for modules associated with $spackage,
+indicate the appropriate directory here. To skip installing html files,
+answer "none".
+EOM
+: There is no obvious default. If they have specified html1dir, then
+: try to key off that, possibly changing .../html1 into .../html3.
+case "$html3dir" in
+'') html3dir=`echo "$html1dir" | $sed 's/1$/3$/'` ;;
+*) dflt=$html3dir ;;
+esac
+fn=dn+~
+rp="Directory for the $spackage module html pages?"
+. ./getfile
+html3dir="$ans"
+html3direxp="$ansexp"
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$html3dir" = "X" && html3dir=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installhtml3dir=`echo $html3direxp | sed "s#^$prefix#$installprefix#"`
+else
+ installhtml3dir="$html3direxp"
+fi
+
: Find perl5.005 or later.
echo "Looking for a previously installed perl5.005 or later... "
case "$perl5" in
case "$dflt" in
5.005) dflt=none ;;
esac
-$cat <<'EOM'
+$cat <<EOM
In order to ease the process of upgrading, this version of perl
can be configured to use modules built and installed with earlier
if $test -d /usr/bin -a "X$installbin" != X/usr/bin; then
$cat <<EOM
Many scripts expect perl to be installed as /usr/bin/perl.
-I can install the perl you are about to compile also as /usr/bin/perl
-(in addition to $installbin/perl).
+
+If you want to, I can install the perl you are about to compile
+as /usr/bin/perl (in addition to $bin/perl).
EOM
- case "$installusrbinperl" in
- "$undef"|[nN]*) dflt='n';;
- *) dflt='y';;
- esac
+ if test -f /usr/bin/perl; then
+ $cat <<EOM
+
+However, please note that because you already have a /usr/bin/perl,
+overwriting that with a new Perl would very probably cause problems.
+Therefore I'm assuming you don't want to do that (unless you insist).
+
+EOM
+ case "$installusrbinperl" in
+ "$define"|[yY]*) dflt='y';;
+ *) dflt='n';;
+ esac
+ else
+ $cat <<EOM
+
+Since you don't have a /usr/bin/perl I'm assuming creating one is okay.
+
+EOM
+ case "$installusrbinperl" in
+ "$undef"|[nN]*) dflt='n';;
+ *) dflt='y';;
+ esac
+ fi
rp="Do you want to install perl as /usr/bin/perl?"
. ./myread
case "$ans" in
installsitebin="$sitebinexp"
fi
+: determine where add-on html pages go
+: There is no standard location, so try to copy the previously-selected
+: directory structure for the core html pages.
+case "$sitehtml1" in
+'') dflt=`echo "$html1dir" | $sed "s#^$prefix#$siteprefix#"` ;;
+*) dflt=$sitehtml1 ;;
+esac
+case "$dflt" in
+''|' ') dflt=none ;;
+esac
+fn=dn+~
+rp='Pathname where the site-specific html pages should be installed?'
+. ./getfile
+sitehtml1="$ans"
+sitehtml1exp="$ansexp"
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$sitehtml1" = "X" && sitehtml1=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installsitehtml1=`echo "$sitehtml1exp" | $sed "s#^$prefix#$installprefix#"`
+else
+ installsitehtml1="$sitehtml1exp"
+fi
+
+: determine where add-on library html pages go
+: There is no standard location, so try to copy the previously-selected
+: directory structure for the core html pages.
+case "$sitehtml3" in
+'') dflt=`echo "$html3dir" | $sed "s#^$prefix#$siteprefix#"` ;;
+*) dflt=$sitehtml3 ;;
+esac
+case "$dflt" in
+''|' ') dflt=none ;;
+esac
+fn=dn+~
+rp='Pathname where the site-specific library html pages should be installed?'
+. ./getfile
+sitehtml3="$ans"
+sitehtml3exp="$ansexp"
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$sitehtml3" = "X" && sitehtml3=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installsitehtml3=`echo "$sitehtml3exp" | $sed "s#^$prefix#$installprefix#"`
+else
+ installsitehtml3="$sitehtml3exp"
+fi
+
+: determine where add-on manual pages go
+case "$siteman1" in
+'') dflt=`echo "$man1dir" | $sed "s#^$prefix#$siteprefix#"` ;;
+*) dflt=$siteman1 ;;
+esac
+case "$dflt" in
+''|' ') dflt=none ;;
+esac
+fn=dn+~
+rp='Pathname where the site-specific manual pages should be installed?'
+. ./getfile
+siteman1="$ans"
+siteman1exp="$ansexp"
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$siteman1" = "X" && siteman1=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installsiteman1=`echo "$siteman1exp" | $sed "s#^$prefix#$installprefix#"`
+else
+ installsiteman1="$siteman1exp"
+fi
+
+: determine where add-on library man pages go
+case "$siteman3" in
+'') dflt=`echo "$man3dir" | $sed "s#^$prefix#$siteprefix#"` ;;
+*) dflt=$siteman3 ;;
+esac
+case "$dflt" in
+''|' ') dflt=none ;;
+esac
+fn=dn+~
+rp='Pathname where the site-specific library manual pages should be installed?'
+. ./getfile
+siteman3="$ans"
+siteman3exp="$ansexp"
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$siteman3" = "X" && siteman3=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installsiteman3=`echo "$siteman3exp" | $sed "s#^$prefix#$installprefix#"`
+else
+ installsiteman3="$siteman3exp"
+fi
+
+: determine where add-on public executable scripts go
+case "$sitescript" in
+'') dflt=$siteprefix/script
+ $test -d $dflt || dflt=$sitebin ;;
+*) dflt="$sitescript" ;;
+esac
+fn=d~+
+rp='Pathname where add-on public executable scripts should be installed?'
+. ./getfile
+sitescript="$ans"
+sitescriptexp="$ansexp"
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installsitescript=`echo $sitescriptexp | sed "s#^$prefix#$installprefix#"`
+else
+ installsitescript="$sitescriptexp"
+fi
+
: define an is-a-typedef? function
typedef='type=$1; var=$2; def=$3; shift; shift; shift; inclist=$@;
case "$inclist" in
installvendorbin="$vendorbinexp"
fi
+case "$vendorprefix" in
+'') vendorhtml1=''
+ vendorhtml1exp=''
+ ;;
+*) : determine where vendor-supplied html pages go.
+ : There is no standard location, so try to copy the previously-selected
+ : directory structure for the core html pages.
+ : XXX Better default suggestions would be welcome.
+ case "$vendorhtml1" in
+ '') dflt=`echo "$html1dir" | $sed "s#^$prefix#$vendorprefix#"` ;;
+ *) dflt=$vendorhtml1 ;;
+ esac
+ case "$dflt" in
+ ''|' ') dflt=none ;;
+ esac
+ fn=dn+~
+ rp='Pathname for the vendor-supplied html pages?'
+ . ./getfile
+ vendorhtml1="$ans"
+ vendorhtml1exp="$ansexp"
+ ;;
+esac
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$vendorhtml1" = "X" && vendorhtml1=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installvendorhtml1=`echo $vendorhtml1exp | $sed "s#^$prefix#$installprefix#"`
+else
+ installvendorhtml1="$vendorhtml1exp"
+fi
+
+case "$vendorprefix" in
+'') vendorhtml3=''
+ vendorhtml3exp=''
+ ;;
+*) : determine where vendor-supplied module html pages go.
+ : There is no standard location, so try to copy the previously-selected
+ : directory structure for the core html pages.
+ : XXX Better default suggestions would be welcome.
+ case "$vendorhtml3" in
+ '') dflt=`echo "$html3dir" | $sed "s#^$prefix#$vendorprefix#"` ;;
+ *) dflt=$vendorhtml3 ;;
+ esac
+ case "$dflt" in
+ ''|' ') dflt=none ;;
+ esac
+ fn=dn+~
+ rp='Pathname for the vendor-supplied html pages?'
+ . ./getfile
+ vendorhtml3="$ans"
+ vendorhtml3exp="$ansexp"
+ ;;
+esac
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$vendorhtml3" = "X" && vendorhtml3=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installvendorhtml3=`echo $vendorhtml3exp | $sed "s#^$prefix#$installprefix#"`
+else
+ installvendorhtml3="$vendorhtml3exp"
+fi
+
+case "$vendorprefix" in
+'') vendorman1=''
+ vendorman1exp=''
+ ;;
+*) : determine where vendor-supplied manual pages go.
+ case "$vendorman1" in
+ '') dflt=`echo "$man1dir" | $sed "s#^$prefix#$vendorprefix#"` ;;
+ *) dflt=$vendorman1 ;;
+ esac
+ case "$dflt" in
+ ''|' ') dflt=none ;;
+ esac
+ fn=nd~+
+ rp='Pathname for the vendor-supplied manual section 1 pages?'
+ . ./getfile
+ vendorman1="$ans"
+ vendorman1exp="$ansexp"
+ ;;
+esac
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$vendorman1" = "X" && vendorman1=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installvendorman1=`echo "$vendorman1exp" | $sed "s#^$prefix#$installprefix#"`
+else
+ installvendorman1="$vendorman1exp"
+fi
+
+case "$vendorprefix" in
+'') vendorman3=''
+ vendorman3exp=''
+ ;;
+*) : determine where vendor-supplied module manual pages go.
+ case "$vendorman3" in
+ '') dflt=`echo "$man3dir" | $sed "s#^$prefix#$vendorprefix#"` ;;
+ *) dflt=$vendorman3 ;;
+ esac
+ case "$dflt" in
+ ''|' ') dflt=none ;;
+ esac
+ fn=nd~+
+ rp='Pathname for the vendor-supplied manual section 3 pages?'
+ . ./getfile
+ vendorman3="$ans"
+ vendorman3exp="$ansexp"
+ ;;
+esac
+: Use ' ' for none so value is preserved next time through Configure
+$test X"$vendorman3" = "X" && vendorman3=' '
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installvendorman3=`echo "$vendorman3exp" | $sed "s#^$prefix#$installprefix#"`
+else
+ installvendorman3="$vendorman3exp"
+fi
+
+case "$vendorprefix" in
+'') d_vendorscript="$undef"
+ vendorscript=''
+ vendorscriptexp=''
+ ;;
+*) d_vendorscript="$define"
+ : determine where vendor-supplied scripts go.
+ case "$vendorscript" in
+ '') dflt=$vendorprefix/script
+ $test -d $dflt || dflt=$vendorbin ;;
+ *) dflt="$vendorscript" ;;
+ esac
+ $cat <<EOM
+
+The installation process will create a directory for
+vendor-supplied scripts.
+
+EOM
+ fn=d~+
+ rp='Pathname for the vendor-supplied scripts directory?'
+ . ./getfile
+ vendorscript="$ans"
+ vendorscriptexp="$ansexp"
+ ;;
+esac
+: Change installation prefix, if necessary.
+if $test X"$prefix" != X"$installprefix"; then
+ installvendorscript=`echo $vendorscriptexp | $sed "s#^$prefix#$installprefix#"`
+else
+ installvendorscript="$vendorscriptexp"
+fi
+
: see if qgcvt exists
set qgcvt d_qgcvt
eval $inlibc
chmod +x protochk
$eunicefix protochk
-hasproto='varname=$1; func=$2; shift; shift;
-while $test $# -ge 2; do
- case "$1" in
- $define) echo "#include <$2>";;
- esac ;
- shift 2;
-done > try.c;
-$cppstdin $cppflags $cppminus < try.c > tryout.c 2>/dev/null;
-if $contains "$func.*(" tryout.c >/dev/null 2>&1; then
- echo "$func() prototype found.";
- val="$define";
-else
- echo "$func() prototype NOT found.";
- val="$undef";
-fi;
-set $varname;
-eval $setvar;
-$rm -f try.c tryout.c'
-
: see if sys/types.h has to be included
set sys/types.h i_systypes
eval $inhdr
echo 'Checking to see if your C compiler knows about "const"...' >&4
$cat >const.c <<'EOCP'
typedef struct spug { int drokk; } spug;
-int main()
+main()
{
const char *foo;
const spug y;
set munmap d_munmap
eval $inlibc
+: see if nanosleep exists
+set nanosleep d_nanosleep
+eval $inlibc
+
: see if nice exists
set nice d_nice
eval $inlibc
echo " "
echo 'Checking to see if your C compiler knows about "volatile"...' >&4
$cat >try.c <<'EOCP'
-int main()
+main()
{
typedef struct _goo_struct goo_struct;
goo_struct * volatile goo = ((goo_struct *)0);
echo "Your stdio doesn't appear very std."
fi
$rm -f try.c try
+
+# 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.)
+# To be defensive, reject all unknown versions, and all versions > 2.2.9.
+# A. Dougherty, June 3, 2002.
+case "$d_gnulibc" in
+$define)
+ case "$gnulibc_version" in
+ 2.[01]*) ;;
+ 2.2) ;;
+ 2.2.[0-9]) ;;
+ *) echo "But I will not snoop inside glibc $gnulibc_version stdio buffers."
+ val="$undef"
+ ;;
+ esac
+ ;;
+esac
set d_stdstdio
eval $setvar
echo " "
echo "Checking to see if your C compiler can copy structs..." >&4
$cat >try.c <<'EOCP'
-int main()
+main()
{
struct blurfl {
int dyick;
case "$i_ndbm" in
$define)
case "$osname-$use64bitint" in
- cygwin-*|hpux-define)
+ hpux-define)
case "$libs" in
*-lndbm*) avail_ext="$avail_ext $xxx" ;;
esac
case "${i_dbm}${i_rpcsvcdbm}" in
*"${define}"*)
case "$osname-$use64bitint" in
- cygwin-*|hpux-define)
+ hpux-define)
case "$libs" in
*-ldbm*) avail_ext="$avail_ext $xxx" ;;
esac
esac
esac
;;
+ XS/APItest|xs/apitest)
+ # This is just for testing. Skip it unless we have dynamic loading.
+
+ case "$usedl" in
+ $define) avail_ext="$avail_ext $xxx" ;;
+ esac
+ ;;
+ XS/Typemap|xs/typemap)
+ # This is just for testing. Skip it unless we have dynamic loading.
+ case "$usedl" in
+ $define) avail_ext="$avail_ext $xxx" ;;
+ esac
+ ;;
threads|threads/shared)
# threads and threads::shared are special cases.
# To stop people from asking "Perl 5.8.0 was supposed
EOM
case "$dynamic_ext" in
- '') dflt="$avail_ext" ;;
+ '')
+ : Exclude those listed in static_ext
+ dflt=''
+ for xxx in $avail_ext; do
+ case " $static_ext " in
+ *" $xxx "*) ;;
+ *) dflt="$dflt $xxx" ;;
+ esac
+ done
+ set X $dflt
+ shift
+ dflt="$*"
+ ;;
*) dflt="$dynamic_ext"
# Perhaps we are reusing an old out-of-date config.sh.
case "$hint" in
d_mmap='$d_mmap'
d_modfl='$d_modfl'
d_modfl_pow32_bug='$d_modfl_pow32_bug'
+d_modflproto='$d_modflproto'
d_mprotect='$d_mprotect'
d_msg='$d_msg'
d_msg_ctrunc='$d_msg_ctrunc'
d_msync='$d_msync'
d_munmap='$d_munmap'
d_mymalloc='$d_mymalloc'
+d_nanosleep='$d_nanosleep'
d_nice='$d_nice'
d_nl_langinfo='$d_nl_langinfo'
d_nv_preserves_uv='$d_nv_preserves_uv'
d_vendorarch='$d_vendorarch'
d_vendorbin='$d_vendorbin'
d_vendorlib='$d_vendorlib'
+d_vendorscript='$d_vendorscript'
d_vfork='$d_vfork'
d_void_closedir='$d_void_closedir'
d_voidsig='$d_voidsig'
full_ar='$full_ar'
full_csh='$full_csh'
full_sed='$full_sed'
+gccansipedantic='$gccansipedantic'
gccosandvers='$gccosandvers'
gccversion='$gccversion'
getgrent_r_proto='$getgrent_r_proto'
glibpth='$glibpth'
gmake='$gmake'
gmtime_r_proto='$gmtime_r_proto'
+gnulibc_version='$gnulibc_version'
grep='$grep'
groupcat='$groupcat'
groupstype='$groupstype'
h_sysfile='$h_sysfile'
hint='$hint'
hostcat='$hostcat'
+html1dir='$html1dir'
+html1direxp='$html1direxp'
+html3dir='$html3dir'
+html3direxp='$html3direxp'
i16size='$i16size'
i16type='$i16type'
i32size='$i32size'
inews='$inews'
installarchlib='$installarchlib'
installbin='$installbin'
+installhtml1dir='$installhtml1dir'
+installhtml3dir='$installhtml3dir'
installman1dir='$installman1dir'
installman3dir='$installman3dir'
installprefix='$installprefix'
installscript='$installscript'
installsitearch='$installsitearch'
installsitebin='$installsitebin'
+installsitehtml1='$installsitehtml1'
+installsitehtml3='$installsitehtml3'
installsitelib='$installsitelib'
+installsiteman1='$installsiteman1'
+installsiteman3='$installsiteman3'
+installsitescript='$installsitescript'
installstyle='$installstyle'
installusrbinperl='$installusrbinperl'
installvendorarch='$installvendorarch'
installvendorbin='$installvendorbin'
+installvendorhtml1='$installvendorhtml1'
+installvendorhtml3='$installvendorhtml3'
installvendorlib='$installvendorlib'
+installvendorman1='$installvendorman1'
+installvendorman3='$installvendorman3'
+installvendorscript='$installvendorscript'
intsize='$intsize'
issymlink='$issymlink'
ivdformat='$ivdformat'
sitearchexp='$sitearchexp'
sitebin='$sitebin'
sitebinexp='$sitebinexp'
+sitehtml1='$sitehtml1'
+sitehtml1exp='$sitehtml1exp'
+sitehtml3='$sitehtml3'
+sitehtml3exp='$sitehtml3exp'
sitelib='$sitelib'
sitelib_stem='$sitelib_stem'
sitelibexp='$sitelibexp'
+siteman1='$siteman1'
+siteman1exp='$siteman1exp'
+siteman3='$siteman3'
+siteman3exp='$siteman3exp'
siteprefix='$siteprefix'
siteprefixexp='$siteprefixexp'
+sitescript='$sitescript'
+sitescriptexp='$sitescriptexp'
sizesize='$sizesize'
sizetype='$sizetype'
sleep='$sleep'
vendorarchexp='$vendorarchexp'
vendorbin='$vendorbin'
vendorbinexp='$vendorbinexp'
+vendorhtml1='$vendorhtml1'
+vendorhtml1exp='$vendorhtml1exp'
+vendorhtml3='$vendorhtml3'
+vendorhtml3exp='$vendorhtml3exp'
vendorlib='$vendorlib'
vendorlib_stem='$vendorlib_stem'
vendorlibexp='$vendorlibexp'
+vendorman1='$vendorman1'
+vendorman1exp='$vendorman1exp'
+vendorman3='$vendorman3'
+vendorman3exp='$vendorman3exp'
vendorprefix='$vendorprefix'
vendorprefixexp='$vendorprefixexp'
+vendorscript='$vendorscript'
+vendorscriptexp='$vendorscriptexp'
version='$version'
version_patchlevel_string='$version_patchlevel_string'
versiononly='$versiononly'