d_gettimeod=''
d_Gconvert=''
d_getgrps=''
+d_setgrps=''
d_gethent=''
aphostname=''
d_gethname=''
: determine optimize, if desired, or use for debug flag also
case "$optimize" in
-' ') dflt='none';;
+' '|$undef) dflt='none';;
'') dflt='-O';;
*) dflt="$optimize";;
esac
: coherency check
echo " "
-echo "Checking your choice of C compiler and flags for coherency..." >&4
-set X $cc $optimize $ccflags $ldflags try.c -o try
+echo "Checking your choice of C compiler, libs, and flags for coherency..." >&4
+set X $cc $optimize $ccflags $ldflags -o try try.c $libs
shift
$cat >try.msg <<EOM
I've tried to compile and run a simple program with:
main() { exit(0); }
EOF
dflt=y
-if sh -c "$cc $optimize $ccflags try.c -o try $ldflags" >>try.msg 2>&1; then
+if sh -c "$cc $optimize $ccflags -o try try.c $ldflags $libs" >>try.msg 2>&1; then
if sh -c './try' >>try.msg 2>&1; then
dflt=n
else
: nm options which may be necessary
case "$nm_opt" in
'') if $test -f /mach_boot; then
- nm_opt=''
+ nm_opt='' # Mach
elif $test -d /usr/ccs/lib; then
- nm_opt='-p'
+ nm_opt='-p' # Solaris (and SunOS?)
elif $test -f /dgux; then
- nm_opt='-p'
+ nm_opt='-p' # DG-UX
+ elif $test -f /lib64/rld; then
+ nm_opt='-p' # 64-bit Irix
else
nm_opt=''
fi;;
eval $xscan;\
$contains '^fprintf$' libc.list >/dev/null 2>&1; then
eval $xrun
+elif com="$sed -n -e 's/^.*|Proc .*|Text *| *//p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
elif com="$sed -n -e '/Def. Text/s/.* \([^ ]*\)\$/\1/p'";\
eval $xscan;\
$contains '^fprintf$' libc.list >/dev/null 2>&1; then
;;
*) case "$useshrplib" in
'') case "$osname" in
- svr4|dgux|dynixptx|esix|powerux)
+ svr4*|dgux|dynixptx|esix|powerux)
dflt='yes'
also='Building a shared libperl is required for dynamic loading to work on your system.'
;;
rp='What shall I put after the #! to start up perl ("none" to not use #!)?'
. ./myread
case "$ans" in
- none) startperl=": # use perl";;
- *) startperl="#!$ans";;
+ none) startperl=": # use perl";;
+ *) startperl="#!$ans"
+ if $test 33 -lt `echo "$ans" | wc -c`; then
+ $cat >&4 <<EOM
+
+WARNING: Some systems limit the #! command to 32 characters.
+If you experience difficulty running Perl scripts with #!, try
+installing Perl in a directory with a shorter pathname.
+
+EOM
+ fi ;;
esac
;;
*) startperl=": # use perl"
set useperlio
eval $setvar
-: see if sfio.h is available
-set sfio.h i_sfio
-eval $inhdr
-
-: see if sfio library is available
-case "$i_sfio" in
-$define)
- val=''
- set sfreserve val
- eval $inlibc
- ;;
-*)
- val="$undef"
- ;;
-esac
-: Ok, but do we want to use it.
-case "$val" in
-$define)
- case "$usesfio" in
- true|$define|[yY]*) dflt='y';;
- *) dflt='n';;
- esac
- echo "$package can use the sfio library, but it is experimental."
- rp="You seem to have sfio available, do you want to try using it?"
- . ./myread
- case "$ans" in
- y|Y)
- # If sfio is mis-configured, then the following test program
- # might run and exit with 0 status but generate no output!.
- # I think it has to do with sfio's use of _exit vs. exit,
- # but I don't know for sure. --Andy Dougherty 2/25/97.
- echo "Checking if I can use sfio in a simple test program."
- $cat > try.c <<'EOM'
-#include <stdio.h>
-main()
-{
- printf("42\n");
- exit(0);
-}
-EOM
- echo 42 > try.42
- : Deliberately let user see errors and warnings.
- if $cc $optimize $ccflags $ldflags -o try try.c $libs &&
- ./try > try.out && cmp try.42 try.out ; then
- echo Sfio looks ok. >&4
- else
- $cat >&4 <<'EOM'
-
-Help! I can't compile and run the following simple test program:
-'EOM'
- $cat try.c >&4
- $cat >&4 <<'EOM'
-
-(This is probably a misconfiguration in your system or libraries, and
-you really ought to fix it. In the meantime, I'll just skip sfio.)
-
-EOM
- val=$undef
- fi
- $rm -f try.c try try.out try.42
- ;;
- *) echo "Ok, avoiding sfio this time. I'll use stdio instead."
- val="$undef"
- ;;
- esac
- case $val in
- $undef) echo Removing sfio from list of libraries to use >&4
- set `echo X $libs | $sed -e 's/-lsfio / /' -e 's/-lsfio$//'`
- shift
- libs="$*"
- echo "libs = $libs" >&4
- ;;
- esac
- ;;
-*) case "$usesfio" in
- true|$define|[yY]*)
- echo "Sorry, cannot find sfio on this machine" >&4
- echo "Ignoring your setting of usesfio=$usesfio" >&4
- ;;
- esac
- ;;
-esac
-set d_sfio
-eval $setvar
-case "$d_sfio" in
-$define) usesfio='true';;
-*) usesfio='false';;
-esac
-
: Check how to convert floats to strings.
echo " "
echo "Checking for an efficient way to convert floats to strings."
set setsid d_setsid
eval $inlibc
+: see if sfio.h is available
+set sfio.h i_sfio
+eval $inhdr
+
+
+: see if sfio library is available
+case "$i_sfio" in
+$define)
+ val=''
+ set sfreserve val
+ eval $inlibc
+ ;;
+*)
+ val="$undef"
+ ;;
+esac
+: Ok, but do we want to use it.
+case "$val" in
+$define)
+ case "$usesfio" in
+ true|$define|[yY]*) dflt='y';;
+ *) dflt='n';;
+ esac
+ echo "$package can use the sfio library, but it is experimental."
+ rp="You seem to have sfio available, do you want to try using it?"
+ . ./myread
+ case "$ans" in
+ y|Y) ;;
+ *) echo "Ok, avoiding sfio this time. I'll use stdio instead."
+ val="$undef"
+ : Remove sfio from list of libraries to use
+ set `echo X $libs | $sed -e 's/-lsfio / /' -e 's/-lsfio$//'`
+ shift
+ libs="$*"
+ echo "libs = $libs" >&4
+ ;;
+ esac
+ ;;
+*) case "$usesfio" in
+ true|$define|[yY]*)
+ echo "Sorry, cannot find sfio on this machine" >&4
+ echo "Ignoring your setting of usesfio=$usesfio" >&4
+ ;;
+ esac
+ ;;
+esac
+set d_sfio
+eval $setvar
+case "$d_sfio" in
+$define) usesfio='true';;
+*) usesfio='false';;
+esac
+
: see if shmctl exists
set shmctl d_shmctl
eval $inlibc
dflt=`./try`
else
dflt='8'
- echo"(I can't seem to compile the test program...)"
+ echo "(I can't seem to compile the test program...)"
fi
;;
*) dflt="$alignbytes"
eval $inhdr
case "$i_db" in
+$define)
+ : Check db version. We can not use version 2.
+ echo " "
+ echo "Checking Berkeley DB version ..." >&4
+ $cat >try.c <<EOCP
+#$d_const HASCONST
+#ifndef HASCONST
+#define const
+#endif
+#include <sys/types.h>
+#include <stdio.h>
+#include <db.h>
+main()
+{
+#ifdef DB_VERSION_MAJOR
+ printf("You have Berkeley DB Version %d.%d\n",
+ DB_VERSION_MAJOR, DB_VERSION_MINOR);
+ printf("Perl currently only supports up to version 1.86.\n");
+ exit(1);
+#else
+ exit(0);
+#endif
+}
+EOCP
+ if $cc $optimize $ccflags $ldflags -o try try.c $libs && ./try; then
+ echo 'Looks OK. (Perl supports up to version 1.86).' >&4
+ else
+ echo "I can't use your Berkeley DB. I'll disable it." >&4
+ i_db=$undef
+ case " $libs " in
+ *"-ldb "*)
+ : Remove db from list of libraries to use
+ echo "Removing unusable -ldb from library list" >&4
+ set `echo X $libs | $sed -e 's/-ldb / /' -e 's/-ldb$//'`
+ shift
+ libs="$*"
+ echo "libs = $libs" >&4
+ ;;
+ esac
+ fi
+ $rm -f try.*
+ ;;
+esac
+
+case "$i_db" in
define)
: Check the return type needed for hash
echo " "
db_hashtype='u_int32_t'
fi
else
- echo "I can't seem to compile the test program." >&4
- db_hashtype=int
+ : XXX Maybe we should just give up here.
+ db_hashtype=u_int32_t
+ echo "Help: I can't seem to compile the db test program." >&4
+ echo "Something's wrong, but I'll assume you use $db_hashtype." >&4
fi
$rm -f try.*
echo "Your version of Berkeley DB uses $db_hashtype for hash."
;;
-*) db_hashtype=int
+*) db_hashtype=u_int32_t
;;
esac
db_prefixtype='size_t'
fi
else
- echo "I can't seem to compile the test program." >&4
- db_prefixtype='int'
+ db_prefixtype='size_t'
+ : XXX Maybe we should just give up here.
+ echo "Help: I can't seem to compile the db test program." >&4
+ echo "Something's wrong, but I'll assume you use $db_prefixtype." >&4
fi
$rm -f try.*
echo "Your version of Berkeley DB uses $db_prefixtype for prefix."
;;
-*) db_prefixtype='int'
+*) db_prefixtype='size_t'
;;
esac
set getgroups d_getgrps
eval $inlibc
-: Find type of 2nd arg to getgroups
+: see if setgroups exists
+set setgroups d_setgrps
+eval $inlibc
+
+: Find type of 2nd arg to getgroups (and setgroups)
echo " "
-case "$d_getgrps" in
-'define')
+case "$d_getgrps$d_setgrps" in
+*define*)
case "$groupstype" in
'') dflt="$gidtype" ;;
*) dflt="$groupstype" ;;
esac
$cat <<EOM
-What is the type of the second argument to getgroups()? Usually this
-is the same as group ids, $gidtype, but not always.
+What is the type of the second argument to getgroups() and setgroups()?
+Usually this is the same as group ids, $gidtype, but not always.
EOM
- rp='What type is the second argument to getgroups()?'
+ rp='What type is the second argument to getgroups() and setgroups()?'
. ./myread
groupstype="$ans"
;;
for (i = 0; max; i++)
max /= 2;
printf("%d\n",i);
+ fflush(stdout);
}
EOCP
if $cc $ccflags $ldflags -o try try.c $libs >/dev/null 2>&1 ; then
$spitshell <<EOT >config.sh
$startsh
#
-# This file was produced by running the Configure script. It holds all the
-# definitions figured out by Configure. Should you modify one of these values,
-# do not forget to propagate your changes by running "Configure -der". You may
-# instead choose to run each of the .SH files by yourself, or "Configure -S".
+# This file was produced by running the Configure script. It holds all
+# the definitions figured out by Configure. Should you modify any of
+# these values, do not forget to propagate your changes by running
+# "Configure -S"; or, equivalently, you may run each .SH file yourself.
#
# Configuration time: $cf_time
d_fsetpos='$d_fsetpos'
d_ftime='$d_ftime'
d_getgrps='$d_getgrps'
+d_setgrps='$d_setgrps'
d_gethent='$d_gethent'
d_gethname='$d_gethname'
d_getlogin='$d_getlogin'