# The dist package (which contains metaconfig) is available via SVN:
# svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist
#
+# Though this script was generated by metaconfig from metaunits, it is
+# OK to send patches against Configure itself. It's up to the Configure
+# pumpkin to backport the patch to the metaunits if it is accepted.
+# For more information on patching Configure, see pod/perlhack.pod
+#
+# The metaunits are also available from the public git repository:
+# http://perl5.git.perl.org/metaconfig.git/ or
+# $ git clone git://perl5.git.perl.org/metaconfig.git metaconfig
#
-# Though this script was generated by metaconfig, it is OK to send
-# patches against it. It's up to the Configure pumpkin to backport
-# the patch to the metaunits if it is accepted.
# See Porting/pumpkin.pod for more information on metaconfig.
#
# $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $
#
-# Generated on Sat May 17 16:03:30 CEST 2008 [metaconfig 3.5 PL0]
+# Generated on Fri May 21 07:59:07 CEST 2010 [metaconfig 3.5 PL0]
# (with additional metaconfig patches by perlbug@perl.org)
cat >c1$$ <<EOF
rm -f c1$$ c2$$
if test -f /dev/cputype -a -f /dev/drivers -a -f /dev/osversion; then
- cat >&4 <<EOF
+ cat <<EOF
***
*** I'm sorry but this system looks like Plan 9 and Plan 9 doesn't do
*** Configure that well. (Plan 9 is close to UNIX but not close enough.)
fi
if test ! -c /dev/null ; then
- cat >&4 <<EOF
+ cat <<EOF
***
*** I'm sorry, but /dev/null appears to be a file rather than a device.
*** Please consult your operating sytem's notes for making a device
targetarch=''
to=''
usecrosscompile=''
+extern_C=''
mistrustnm=''
+usedevel=''
perllibs=''
dynamic_ext=''
extensions=''
cf_email=''
cf_by=''
cf_time=''
+charbits=''
+charsize=''
contains=''
cpp_stuff=''
cpplast=''
d_alarm=''
asctime_r_proto=''
d_asctime_r=''
+d_attribute_deprecated=''
d_attribute_format=''
d_attribute_malloc=''
d_attribute_nonnull=''
d_gettimeod=''
d_futimes=''
d_Gconvert=''
+d_getaddrinfo=''
d_getcwd=''
d_getespwnam=''
d_getfsstat=''
getlogin_r_proto=''
d_getmnt=''
d_getmntent=''
+d_getnameinfo=''
d_getnbyaddr=''
d_getnbyname=''
d_getnent=''
d_htonl=''
d_ilogbl=''
d_inetaton=''
+d_inetntop=''
+d_inetpton=''
d_int64_t=''
d_isascii=''
d_isfinite=''
d_pipe=''
d_poll=''
d_portable=''
+d_prctl=''
+d_prctl_set_name=''
d_procselfexe=''
procselfexe=''
d_old_pthread_create_joinable=''
d_telldirproto=''
d_time=''
timetype=''
+d_asctime64=''
+d_ctime64=''
+d_difftime64=''
+d_gmtime64=''
+d_localtime64=''
+d_mktime64=''
+d_timegm=''
clocktype=''
d_times=''
d_tmpnam_r=''
d_wctomb=''
d_writev=''
dlext=''
+bin_ELF=''
cccdlflags=''
ccdlflags=''
dlsrc=''
i_math=''
i_memory=''
i_mntent=''
+d_gdbm_ndbm_h_uses_prototypes=''
+d_gdbmndbm_h_uses_prototypes=''
d_ndbm=''
+d_ndbm_h_uses_prototypes=''
i_gdbm_ndbm=''
i_gdbmndbm=''
i_ndbm=''
d_stdio_stream_array=''
stdio_stream_array=''
sysman=''
+sGMTIME_max=''
+sGMTIME_min=''
+sLOCALTIME_max=''
+sLOCALTIME_min=''
trnl=''
uidformat=''
uidsign=''
incpath=''
mips_type=''
usrinc=''
+vaproto=''
d_vendorarch=''
installvendorarch=''
vendorarch=''
_exe=".exe"
fi
+groupstype=''
i_whoami=''
: Trailing extension. Override this in a hint file, if needed.
: Extra object files, if any, needed on this platform.
archobjs=''
archname=''
-groupstype=''
libnames=''
: change the next line if compiling for Xenix/286 on Xenix/386
xlibpth='/usr/lib/386 /lib/386'
echo "#!$xcat" >sharp
$eunicefix sharp
chmod +x sharp
- ./sharp > today
+ ./sharp > today 2>/dev/null
if test -s today; then
sharpbang='#!'
else
echo "#! $xcat" > sharp
$eunicefix sharp
chmod +x sharp
- ./sharp > today
+ ./sharp > today 2>/dev/null
if test -s today; then
sharpbang='#! '
else
echo " "
if test -f "$rsrc/MANIFEST"; then
echo "First let's make sure your kit is complete. Checking..." >&4
- awk '$1 !~ /PACK[A-Z]+/ {print $1}' "$rsrc/MANIFEST" |\
+ awk '$1 !~ /PACK[A-Z]+/ {print $1}' "$rsrc/MANIFEST" | \
(split -l 50 2>/dev/null || split -50)
rm -f missing
tmppwd=`pwd`
: See if we are using a devel version and want that
xversion=`awk '/define[ ]+PERL_VERSION/ {print $3}' $rsrc/patchlevel.h`
case "$usedevel" in
-$define|true|[yY]*) ;;
+$define|true|[yY]*)
+ usedevel="$define" ;;
*) case "$xversion" in
*[13579])
cat >&4 <<EOH
esac
;;
esac
+ usedevel="$undef"
;;
esac
case "$usedevel" in
_egrep=$grep
;;
esac
+case "$less" in
+'') ;;
+*) if $less -R </dev/null >/dev/null; then
+ echo "Substituting less -R for less."
+ less="$less -R"
+ _less=$less
+ fi
+ ;;
+esac
case "$ln" in
ln)
echo "Substituting cp for ln."
version_patchlevel_string="version $patchlevel subversion $subversion"
case "$perl_patchlevel" in
0|'') ;;
-*) version_patchlevel_string="$version_patchlevel_string patch $perl_patchlevel" ;;
+*) perl_patchlevel=`echo $perl_patchlevel | sed 's/.* //'`
+ version_patchlevel_string="$version_patchlevel_string patch $perl_patchlevel"
+ ;;
esac
$echo "(You have $package $version_patchlevel_string.)"
case "$ccflags" in
*-posix*) dflt="$dflt -posix" ;;
esac
- # See note above about -fstack-protector
- case "$ccflags" in
- *-fstack-protector*) dflt="$dflt -fstack-protector" ;;
- esac
;;
*) dflt="$ldflags";;
esac
+# See note above about -fstack-protector
+case "$ccflags" in
+*-fstack-protector*)
+ case "$dflt" in
+ *-fstack-protector*) ;; # Don't add it again
+ *) dflt="$dflt -fstack-protector" ;;
+ esac
+ ;;
+esac
: Try to guess additional flags to pick up local libraries.
for thislibdir in $libpth; do
$rm -f reflect flect
: now see if they want to do setuid emulation
+if $test $patchlevel -lt 11; then
echo " "
val="$undef"
case "$d_suidsafe" in
esac
set d_dosuid
eval $setvar
+else
+ case "$d_dosuid" in
+ "$define")
+ cat >&4 <<EOH
+
+SUID emulation has been removed for 5.12
+Please re-run Configure without -Dd_dosuid
+
+EOH
+ exit 1;
+ ;;
+ esac
+ d_dosuid=undef
+fi
: Find perl5.005 or later.
echo "Looking for a previously installed perl5.005 or later... "
chdir($stem);
;@candidates = map {
[ $_, pack "sss", split m/[._]/, "$_.0.0" ] } glob("5.*");
+ ;@candidates = sort { $a->[1] cmp $b->[1]} @candidates;
}
else {
;@candidates = ();
esac
prefixvar=vendorarch
. ./installprefix
+if $test X"$vendorarch" = X"$vendorlib"; then
+ d_vendorarch="$undef"
+else
+ d_vendorarch="$define"
+fi
: Final catch-all directories to search
$cat <<EOM
: DTrace support
dflt_dtrace='/usr/sbin/dtrace'
+$test -x /usr/bin/dtrace && dflt_dtrace='/usr/bin/dtrace'
+
cat <<EOM
Perl can be built to support DTrace on platforms that support it.
;;
esac
-: get list of predefined functions in a handy place
+: Figure out where the libc is located
case "$runnm" in
true)
+: get list of predefined functions in a handy place
echo " "
case "$libc" in
'') libc=unknown
echo " "
echo "$nm didn't seem to work right. Trying $ar instead..." >&4
com=''
- if $ar t $libc > libc.tmp && $contains '^fprintf$' libc.tmp >/dev/null 2>&1; then
+ if $ar t $libc > libc.tmp && \
+ $contains '^fprintf$' libc.tmp >/dev/null 2>&1
+ then
for thisname in $libnames $libc; do
$ar t $thisname >>libc.tmp
done
$sed -e "s/\\$_o\$//" < libc.tmp > libc.list
echo "Ok." >&4
elif test "X$osname" = "Xos2" && $ar tv $libc > libc.tmp; then
- # Repeat libc to extract forwarders to DLL entries too
for thisname in $libnames $libc; do
$ar tv $thisname >>libc.tmp
- # Revision 50 of EMX has bug in $ar.
- # it will not extract forwarders to DLL entries
- # Use emximp which will extract exactly them.
emximp -o tmp.imp $thisname \
2>/dev/null && \
$sed -e 's/^\([_a-zA-Z0-9]*\) .*$/\1/p' \
< tmp.imp >>libc.tmp
- $rm tmp.imp
+ $rm -f tmp.imp
done
$sed -e "s/\\$_o\$//" -e 's/^ \+//' < libc.tmp > libc.list
echo "Ok." >&4
else
echo "$ar didn't seem to work right." >&4
echo "Maybe this is a Cray...trying bld instead..." >&4
- if bld t $libc | $sed -e 's/.*\///' -e "s/\\$_o:.*\$//" > libc.list
+ if bld t $libc | \
+ $sed -e 's/.*\///' -e "s/\\$_o:.*\$//" > libc.list &&
+ $test -s libc.list
then
for thisname in $libnames; do
bld t $libnames | \
*) 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
+ $sed -n 's/^\([^ ]*\)[ ]*syscall[0-9]*[ ]*$/\1/p' \
+ /lib/syscalls.exp >>libc.list
fi
;;
esac
-a) tf=libc.tmp; tdc="[]";;
*) tlook="^$1\$"; tf=libc.list; tdc="()";;
esac;
+case "$d_cplusplus" in
+ $define) extern_C="extern \"C\"" ;;
+ *) extern_C="extern" ;;
+esac;
tx=yes;
case "$reuseval-$4" in
true-) ;;
case "$tx" in
yes)
tval=false;
- case "$d_cplusplus" in
- $define) extern_C=\"C\";;
- esac;
if $test "$runnm" = true; then
if $contains $tlook $tf >/dev/null 2>&1; then
tval=true;
elif $test "$mistrustnm" = compile -o "$mistrustnm" = run; then
- echo "extern $extern_C void *$1$tdc; void *(*(p()))$tdc { return &$1; } int main() { if(p()) return(0); else return(1); }"> try.c;
+ echo "$extern_C void *$1$tdc; void *(*(p()))$tdc { return &$1; } int main() { if(p()) return(0); else return(1); }"> try.c;
$cc -o try $optimize $ccflags $ldflags try.c >/dev/null 2>&1 $libs && tval=true;
$test "$mistrustnm" = run -a -x try && { $run ./try$_exe >/dev/null 2>&1 || tval=false; };
$rm_try;
fi;
else
- echo "extern $extern_C void *$1$tdc; void *(*(p()))$tdc { return &$1; } int main() { if(p()) return(0); else return(1); }"> try.c;
+ echo "$extern_C void *$1$tdc; void *(*(p()))$tdc { return &$1; } int main() { if(p()) return(0); else return(1); }"> try.c;
$cc -o try $optimize $ccflags $ldflags try.c $libs >/dev/null 2>&1 && tval=true;
$rm_try;
fi;
rp="Do you wish to use dynamic loading?"
. ./myread
usedl="$ans"
+bin_ELF="$undef"
case "$ans" in
y*) usedl="$define"
case "$dlsrc" in
You appear to have ELF support. I'll use $cc to build dynamic libraries.
EOM
dflt="$cc"
+ bin_ELF="$define"
else
echo "I'll use ld to build dynamic libraries."
dflt='ld'
case "$lddlflags" in
'') case "$osname" in
beos) dflt='-nostart' ;;
+ haiku) dflt='-shared' ;;
hpux) dflt='-b';
case "$gccversion" in
'') dflt="$dflt +vnocompatwarnings" ;;
;;
*) case "$useshrplib" in
'') case "$osname" in
- svr4*|nonstopux|dgux|dynixptx|esix|powerux|beos|cygwin*)
+ svr4*|nonstopux|dgux|dynixptx|esix|powerux|beos|haiku|cygwin*)
dflt=y
also='Building a shared libperl is required for dynamic loading to work on your system.'
;;
case "$useshrplib" in
true)
+ case "$userelocatableinc" in
+ true|define)
+ echo "Cannot build with both -Duserelocatableinc and -Duseshrplib" >&4
+ echo "See INSTALL for an explanation why that won't work." >&4
+ exit 4
+ ;;
+ esac
case "$libperl" in
'')
# Figure out a good name for libperl.so. Since it gets stored in
# a version-specific architecture-dependent library, the version
# number isn't really that important, except for making cc/ld happy.
#
- # A name such as libperl.so.3.1
+ # A name such as libperl.so.10.1
majmin="libperl.$so.$patchlevel.$subversion"
- # A name such as libperl.so.301
+ # A name such as libperl.so.100
majonly=`echo $patchlevel $subversion |
$awk '{printf "%d%02d", $1, $2}'`
majonly=libperl.$so.$majonly
linux*|gnu*) # ld won't link with a bare -lperl otherwise.
dflt=libperl.$so
;;
- cygwin*) # ld links against an importlib
- dflt=libperl$lib_ext
+ cygwin*) # ld links now against the dll directly
+ majmin="cygperl5_${patchlevel}_${subversion}.${so}"
+ majonly=`echo $patchlevel $subversion |
+ $awk '{printf "%03d%03d", $1, $2}'`
+ majonly=cygperl5.$majonly.$so
+ dflt=$majmin
;;
*) # Try to guess based on whether libc has major.minor.
case "$libc" in
beos)
# beos doesn't like the default, either.
;;
+ haiku)
+ # Haiku doesn't like the default, either.
+ ;;
hpux*)
# hpux doesn't like the default, either.
tmp_shrpenv="env LDOPTS=\"+s +b${shrpdir}\""
;;
+ cygwin)
+ # cygwin needs only ldlibpth
+ ;;
*)
tmp_shrpenv="env LD_RUN_PATH=$shrpdir"
;;
echo "(Attempting domain name extraction from $tans)"
dflt=.`$sed -n -e 's/ / /g' \
-e 's/^search *\([^ ]*\).*/\1/p' $tans \
- | ./tr '[A-Z]' '[a-z]' 2>/dev/null`
+ -e 1q 2>/dev/null`
case "$dflt" in
.) dflt=.`$sed -n -e 's/ / /g' \
-e 's/^domain *\([^ ]*\).*/\1/p' $tans \
- | ./tr '[A-Z]' '[a-z]' 2>/dev/null`
+ -e 1q 2>/dev/null`
;;
esac
fi
prefixvar=vendorscript
. ./installprefix
+: script used to emit important warnings
+cat >warn <<EOS
+$startsh
+if test \$# -gt 0; then
+ echo "\$@" >msg
+else
+ cat >msg
+fi
+echo "*** WARNING:" >&4
+sed -e 's/^/*** /' <msg >&4
+echo "*** " >&4
+cat msg >>config.msg
+echo " " >>config.msg
+rm -f msg
+EOS
+chmod +x warn
+$eunicefix warn
+
+: see which of string.h or strings.h is needed
+echo " "
+strings=`./findhdr string.h`
+if $test "$strings" && $test -r "$strings"; then
+ echo "Using <string.h> instead of <strings.h>." >&4
+ val="$define"
+else
+ val="$undef"
+ strings=`./findhdr strings.h`
+ if $test "$strings" && $test -r "$strings"; then
+ echo "Using <strings.h> instead of <string.h>." >&4
+ else
+ ./warn "No string header found -- You'll surely have problems."
+ fi
+fi
+set i_string
+eval $setvar
+case "$i_string" in
+"$undef") strings=`./findhdr strings.h`;;
+*) strings=`./findhdr string.h`;;
+esac
+
: see if qgcvt exists
set qgcvt d_qgcvt
eval $inlibc
#include <stdio.h>
-#define I_STDLIB $i_stdlib
+#$i_stdlib I_STDLIB
#ifdef I_STDLIB
#include <stdlib.h>
#endif
+#$i_string I_STRING
+#ifdef I_STRING
+# include <string.h>
+#else
+# include <strings.h>
+#endif
-int
-checkit(expect, got)
-char *expect;
-char *got;
+int checkit(char *expect, char *got)
{
if (strcmp(expect, got)) {
printf("%s oddity: Expected %s, got %s\n",
set alarm d_alarm
eval $inlibc
+: see if 64bit time functions exists
+
+set ctime64 d_ctime64
+eval $inlibc
+
+set localtime64 d_localtime64
+eval $inlibc
+
+set gmtime64 d_gmtime64
+eval $inlibc
+
+set mktime64 d_mktime64
+eval $inlibc
+
+set difftime64 d_difftime64
+eval $inlibc
+
+set asctime64 d_asctime64
+eval $inlibc
+
: see if POSIX threads are available
set pthread.h i_pthread
eval $inhdr
define)
case "$asctime_r_proto" in
''|0) try='char* asctime_r(const struct tm*, char*);'
- ./protochk "extern $try" $hdrs && asctime_r_proto=B_SB ;;
+ ./protochk "$extern_C $try" $hdrs && asctime_r_proto=B_SB ;;
esac
case "$asctime_r_proto" in
''|0) try='char* asctime_r(const struct tm*, char*, int);'
- ./protochk "extern $try" $hdrs && asctime_r_proto=B_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && asctime_r_proto=B_SBI ;;
esac
case "$asctime_r_proto" in
''|0) try='int asctime_r(const struct tm*, char*);'
- ./protochk "extern $try" $hdrs && asctime_r_proto=I_SB ;;
+ ./protochk "$extern_C $try" $hdrs && asctime_r_proto=I_SB ;;
esac
case "$asctime_r_proto" in
''|0) try='int asctime_r(const struct tm*, char*, int);'
- ./protochk "extern $try" $hdrs && asctime_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && asctime_r_proto=I_SBI ;;
esac
case "$asctime_r_proto" in
''|0) d_asctime_r=undef
eval $setvar
$rm -f attrib*
+: Look for GCC-style attribute deprecated
+case "$d_attribute_deprecated" in
+'')
+echo " "
+echo "Checking whether your compiler can handle __attribute__((deprecated)) ..." >&4
+$cat >attrib.c <<'EOCP'
+#include <stdio.h>
+int I_am_deprecated(void) __attribute__((deprecated));
+EOCP
+if $cc $ccflags -c attrib.c >attrib.out 2>&1 ; then
+ if $contains 'warning' attrib.out >/dev/null 2>&1; then
+ echo "Your C compiler doesn't support __attribute__((deprecated))."
+ val="$undef"
+ else
+ echo "Your C compiler supports __attribute__((deprecated))."
+ val="$define"
+ fi
+else
+ echo "Your C compiler doesn't seem to understand __attribute__ at all."
+ val="$undef"
+fi
+;;
+*) val="$d_attribute_deprecated" ;;
+esac
+set d_attribute_deprecated
+eval $setvar
+$rm -f attrib*
+
: Look for GCC-style attribute warn_unused_result
case "$d_attribute_warn_unused_result" in
'')
signal(SIGFPE, blech);
/* Don't let compiler optimize the test away. Store the number
- in a writable string for gcc to pass to sscanf under HP/UX.
+ in a writable string for gcc to pass to sscanf under HP-UX.
*/
sprintf(str, "2147483647");
sscanf(str, "%lf", &f); /* f = (double) 0x7fffffff; */
optimized the whole file away
*/
/* Store the number in a writable string for gcc to pass to
- sscanf under HP/UX.
+ sscanf under HP-UX.
*/
sprintf(str, "-123");
sscanf(str, "%lf", &f); /* f = -123.; */
define)
case "$crypt_r_proto" in
''|0) try='char* crypt_r(const char*, const char*, struct crypt_data*);'
- ./protochk "extern $try" $hdrs && crypt_r_proto=B_CCS ;;
+ ./protochk "$extern_C $try" $hdrs && crypt_r_proto=B_CCS ;;
esac
case "$crypt_r_proto" in
''|0) try='char* crypt_r(const char*, const char*, CRYPTD*);'
- ./protochk "extern $try" $hdrs && crypt_r_proto=B_CCD ;;
+ ./protochk "$extern_C $try" $hdrs && crypt_r_proto=B_CCD ;;
esac
case "$crypt_r_proto" in
''|0) d_crypt_r=undef
define)
case "$ctermid_r_proto" in
''|0) try='char* ctermid_r(char*);'
- ./protochk "extern $try" $hdrs && ctermid_r_proto=B_B ;;
+ ./protochk "$extern_C $try" $hdrs && ctermid_r_proto=B_B ;;
esac
case "$ctermid_r_proto" in
''|0) d_ctermid_r=undef
define)
case "$ctime_r_proto" in
''|0) try='char* ctime_r(const time_t*, char*);'
- ./protochk "extern $try" $hdrs && ctime_r_proto=B_SB ;;
+ ./protochk "$extern_C $try" $hdrs && ctime_r_proto=B_SB ;;
esac
case "$ctime_r_proto" in
''|0) try='char* ctime_r(const time_t*, char*, int);'
- ./protochk "extern $try" $hdrs && ctime_r_proto=B_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && ctime_r_proto=B_SBI ;;
esac
case "$ctime_r_proto" in
''|0) try='int ctime_r(const time_t*, char*);'
- ./protochk "extern $try" $hdrs && ctime_r_proto=I_SB ;;
+ ./protochk "$extern_C $try" $hdrs && ctime_r_proto=I_SB ;;
esac
case "$ctime_r_proto" in
''|0) try='int ctime_r(const time_t*, char*, int);'
- ./protochk "extern $try" $hdrs && ctime_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && ctime_r_proto=I_SBI ;;
esac
case "$ctime_r_proto" in
''|0) d_ctime_r=undef
define)
case "$drand48_r_proto" in
''|0) try='int drand48_r(struct drand48_data*, double*);'
- ./protochk "extern $try" $hdrs && drand48_r_proto=I_ST ;;
+ ./protochk "$extern_C $try" $hdrs && drand48_r_proto=I_ST ;;
esac
case "$drand48_r_proto" in
''|0) d_drand48_r=undef
define)
case "$endgrent_r_proto" in
''|0) try='int endgrent_r(FILE**);'
- ./protochk "extern $try" $hdrs && endgrent_r_proto=I_H ;;
+ ./protochk "$extern_C $try" $hdrs && endgrent_r_proto=I_H ;;
esac
case "$endgrent_r_proto" in
''|0) try='void endgrent_r(FILE**);'
- ./protochk "extern $try" $hdrs && endgrent_r_proto=V_H ;;
+ ./protochk "$extern_C $try" $hdrs && endgrent_r_proto=V_H ;;
esac
case "$endgrent_r_proto" in
''|0) d_endgrent_r=undef
define)
case "$endhostent_r_proto" in
''|0) try='int endhostent_r(struct hostent_data*);'
- ./protochk "extern $try" $hdrs && endhostent_r_proto=I_D ;;
+ ./protochk "$extern_C $try" $hdrs && endhostent_r_proto=I_D ;;
esac
case "$endhostent_r_proto" in
''|0) try='void endhostent_r(struct hostent_data*);'
- ./protochk "extern $try" $hdrs && endhostent_r_proto=V_D ;;
+ ./protochk "$extern_C $try" $hdrs && endhostent_r_proto=V_D ;;
esac
case "$endhostent_r_proto" in
''|0) d_endhostent_r=undef
define)
case "$endnetent_r_proto" in
''|0) try='int endnetent_r(struct netent_data*);'
- ./protochk "extern $try" $hdrs && endnetent_r_proto=I_D ;;
+ ./protochk "$extern_C $try" $hdrs && endnetent_r_proto=I_D ;;
esac
case "$endnetent_r_proto" in
''|0) try='void endnetent_r(struct netent_data*);'
- ./protochk "extern $try" $hdrs && endnetent_r_proto=V_D ;;
+ ./protochk "$extern_C $try" $hdrs && endnetent_r_proto=V_D ;;
esac
case "$endnetent_r_proto" in
''|0) d_endnetent_r=undef
define)
case "$endprotoent_r_proto" in
''|0) try='int endprotoent_r(struct protoent_data*);'
- ./protochk "extern $try" $hdrs && endprotoent_r_proto=I_D ;;
+ ./protochk "$extern_C $try" $hdrs && endprotoent_r_proto=I_D ;;
esac
case "$endprotoent_r_proto" in
''|0) try='void endprotoent_r(struct protoent_data*);'
- ./protochk "extern $try" $hdrs && endprotoent_r_proto=V_D ;;
+ ./protochk "$extern_C $try" $hdrs && endprotoent_r_proto=V_D ;;
esac
case "$endprotoent_r_proto" in
''|0) d_endprotoent_r=undef
define)
case "$endpwent_r_proto" in
''|0) try='int endpwent_r(FILE**);'
- ./protochk "extern $try" $hdrs && endpwent_r_proto=I_H ;;
+ ./protochk "$extern_C $try" $hdrs && endpwent_r_proto=I_H ;;
esac
case "$endpwent_r_proto" in
''|0) try='void endpwent_r(FILE**);'
- ./protochk "extern $try" $hdrs && endpwent_r_proto=V_H ;;
+ ./protochk "$extern_C $try" $hdrs && endpwent_r_proto=V_H ;;
esac
case "$endpwent_r_proto" in
''|0) d_endpwent_r=undef
define)
case "$endservent_r_proto" in
''|0) try='int endservent_r(struct servent_data*);'
- ./protochk "extern $try" $hdrs && endservent_r_proto=I_D ;;
+ ./protochk "$extern_C $try" $hdrs && endservent_r_proto=I_D ;;
esac
case "$endservent_r_proto" in
''|0) try='void endservent_r(struct servent_data*);'
- ./protochk "extern $try" $hdrs && endservent_r_proto=V_D ;;
+ ./protochk "$extern_C $try" $hdrs && endservent_r_proto=V_D ;;
esac
case "$endservent_r_proto" in
''|0) d_endservent_r=undef
eval $setvar
$rm_try
-: script used to emit important warnings
-cat >warn <<EOS
-$startsh
-if test \$# -gt 0; then
- echo "\$@" >msg
-else
- cat >msg
-fi
-echo "*** WARNING:" >&4
-sed -e 's/^/*** /' <msg >&4
-echo "*** " >&4
-cat msg >>config.msg
-echo " " >>config.msg
-rm -f msg
-EOS
-chmod +x warn
-$eunicefix warn
-
-: see which of string.h or strings.h is needed
-echo " "
-strings=`./findhdr string.h`
-if $test "$strings" && $test -r "$strings"; then
- echo "Using <string.h> instead of <strings.h>." >&4
- val="$define"
-else
- val="$undef"
- strings=`./findhdr strings.h`
- if $test "$strings" && $test -r "$strings"; then
- echo "Using <strings.h> instead of <string.h>." >&4
- else
- ./warn "No string header found -- You'll surely have problems."
- fi
-fi
-set i_string
-eval $setvar
-case "$i_string" in
-"$undef") strings=`./findhdr strings.h`;;
-*) strings=`./findhdr string.h`;;
-esac
-
: see if this is a sys/file.h system
val=''
set sys/file.h val
fi
$rm_try
+: see if ndbm.h is available
+set ndbm.h i_ndbm
+eval $inhdr
+: Compatibility location for RedHat 7.1
+set gdbm/ndbm.h i_gdbmndbm
+eval $inhdr
+: Compatibility location for Debian 4.0
+set gdbm-ndbm.h i_gdbm_ndbm
+eval $inhdr
+
+val="$undef"
+if $test "$i_ndbm" = "$define" -o "$i_gdbmndbm" = "$define" -o "$i_gdbm_ndbm" = "$define"; then
+ : see if dbm_open exists
+ set dbm_open d_dbm_open
+ eval $inlibc
+ case "$d_dbm_open" in
+ $undef)
+ i_ndbm="$undef"
+ i_gdbmndbm="$undef"
+ i_gdbm_ndbm="$undef"
+ echo "We won't be including <ndbm.h>"
+ val="$undef"
+ ;;
+ *) val="$define"
+ ;;
+ esac
+fi
+set d_ndbm
+eval $setvar
+
+ndbm_hdr_protochk='name=$1; hdr=$2;
+eval "ihdr=\$""i_$name";
+val="$undef";
+if $test "$ihdr" = "$define"; then
+ $echo "Checking if your <$hdr> uses prototypes..." >&4;
+ case "$d_cplusplus" in
+ $define) ./protochk "$extern_C void dbm_close(DBM *);" literal "extern \"C\" {" $ihdr $hdr literal "}" && val="$define" ;;
+ *) ./protochk "$extern_C void dbm_close(int, int);" $ihdr $hdr || val="$define" ;;
+ esac;
+ case "$val" in
+ $define) $echo "Your <$hdr> seems to have prototypes";;
+ *) $echo "Your <$hdr> does not seem to have prototypes";;
+ esac;
+fi;
+set "d_${name}_h_uses_prototypes";
+eval $setvar'
+
+set ndbm ndbm.h
+eval $ndbm_hdr_protochk
+set gdbmndbm gdbm/ndbm.h
+eval $ndbm_hdr_protochk
+set gdbm_ndbm gdbm-ndbm.h
+eval $ndbm_hdr_protochk
+
+: see if getaddrinfo exists
+set getaddrinfo d_getaddrinfo
+eval $inlibc
+
: see if getcwd exists
set getcwd d_getcwd
eval $inlibc
define)
case "$getgrent_r_proto" in
''|0) try='int getgrent_r(struct group*, char*, size_t, struct group**);'
- ./protochk "extern $try" $hdrs && getgrent_r_proto=I_SBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getgrent_r_proto=I_SBWR ;;
esac
case "$getgrent_r_proto" in
''|0) try='int getgrent_r(struct group*, char*, int, struct group**);'
- ./protochk "extern $try" $hdrs && getgrent_r_proto=I_SBIR ;;
+ ./protochk "$extern_C $try" $hdrs && getgrent_r_proto=I_SBIR ;;
esac
case "$getgrent_r_proto" in
''|0) try='struct group* getgrent_r(struct group*, char*, size_t);'
- ./protochk "extern $try" $hdrs && getgrent_r_proto=S_SBW ;;
+ ./protochk "$extern_C $try" $hdrs && getgrent_r_proto=S_SBW ;;
esac
case "$getgrent_r_proto" in
''|0) try='struct group* getgrent_r(struct group*, char*, int);'
- ./protochk "extern $try" $hdrs && getgrent_r_proto=S_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getgrent_r_proto=S_SBI ;;
esac
case "$getgrent_r_proto" in
''|0) try='int getgrent_r(struct group*, char*, int);'
- ./protochk "extern $try" $hdrs && getgrent_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getgrent_r_proto=I_SBI ;;
esac
case "$getgrent_r_proto" in
''|0) try='int getgrent_r(struct group*, char*, int, FILE**);'
- ./protochk "extern $try" $hdrs && getgrent_r_proto=I_SBIH ;;
+ ./protochk "$extern_C $try" $hdrs && getgrent_r_proto=I_SBIH ;;
esac
case "$getgrent_r_proto" in
''|0) d_getgrent_r=undef
define)
case "$getgrgid_r_proto" in
''|0) try='int getgrgid_r(gid_t, struct group*, char*, size_t, struct group**);'
- ./protochk "extern $try" $hdrs && getgrgid_r_proto=I_TSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getgrgid_r_proto=I_TSBWR ;;
esac
case "$getgrgid_r_proto" in
''|0) try='int getgrgid_r(gid_t, struct group*, char*, int, struct group**);'
- ./protochk "extern $try" $hdrs && getgrgid_r_proto=I_TSBIR ;;
+ ./protochk "$extern_C $try" $hdrs && getgrgid_r_proto=I_TSBIR ;;
esac
case "$getgrgid_r_proto" in
''|0) try='int getgrgid_r(gid_t, struct group*, char*, int);'
- ./protochk "extern $try" $hdrs && getgrgid_r_proto=I_TSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getgrgid_r_proto=I_TSBI ;;
esac
case "$getgrgid_r_proto" in
''|0) try='struct group* getgrgid_r(gid_t, struct group*, char*, int);'
- ./protochk "extern $try" $hdrs && getgrgid_r_proto=S_TSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getgrgid_r_proto=S_TSBI ;;
esac
case "$getgrgid_r_proto" in
''|0) d_getgrgid_r=undef
define)
case "$getgrnam_r_proto" in
''|0) try='int getgrnam_r(const char*, struct group*, char*, size_t, struct group**);'
- ./protochk "extern $try" $hdrs && getgrnam_r_proto=I_CSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getgrnam_r_proto=I_CSBWR ;;
esac
case "$getgrnam_r_proto" in
''|0) try='int getgrnam_r(const char*, struct group*, char*, int, struct group**);'
- ./protochk "extern $try" $hdrs && getgrnam_r_proto=I_CSBIR ;;
+ ./protochk "$extern_C $try" $hdrs && getgrnam_r_proto=I_CSBIR ;;
esac
case "$getgrnam_r_proto" in
''|0) try='struct group* getgrnam_r(const char*, char*, int);'
- ./protochk "extern $try" $hdrs && getgrnam_r_proto=S_CBI ;;
+ ./protochk "$extern_C $try" $hdrs && getgrnam_r_proto=S_CBI ;;
esac
case "$getgrnam_r_proto" in
''|0) try='int getgrnam_r(const char*, struct group*, char*, int);'
- ./protochk "extern $try" $hdrs && getgrnam_r_proto=I_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getgrnam_r_proto=I_CSBI ;;
esac
case "$getgrnam_r_proto" in
''|0) try='struct group* getgrnam_r(const char*, struct group*, char*, int);'
- ./protochk "extern $try" $hdrs && getgrnam_r_proto=S_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getgrnam_r_proto=S_CSBI ;;
esac
case "$getgrnam_r_proto" in
''|0) d_getgrnam_r=undef
define)
case "$gethostbyaddr_r_proto" in
''|0) try='int gethostbyaddr_r(const char*, size_t, int, struct hostent*, char*, size_t, struct hostent**, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=I_CWISBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=I_CWISBWRE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='struct hostent* gethostbyaddr_r(const char*, size_t, int, struct hostent*, char*, size_t, int, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=S_CWISBWIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=S_CWISBWIE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='struct hostent* gethostbyaddr_r(const char*, size_t, int, struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=S_CWISBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=S_CWISBIE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='struct hostent* gethostbyaddr_r(const void*, size_t, int, struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=S_TWISBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=S_TWISBIE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='struct hostent* gethostbyaddr_r(const char*, int, int, struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=S_CIISBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=S_CIISBIE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='struct hostent* gethostbyaddr_r(const char*, struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=S_CSBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=S_CSBIE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='struct hostent* gethostbyaddr_r(const void*, struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=S_TSBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=S_TSBIE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='int gethostbyaddr_r(const char*, size_t, int, struct hostent*, struct hostent_data*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=I_CWISD ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=I_CWISD ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='int gethostbyaddr_r(const char*, int, int, struct hostent*, struct hostent_data*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=I_CIISD ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=I_CIISD ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='int gethostbyaddr_r(const char*, int, int);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=I_CII ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=I_CII ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) try='int gethostbyaddr_r(const void*, socklen_t, int, struct hostent*, char*, size_t, struct hostent**, int*);'
- ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=I_TsISBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyaddr_r_proto=I_TsISBWRE ;;
esac
case "$gethostbyaddr_r_proto" in
''|0) d_gethostbyaddr_r=undef
define)
case "$gethostbyname_r_proto" in
''|0) try='int gethostbyname_r(const char*, struct hostent*, char*, size_t, struct hostent**, int*);'
- ./protochk "extern $try" $hdrs && gethostbyname_r_proto=I_CSBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyname_r_proto=I_CSBWRE ;;
esac
case "$gethostbyname_r_proto" in
''|0) try='struct hostent* gethostbyname_r(const char*, struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostbyname_r_proto=S_CSBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyname_r_proto=S_CSBIE ;;
esac
case "$gethostbyname_r_proto" in
''|0) try='int gethostbyname_r(const char*, struct hostent*, struct hostent_data*);'
- ./protochk "extern $try" $hdrs && gethostbyname_r_proto=I_CSD ;;
+ ./protochk "$extern_C $try" $hdrs && gethostbyname_r_proto=I_CSD ;;
esac
case "$gethostbyname_r_proto" in
''|0) d_gethostbyname_r=undef
define)
case "$gethostent_r_proto" in
''|0) try='int gethostent_r(struct hostent*, char*, size_t, struct hostent**, int*);'
- ./protochk "extern $try" $hdrs && gethostent_r_proto=I_SBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostent_r_proto=I_SBWRE ;;
esac
case "$gethostent_r_proto" in
''|0) try='int gethostent_r(struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostent_r_proto=I_SBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostent_r_proto=I_SBIE ;;
esac
case "$gethostent_r_proto" in
''|0) try='struct hostent* gethostent_r(struct hostent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && gethostent_r_proto=S_SBIE ;;
+ ./protochk "$extern_C $try" $hdrs && gethostent_r_proto=S_SBIE ;;
esac
case "$gethostent_r_proto" in
''|0) try='struct hostent* gethostent_r(struct hostent*, char*, int);'
- ./protochk "extern $try" $hdrs && gethostent_r_proto=S_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && gethostent_r_proto=S_SBI ;;
esac
case "$gethostent_r_proto" in
''|0) try='int gethostent_r(struct hostent*, char*, int);'
- ./protochk "extern $try" $hdrs && gethostent_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && gethostent_r_proto=I_SBI ;;
esac
case "$gethostent_r_proto" in
''|0) try='int gethostent_r(struct hostent*, struct hostent_data*);'
- ./protochk "extern $try" $hdrs && gethostent_r_proto=I_SD ;;
+ ./protochk "$extern_C $try" $hdrs && gethostent_r_proto=I_SD ;;
esac
case "$gethostent_r_proto" in
''|0) d_gethostent_r=undef
define)
case "$getlogin_r_proto" in
''|0) try='int getlogin_r(char*, size_t);'
- ./protochk "extern $try" $hdrs && getlogin_r_proto=I_BW ;;
+ ./protochk "$extern_C $try" $hdrs && getlogin_r_proto=I_BW ;;
esac
case "$getlogin_r_proto" in
''|0) try='int getlogin_r(char*, int);'
- ./protochk "extern $try" $hdrs && getlogin_r_proto=I_BI ;;
+ ./protochk "$extern_C $try" $hdrs && getlogin_r_proto=I_BI ;;
esac
case "$getlogin_r_proto" in
''|0) try='char* getlogin_r(char*, size_t);'
- ./protochk "extern $try" $hdrs && getlogin_r_proto=B_BW ;;
+ ./protochk "$extern_C $try" $hdrs && getlogin_r_proto=B_BW ;;
esac
case "$getlogin_r_proto" in
''|0) try='char* getlogin_r(char*, int);'
- ./protochk "extern $try" $hdrs && getlogin_r_proto=B_BI ;;
+ ./protochk "$extern_C $try" $hdrs && getlogin_r_proto=B_BI ;;
esac
case "$getlogin_r_proto" in
''|0) d_getlogin_r=undef
set getmntent d_getmntent
eval $inlibc
+: see if getnameinfo exists
+set getnameinfo d_getnameinfo
+eval $inlibc
+
: see if getnetbyaddr exists
set getnetbyaddr d_getnbyaddr
eval $inlibc
define)
case "$getnetbyaddr_r_proto" in
''|0) try='int getnetbyaddr_r(unsigned long, int, struct netent*, char*, size_t, struct netent**, int*);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=I_UISBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=I_UISBWRE ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) try='int getnetbyaddr_r(long, int, struct netent*, char*, int);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=I_LISBI ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=I_LISBI ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) try='struct netent* getnetbyaddr_r(in_addr_t, int, struct netent*, char*, int);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=S_TISBI ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=S_TISBI ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) try='struct netent* getnetbyaddr_r(long, int, struct netent*, char*, int);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=S_LISBI ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=S_LISBI ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) try='int getnetbyaddr_r(in_addr_t, int, struct netent*, struct netent_data*);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=I_TISD ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=I_TISD ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) try='int getnetbyaddr_r(long, int, struct netent*, struct netent_data*);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=I_LISD ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=I_LISD ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) try='int getnetbyaddr_r(int, int, struct netent*, struct netent_data*);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=I_IISD ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=I_IISD ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) try='int getnetbyaddr_r(uint32_t, int, struct netent*, char*, size_t, struct netent**, int*);'
- ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=I_uISBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyaddr_r_proto=I_uISBWRE ;;
esac
case "$getnetbyaddr_r_proto" in
''|0) d_getnetbyaddr_r=undef
define)
case "$getnetbyname_r_proto" in
''|0) try='int getnetbyname_r(const char*, struct netent*, char*, size_t, struct netent**, int*);'
- ./protochk "extern $try" $hdrs && getnetbyname_r_proto=I_CSBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyname_r_proto=I_CSBWRE ;;
esac
case "$getnetbyname_r_proto" in
''|0) try='int getnetbyname_r(const char*, struct netent*, char*, int);'
- ./protochk "extern $try" $hdrs && getnetbyname_r_proto=I_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyname_r_proto=I_CSBI ;;
esac
case "$getnetbyname_r_proto" in
''|0) try='struct netent* getnetbyname_r(const char*, struct netent*, char*, int);'
- ./protochk "extern $try" $hdrs && getnetbyname_r_proto=S_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyname_r_proto=S_CSBI ;;
esac
case "$getnetbyname_r_proto" in
''|0) try='int getnetbyname_r(const char*, struct netent*, struct netent_data*);'
- ./protochk "extern $try" $hdrs && getnetbyname_r_proto=I_CSD ;;
+ ./protochk "$extern_C $try" $hdrs && getnetbyname_r_proto=I_CSD ;;
esac
case "$getnetbyname_r_proto" in
''|0) d_getnetbyname_r=undef
define)
case "$getnetent_r_proto" in
''|0) try='int getnetent_r(struct netent*, char*, size_t, struct netent**, int*);'
- ./protochk "extern $try" $hdrs && getnetent_r_proto=I_SBWRE ;;
+ ./protochk "$extern_C $try" $hdrs && getnetent_r_proto=I_SBWRE ;;
esac
case "$getnetent_r_proto" in
''|0) try='int getnetent_r(struct netent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && getnetent_r_proto=I_SBIE ;;
+ ./protochk "$extern_C $try" $hdrs && getnetent_r_proto=I_SBIE ;;
esac
case "$getnetent_r_proto" in
''|0) try='struct netent* getnetent_r(struct netent*, char*, int, int*);'
- ./protochk "extern $try" $hdrs && getnetent_r_proto=S_SBIE ;;
+ ./protochk "$extern_C $try" $hdrs && getnetent_r_proto=S_SBIE ;;
esac
case "$getnetent_r_proto" in
''|0) try='struct netent* getnetent_r(struct netent*, char*, int);'
- ./protochk "extern $try" $hdrs && getnetent_r_proto=S_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getnetent_r_proto=S_SBI ;;
esac
case "$getnetent_r_proto" in
''|0) try='int getnetent_r(struct netent*, char*, int);'
- ./protochk "extern $try" $hdrs && getnetent_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getnetent_r_proto=I_SBI ;;
esac
case "$getnetent_r_proto" in
''|0) try='int getnetent_r(struct netent*, struct netent_data*);'
- ./protochk "extern $try" $hdrs && getnetent_r_proto=I_SD ;;
+ ./protochk "$extern_C $try" $hdrs && getnetent_r_proto=I_SD ;;
esac
case "$getnetent_r_proto" in
''|0) d_getnetent_r=undef
define)
case "$getprotobyname_r_proto" in
''|0) try='int getprotobyname_r(const char*, struct protoent*, char*, size_t, struct protoent**);'
- ./protochk "extern $try" $hdrs && getprotobyname_r_proto=I_CSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getprotobyname_r_proto=I_CSBWR ;;
esac
case "$getprotobyname_r_proto" in
''|0) try='struct protoent* getprotobyname_r(const char*, struct protoent*, char*, int);'
- ./protochk "extern $try" $hdrs && getprotobyname_r_proto=S_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getprotobyname_r_proto=S_CSBI ;;
esac
case "$getprotobyname_r_proto" in
''|0) try='int getprotobyname_r(const char*, struct protoent*, struct protoent_data*);'
- ./protochk "extern $try" $hdrs && getprotobyname_r_proto=I_CSD ;;
+ ./protochk "$extern_C $try" $hdrs && getprotobyname_r_proto=I_CSD ;;
esac
case "$getprotobyname_r_proto" in
''|0) d_getprotobyname_r=undef
define)
case "$getprotobynumber_r_proto" in
''|0) try='int getprotobynumber_r(int, struct protoent*, char*, size_t, struct protoent**);'
- ./protochk "extern $try" $hdrs && getprotobynumber_r_proto=I_ISBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getprotobynumber_r_proto=I_ISBWR ;;
esac
case "$getprotobynumber_r_proto" in
''|0) try='struct protoent* getprotobynumber_r(int, struct protoent*, char*, int);'
- ./protochk "extern $try" $hdrs && getprotobynumber_r_proto=S_ISBI ;;
+ ./protochk "$extern_C $try" $hdrs && getprotobynumber_r_proto=S_ISBI ;;
esac
case "$getprotobynumber_r_proto" in
''|0) try='int getprotobynumber_r(int, struct protoent*, struct protoent_data*);'
- ./protochk "extern $try" $hdrs && getprotobynumber_r_proto=I_ISD ;;
+ ./protochk "$extern_C $try" $hdrs && getprotobynumber_r_proto=I_ISD ;;
esac
case "$getprotobynumber_r_proto" in
''|0) d_getprotobynumber_r=undef
define)
case "$getprotoent_r_proto" in
''|0) try='int getprotoent_r(struct protoent*, char*, size_t, struct protoent**);'
- ./protochk "extern $try" $hdrs && getprotoent_r_proto=I_SBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getprotoent_r_proto=I_SBWR ;;
esac
case "$getprotoent_r_proto" in
''|0) try='int getprotoent_r(struct protoent*, char*, int);'
- ./protochk "extern $try" $hdrs && getprotoent_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getprotoent_r_proto=I_SBI ;;
esac
case "$getprotoent_r_proto" in
''|0) try='struct protoent* getprotoent_r(struct protoent*, char*, int);'
- ./protochk "extern $try" $hdrs && getprotoent_r_proto=S_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getprotoent_r_proto=S_SBI ;;
esac
case "$getprotoent_r_proto" in
''|0) try='int getprotoent_r(struct protoent*, struct protoent_data*);'
- ./protochk "extern $try" $hdrs && getprotoent_r_proto=I_SD ;;
+ ./protochk "$extern_C $try" $hdrs && getprotoent_r_proto=I_SD ;;
esac
case "$getprotoent_r_proto" in
''|0) d_getprotoent_r=undef
define)
case "$getpwent_r_proto" in
''|0) try='int getpwent_r(struct passwd*, char*, size_t, struct passwd**);'
- ./protochk "extern $try" $hdrs && getpwent_r_proto=I_SBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getpwent_r_proto=I_SBWR ;;
esac
case "$getpwent_r_proto" in
''|0) try='int getpwent_r(struct passwd*, char*, int, struct passwd**);'
- ./protochk "extern $try" $hdrs && getpwent_r_proto=I_SBIR ;;
+ ./protochk "$extern_C $try" $hdrs && getpwent_r_proto=I_SBIR ;;
esac
case "$getpwent_r_proto" in
''|0) try='struct passwd* getpwent_r(struct passwd*, char*, size_t);'
- ./protochk "extern $try" $hdrs && getpwent_r_proto=S_SBW ;;
+ ./protochk "$extern_C $try" $hdrs && getpwent_r_proto=S_SBW ;;
esac
case "$getpwent_r_proto" in
''|0) try='struct passwd* getpwent_r(struct passwd*, char*, int);'
- ./protochk "extern $try" $hdrs && getpwent_r_proto=S_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getpwent_r_proto=S_SBI ;;
esac
case "$getpwent_r_proto" in
''|0) try='int getpwent_r(struct passwd*, char*, int);'
- ./protochk "extern $try" $hdrs && getpwent_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getpwent_r_proto=I_SBI ;;
esac
case "$getpwent_r_proto" in
''|0) try='int getpwent_r(struct passwd*, char*, int, FILE**);'
- ./protochk "extern $try" $hdrs && getpwent_r_proto=I_SBIH ;;
+ ./protochk "$extern_C $try" $hdrs && getpwent_r_proto=I_SBIH ;;
esac
case "$getpwent_r_proto" in
''|0) d_getpwent_r=undef
define)
case "$getpwnam_r_proto" in
''|0) try='int getpwnam_r(const char*, struct passwd*, char*, size_t, struct passwd**);'
- ./protochk "extern $try" $hdrs && getpwnam_r_proto=I_CSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getpwnam_r_proto=I_CSBWR ;;
esac
case "$getpwnam_r_proto" in
''|0) try='int getpwnam_r(const char*, struct passwd*, char*, int, struct passwd**);'
- ./protochk "extern $try" $hdrs && getpwnam_r_proto=I_CSBIR ;;
+ ./protochk "$extern_C $try" $hdrs && getpwnam_r_proto=I_CSBIR ;;
esac
case "$getpwnam_r_proto" in
''|0) try='struct passwd* getpwnam_r(const char*, struct passwd*, char*, int);'
- ./protochk "extern $try" $hdrs && getpwnam_r_proto=S_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getpwnam_r_proto=S_CSBI ;;
esac
case "$getpwnam_r_proto" in
''|0) try='int getpwnam_r(const char*, struct passwd*, char*, int);'
- ./protochk "extern $try" $hdrs && getpwnam_r_proto=I_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getpwnam_r_proto=I_CSBI ;;
esac
case "$getpwnam_r_proto" in
''|0) d_getpwnam_r=undef
define)
case "$getpwuid_r_proto" in
''|0) try='int getpwuid_r(uid_t, struct passwd*, char*, size_t, struct passwd**);'
- ./protochk "extern $try" $hdrs && getpwuid_r_proto=I_TSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getpwuid_r_proto=I_TSBWR ;;
esac
case "$getpwuid_r_proto" in
''|0) try='int getpwuid_r(uid_t, struct passwd*, char*, int, struct passwd**);'
- ./protochk "extern $try" $hdrs && getpwuid_r_proto=I_TSBIR ;;
+ ./protochk "$extern_C $try" $hdrs && getpwuid_r_proto=I_TSBIR ;;
esac
case "$getpwuid_r_proto" in
''|0) try='int getpwuid_r(uid_t, struct passwd*, char*, int);'
- ./protochk "extern $try" $hdrs && getpwuid_r_proto=I_TSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getpwuid_r_proto=I_TSBI ;;
esac
case "$getpwuid_r_proto" in
''|0) try='struct passwd* getpwuid_r(uid_t, struct passwd*, char*, int);'
- ./protochk "extern $try" $hdrs && getpwuid_r_proto=S_TSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getpwuid_r_proto=S_TSBI ;;
esac
case "$getpwuid_r_proto" in
''|0) d_getpwuid_r=undef
define)
case "$getservbyname_r_proto" in
''|0) try='int getservbyname_r(const char*, const char*, struct servent*, char*, size_t, struct servent**);'
- ./protochk "extern $try" $hdrs && getservbyname_r_proto=I_CCSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getservbyname_r_proto=I_CCSBWR ;;
esac
case "$getservbyname_r_proto" in
''|0) try='struct servent* getservbyname_r(const char*, const char*, struct servent*, char*, int);'
- ./protochk "extern $try" $hdrs && getservbyname_r_proto=S_CCSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getservbyname_r_proto=S_CCSBI ;;
esac
case "$getservbyname_r_proto" in
''|0) try='int getservbyname_r(const char*, const char*, struct servent*, struct servent_data*);'
- ./protochk "extern $try" $hdrs && getservbyname_r_proto=I_CCSD ;;
+ ./protochk "$extern_C $try" $hdrs && getservbyname_r_proto=I_CCSD ;;
esac
case "$getservbyname_r_proto" in
''|0) d_getservbyname_r=undef
define)
case "$getservbyport_r_proto" in
''|0) try='int getservbyport_r(int, const char*, struct servent*, char*, size_t, struct servent**);'
- ./protochk "extern $try" $hdrs && getservbyport_r_proto=I_ICSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getservbyport_r_proto=I_ICSBWR ;;
esac
case "$getservbyport_r_proto" in
''|0) try='struct servent* getservbyport_r(int, const char*, struct servent*, char*, int);'
- ./protochk "extern $try" $hdrs && getservbyport_r_proto=S_ICSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getservbyport_r_proto=S_ICSBI ;;
esac
case "$getservbyport_r_proto" in
''|0) try='int getservbyport_r(int, const char*, struct servent*, struct servent_data*);'
- ./protochk "extern $try" $hdrs && getservbyport_r_proto=I_ICSD ;;
+ ./protochk "$extern_C $try" $hdrs && getservbyport_r_proto=I_ICSD ;;
esac
case "$getservbyport_r_proto" in
''|0) d_getservbyport_r=undef
define)
case "$getservent_r_proto" in
''|0) try='int getservent_r(struct servent*, char*, size_t, struct servent**);'
- ./protochk "extern $try" $hdrs && getservent_r_proto=I_SBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getservent_r_proto=I_SBWR ;;
esac
case "$getservent_r_proto" in
''|0) try='int getservent_r(struct servent*, char*, int);'
- ./protochk "extern $try" $hdrs && getservent_r_proto=I_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getservent_r_proto=I_SBI ;;
esac
case "$getservent_r_proto" in
''|0) try='struct servent* getservent_r(struct servent*, char*, int);'
- ./protochk "extern $try" $hdrs && getservent_r_proto=S_SBI ;;
+ ./protochk "$extern_C $try" $hdrs && getservent_r_proto=S_SBI ;;
esac
case "$getservent_r_proto" in
''|0) try='int getservent_r(struct servent*, struct servent_data*);'
- ./protochk "extern $try" $hdrs && getservent_r_proto=I_SD ;;
+ ./protochk "$extern_C $try" $hdrs && getservent_r_proto=I_SD ;;
esac
case "$getservent_r_proto" in
''|0) d_getservent_r=undef
define)
case "$getspnam_r_proto" in
''|0) try='int getspnam_r(const char*, struct spwd*, char*, size_t, struct spwd**);'
- ./protochk "extern $try" $hdrs && getspnam_r_proto=I_CSBWR ;;
+ ./protochk "$extern_C $try" $hdrs && getspnam_r_proto=I_CSBWR ;;
esac
case "$getspnam_r_proto" in
''|0) try='struct spwd* getspnam_r(const char*, struct spwd*, char*, int);'
- ./protochk "extern $try" $hdrs && getspnam_r_proto=S_CSBI ;;
+ ./protochk "$extern_C $try" $hdrs && getspnam_r_proto=S_CSBI ;;
esac
case "$getspnam_r_proto" in
''|0) d_getspnam_r=undef
define)
case "$gmtime_r_proto" in
''|0) try='struct tm* gmtime_r(const time_t*, struct tm*);'
- ./protochk "extern $try" $hdrs && gmtime_r_proto=S_TS ;;
+ ./protochk "$extern_C $try" $hdrs && gmtime_r_proto=S_TS ;;
esac
case "$gmtime_r_proto" in
''|0) try='int gmtime_r(const time_t*, struct tm*);'
- ./protochk "extern $try" $hdrs && gmtime_r_proto=I_TS ;;
+ ./protochk "$extern_C $try" $hdrs && gmtime_r_proto=I_TS ;;
esac
case "$gmtime_r_proto" in
''|0) d_gmtime_r=undef
set inet_aton d_inetaton
eval $inlibc
+: see if inet_ntop exists
+set inet_ntop d_inetntop
+eval $inlibc
+
+: see if inet_pton exists
+set inet_pton d_inetpton
+eval $inlibc
+
: Look for isascii
echo " "
$cat >isascii.c <<EOCP
define)
case "$localtime_r_proto" in
''|0) try='struct tm* localtime_r(const time_t*, struct tm*);'
- ./protochk "extern $try" $hdrs && localtime_r_proto=S_TS ;;
+ ./protochk "$extern_C $try" $hdrs && localtime_r_proto=S_TS ;;
esac
case "$localtime_r_proto" in
''|0) try='int localtime_r(const time_t*, struct tm*);'
- ./protochk "extern $try" $hdrs && localtime_r_proto=I_TS ;;
+ ./protochk "$extern_C $try" $hdrs && localtime_r_proto=I_TS ;;
esac
case "$localtime_r_proto" in
''|0) d_localtime_r=undef
/* Does our libc's localtime_r call tzset ?
* return 0 if so, 1 otherwise.
*/
-#include <sys/types.h>
-#include <unistd.h>
-#include <time.h>
-#include <string.h>
-#include <malloc.h>
+#$i_systypes I_SYS_TYPES
+#$i_unistd I_UNISTD
+#$i_time I_TIME
+#$i_stdlib I_STDLIB
+#$i_string I_STRING
+#$i_malloc I_MALLOC
+#ifdef I_SYS_TYPES
+# include <sys/types.h>
+#endif
+#ifdef I_UNISTD
+# include <unistd.h>
+#endif
+#ifdef I_TIME
+# include <time.h>
+#endif
+#ifdef I_STDLIB
+#include <stdlib.h>
+#endif
+#ifdef I_STRING
+# include <string.h>
+#else
+# include <strings.h>
+#endif
+#ifdef I_MALLOC
+# include <malloc.h>
+#endif
int main()
{
time_t t = time(0L);
set poll d_poll
eval $inlibc
+: see if prctl exists
+set prctl d_prctl
+eval $inlibc
+
+: see if prctl supports PR_SET_NAME
+d_prctl_set_name=$undef
+case $d_prctl in
+ $define)
+ $cat >try.c <<EOM
+#include <sys/prctl.h>
+
+int main (int argc, char *argv[])
+{
+ return (prctl (PR_SET_NAME, "Test"));
+ } /* main */
+EOM
+ set try
+ if eval $compile_ok && $run ./try; then
+ echo "Your prctl (PR_SET_NAME, ...) works"
+ d_prctl_set_name=$define
+ fi
+ $rm_try
+ ;;
+ esac
+
: see if readlink exists
set readlink d_readlink
eval $inlibc
define)
case "$random_r_proto" in
''|0) try='int random_r(int*, struct random_data*);'
- ./protochk "extern $try" $hdrs && random_r_proto=I_iS ;;
+ ./protochk "$extern_C $try" $hdrs && random_r_proto=I_iS ;;
esac
case "$random_r_proto" in
''|0) try='int random_r(long*, struct random_data*);'
- ./protochk "extern $try" $hdrs && random_r_proto=I_lS ;;
+ ./protochk "$extern_C $try" $hdrs && random_r_proto=I_lS ;;
esac
case "$random_r_proto" in
''|0) try='int random_r(struct random_data*, int32_t*);'
- ./protochk "extern $try" $hdrs && random_r_proto=I_St ;;
+ ./protochk "$extern_C $try" $hdrs && random_r_proto=I_St ;;
esac
case "$random_r_proto" in
''|0) d_random_r=undef
define)
case "$readdir64_r_proto" in
''|0) try='int readdir64_r(DIR*, struct dirent64*, struct dirent64**);'
- ./protochk "extern $try" $hdrs && readdir64_r_proto=I_TSR ;;
+ ./protochk "$extern_C $try" $hdrs && readdir64_r_proto=I_TSR ;;
esac
case "$readdir64_r_proto" in
''|0) try='int readdir64_r(DIR*, struct dirent64*);'
- ./protochk "extern $try" $hdrs && readdir64_r_proto=I_TS ;;
+ ./protochk "$extern_C $try" $hdrs && readdir64_r_proto=I_TS ;;
esac
case "$readdir64_r_proto" in
''|0) d_readdir64_r=undef
define)
case "$readdir_r_proto" in
''|0) try='int readdir_r(DIR*, struct dirent*, struct dirent**);'
- ./protochk "extern $try" $hdrs && readdir_r_proto=I_TSR ;;
+ ./protochk "$extern_C $try" $hdrs && readdir_r_proto=I_TSR ;;
esac
case "$readdir_r_proto" in
''|0) try='int readdir_r(DIR*, struct dirent*);'
- ./protochk "extern $try" $hdrs && readdir_r_proto=I_TS ;;
+ ./protochk "$extern_C $try" $hdrs && readdir_r_proto=I_TS ;;
esac
case "$readdir_r_proto" in
''|0) d_readdir_r=undef
define)
case "$setgrent_r_proto" in
''|0) try='int setgrent_r(FILE**);'
- ./protochk "extern $try" $hdrs && setgrent_r_proto=I_H ;;
+ ./protochk "$extern_C $try" $hdrs && setgrent_r_proto=I_H ;;
esac
case "$setgrent_r_proto" in
''|0) try='void setgrent_r(FILE**);'
- ./protochk "extern $try" $hdrs && setgrent_r_proto=V_H ;;
+ ./protochk "$extern_C $try" $hdrs && setgrent_r_proto=V_H ;;
esac
case "$setgrent_r_proto" in
''|0) d_setgrent_r=undef
define)
case "$sethostent_r_proto" in
''|0) try='int sethostent_r(int, struct hostent_data*);'
- ./protochk "extern $try" $hdrs && sethostent_r_proto=I_ID ;;
+ ./protochk "$extern_C $try" $hdrs && sethostent_r_proto=I_ID ;;
esac
case "$sethostent_r_proto" in
''|0) try='void sethostent_r(int, struct hostent_data*);'
- ./protochk "extern $try" $hdrs && sethostent_r_proto=V_ID ;;
+ ./protochk "$extern_C $try" $hdrs && sethostent_r_proto=V_ID ;;
esac
case "$sethostent_r_proto" in
''|0) d_sethostent_r=undef
define)
case "$setlocale_r_proto" in
''|0) try='int setlocale_r(int, const char*, char*, int);'
- ./protochk "extern $try" $hdrs && setlocale_r_proto=I_ICBI ;;
+ ./protochk "$extern_C $try" $hdrs && setlocale_r_proto=I_ICBI ;;
esac
case "$setlocale_r_proto" in
''|0) d_setlocale_r=undef
define)
case "$setnetent_r_proto" in
''|0) try='int setnetent_r(int, struct netent_data*);'
- ./protochk "extern $try" $hdrs && setnetent_r_proto=I_ID ;;
+ ./protochk "$extern_C $try" $hdrs && setnetent_r_proto=I_ID ;;
esac
case "$setnetent_r_proto" in
''|0) try='void setnetent_r(int, struct netent_data*);'
- ./protochk "extern $try" $hdrs && setnetent_r_proto=V_ID ;;
+ ./protochk "$extern_C $try" $hdrs && setnetent_r_proto=V_ID ;;
esac
case "$setnetent_r_proto" in
''|0) d_setnetent_r=undef
define)
case "$setprotoent_r_proto" in
''|0) try='int setprotoent_r(int, struct protoent_data*);'
- ./protochk "extern $try" $hdrs && setprotoent_r_proto=I_ID ;;
+ ./protochk "$extern_C $try" $hdrs && setprotoent_r_proto=I_ID ;;
esac
case "$setprotoent_r_proto" in
''|0) try='void setprotoent_r(int, struct protoent_data*);'
- ./protochk "extern $try" $hdrs && setprotoent_r_proto=V_ID ;;
+ ./protochk "$extern_C $try" $hdrs && setprotoent_r_proto=V_ID ;;
esac
case "$setprotoent_r_proto" in
''|0) d_setprotoent_r=undef
define)
case "$setpwent_r_proto" in
''|0) try='int setpwent_r(FILE**);'
- ./protochk "extern $try" $hdrs && setpwent_r_proto=I_H ;;
+ ./protochk "$extern_C $try" $hdrs && setpwent_r_proto=I_H ;;
esac
case "$setpwent_r_proto" in
''|0) try='void setpwent_r(FILE**);'
- ./protochk "extern $try" $hdrs && setpwent_r_proto=V_H ;;
+ ./protochk "$extern_C $try" $hdrs && setpwent_r_proto=V_H ;;
esac
case "$setpwent_r_proto" in
''|0) d_setpwent_r=undef
define)
case "$setservent_r_proto" in
''|0) try='int setservent_r(int, struct servent_data*);'
- ./protochk "extern $try" $hdrs && setservent_r_proto=I_ID ;;
+ ./protochk "$extern_C $try" $hdrs && setservent_r_proto=I_ID ;;
esac
case "$setservent_r_proto" in
''|0) try='void setservent_r(int, struct servent_data*);'
- ./protochk "extern $try" $hdrs && setservent_r_proto=V_ID ;;
+ ./protochk "$extern_C $try" $hdrs && setservent_r_proto=V_ID ;;
esac
case "$setservent_r_proto" in
''|0) d_setservent_r=undef
EOP
set try
-d_sprintf_returns_strlen="$undef"
if eval $compile; then
xxx="`$run ./try`"
case "$?" in
d_sprintf_returns_strlen="$undef"
;;
esac
+else
+ echo "(I can't seem to compile the test program--assuming it doesn't)" >&4
+ d_sprintf_returns_strlen="$undef"
fi
$rm_try
define)
case "$srand48_r_proto" in
''|0) try='int srand48_r(long, struct drand48_data*);'
- ./protochk "extern $try" $hdrs && srand48_r_proto=I_LS ;;
+ ./protochk "$extern_C $try" $hdrs && srand48_r_proto=I_LS ;;
esac
case "$srand48_r_proto" in
''|0) d_srand48_r=undef
define)
case "$srandom_r_proto" in
''|0) try='int srandom_r(unsigned int, struct random_data*);'
- ./protochk "extern $try" $hdrs && srandom_r_proto=I_TS ;;
+ ./protochk "$extern_C $try" $hdrs && srandom_r_proto=I_TS ;;
esac
case "$srandom_r_proto" in
''|0) d_srandom_r=undef
define)
case "$strerror_r_proto" in
''|0) try='int strerror_r(int, char*, size_t);'
- ./protochk "extern $try" $hdrs && strerror_r_proto=I_IBW ;;
+ ./protochk "$extern_C $try" $hdrs && strerror_r_proto=I_IBW ;;
esac
case "$strerror_r_proto" in
''|0) try='int strerror_r(int, char*, int);'
- ./protochk "extern $try" $hdrs && strerror_r_proto=I_IBI ;;
+ ./protochk "$extern_C $try" $hdrs && strerror_r_proto=I_IBI ;;
esac
case "$strerror_r_proto" in
''|0) try='char* strerror_r(int, char*, size_t);'
- ./protochk "extern $try" $hdrs && strerror_r_proto=B_IBW ;;
+ ./protochk "$extern_C $try" $hdrs && strerror_r_proto=B_IBW ;;
esac
case "$strerror_r_proto" in
''|0) d_strerror_r=undef
eval $setvar
fi
+: see if timegm exists
+set timegm d_timegm
+eval $inlibc
+
: see if this is a sys/times.h system
set sys/times.h i_systimes
eval $inhdr
define)
case "$tmpnam_r_proto" in
''|0) try='char* tmpnam_r(char*);'
- ./protochk "extern $try" $hdrs && tmpnam_r_proto=B_B ;;
+ ./protochk "$extern_C $try" $hdrs && tmpnam_r_proto=B_B ;;
esac
case "$tmpnam_r_proto" in
''|0) d_tmpnam_r=undef
define)
case "$ttyname_r_proto" in
''|0) try='int ttyname_r(int, char*, size_t);'
- ./protochk "extern $try" $hdrs && ttyname_r_proto=I_IBW ;;
+ ./protochk "$extern_C $try" $hdrs && ttyname_r_proto=I_IBW ;;
esac
case "$ttyname_r_proto" in
''|0) try='int ttyname_r(int, char*, int);'
- ./protochk "extern $try" $hdrs && ttyname_r_proto=I_IBI ;;
+ ./protochk "$extern_C $try" $hdrs && ttyname_r_proto=I_IBI ;;
esac
case "$ttyname_r_proto" in
''|0) try='char* ttyname_r(int, char*, int);'
- ./protochk "extern $try" $hdrs && ttyname_r_proto=B_IBI ;;
+ ./protochk "$extern_C $try" $hdrs && ttyname_r_proto=B_IBI ;;
esac
case "$ttyname_r_proto" in
''|0) d_ttyname_r=undef
: set the base revision
baserev=5.0
+: length of character in bytes. Is always 1, otherwise it isnt C
+: This used to be a test using sizeof
+charsize=1
+
+: Check for the number of bits in a character
+case "$charbits" in
+'') echo "Checking how long a character is (in bits)..." >&4
+ $cat >try.c <<EOCP
+#include <stdio.h>
+int main ()
+{
+ int n;
+ unsigned char c;
+ for (c = 1, n = 0; c; c <<= 1, n++) ;
+ printf ("%d\n", n);
+ return (0);
+ }
+EOCP
+ set try
+ if eval $compile_ok; then
+ dflt=`$run ./try`
+ else
+ dflt='8'
+ echo "(I can't seem to compile the test program. Guessing...)"
+ fi
+ ;;
+*)
+ dflt="$charbits"
+ ;;
+esac
+rp="What is the length of a character (in bits)?"
+. ./myread
+charbits="$ans"
+$rm_try
+case "$charbits" in
+8) ;;
+*) cat >&4 << EOM
+Your system has an unsigned character size of $charbits bits, which
+is rather unusual (normally it is 8 bits). Perl likely will not work
+correctly on your system, with subtle bugs in various places.
+EOM
+ rp='Do you really want to continue?'
+ dflt='n'
+ . ./myread
+ case "$ans" in
+ [yY]) echo >&4 "Okay, continuing." ;;
+ *) exit 1 ;;
+ esac
+esac
+
: how do we concatenate cpp tokens here?
echo " "
echo "Checking to see how your cpp does stuff like concatenate tokens..." >&4
fi
fi
fi
- $rm_try
+ $rm -f core try.core core.try.*
case "$fflushNULL" in
x) $cat >&4 <<EOM
Your fflush(NULL) works okay for output streams.
for xxx in in_addr_t 'const void *' 'const char *' 'void *' 'char *'; do
for yyy in size_t long int; do
case "$netdb_host_type" in
- '') try="extern struct hostent *gethostbyaddr($xxx, $yyy, int);"
+ '') try="$extern_C struct hostent *gethostbyaddr($xxx, $yyy, int);"
if ./protochk "$try" $hdrs; then
echo "Your system accepts $xxx for the first arg."
echo "...and $yyy for the second arg."
$i_unistd unistd.h"
for xxx in "const char *" "char *"; do
case "$netdb_name_type" in
- '') try="extern struct hostent *gethostbyname($xxx);"
+ '') try="$extern_C struct hostent *gethostbyname($xxx);"
if ./protochk "$try" $hdrs; then
echo "Your system accepts $xxx."
netdb_name_type="$xxx"
$i_unistd unistd.h"
for xxx in in_addr_t "unsigned long" long "unsigned int" int; do
case "$netdb_net_type" in
- '') try="extern struct netent *getnetbyaddr($xxx, int);"
+ '') try="$extern_C struct netent *getnetbyaddr($xxx, int);"
if ./protochk "$try" $hdrs; then
echo "Your system accepts $xxx."
netdb_net_type="$xxx"
esac
;;
*) dflt="$pager"
- : Instruct ./getfile to trust the hinted or previous pager value,
- : even if it does not begin with a slash. For example, on os2,
- : pager might be cmd /c more. See comments in UU/getfile.
fn="f/($pager)"
;;
esac
fi
$rm -f foo* bar*
+: see if this is a values.h system
+set values.h i_values
+eval $inhdr
+
+: Check the max offset that gmtime and localtime accept
+echo "Checking max offsets that gmtime () accepts"
+
+case $i_values in
+ define) yyy="#include <values.h>" ;;
+ *) yyy="" ;;
+ esac
+
+case "$sGMTIME_min/$sGMTIME_max" in
+ 0/0|/)
+ $cat >try.c <<EOCP
+#include <sys/types.h>
+#include <stdio.h>
+#include <time.h>
+$yyy
+
+int i;
+struct tm *tmp;
+time_t pt;
+
+void gm_check (time_t t, int min_year, int max_year)
+{
+ tmp = gmtime (&t);
+ if ( tmp == NULL ||
+ /* Check tm_year overflow */
+ tmp->tm_year < min_year || tmp->tm_year > max_year)
+ tmp = NULL;
+ else
+ pt = t;
+ } /* gm_check */
+
+int check_max ()
+{
+ tmp = NULL;
+ pt = 0;
+#ifdef MAXLONG
+ gm_check (MAXLONG, 69, 0x7fffffff);
+#endif
+ if (tmp == NULL || tmp->tm_year < 0) {
+ for (i = 63; i >= 0; i--) {
+ time_t x = pt | ((time_t)1 << i);
+ if (x < 0 || x < pt) continue;
+ gm_check (x, 69, 0x7fffffff);
+ }
+ }
+ printf ("sGMTIME_max=%ld\n", pt);
+ return (0);
+ } /* check_max */
+
+int check_min ()
+{
+ tmp = NULL;
+ pt = 0;
+#ifdef MINLONG
+ gm_check (MINLONG, -1900, 70);
+#endif
+ if (tmp == NULL) {
+ for (i = 36; i >= 0; i--) {
+ time_t x = pt - ((time_t)1 << i);
+ if (x > 0) continue;
+ gm_check (x, -1900, 70);
+ }
+ }
+ printf ("sGMTIME_min=%ld\n", pt);
+ return (0);
+ } /* check_min */
+
+int main (int argc, char *argv[])
+{
+ fprintf (stderr, "Sizeof time_t = %ld\n", sizeof (time_t));
+ check_max ();
+ check_min ();
+ return (0);
+ } /* main */
+EOCP
+ set try
+ if eval $compile; then
+ eval `$run ./try`
+ else
+ echo "Cannot determine sGMTIME_max and sGMTIME_min." >&4
+ fi
+ $rm_try
+ ;;
+ esac
+
+echo "Checking max offsets that localtime () accepts"
+
+case "$sLOCALTIME_min/$sLOCALTIME_max" in
+ 0/0|/)
+ $cat >try.c <<EOCP
+#include <sys/types.h>
+#include <stdio.h>
+#include <time.h>
+$yyy
+
+int i;
+struct tm *tmp;
+time_t pt;
+
+void local_check (time_t t, int min_year, int max_year)
+{
+ if (sizeof (time_t) > 4 && t > 0x7ffffffffffff000LL)
+ tmp = NULL;
+ else
+ tmp = localtime (&t);
+ if ( tmp == NULL ||
+ /* Check tm_year overflow */
+ tmp->tm_year < min_year || tmp->tm_year > max_year)
+ tmp = NULL;
+ else
+ pt = t;
+ } /* local_check */
+
+int check_max ()
+{
+ tmp = NULL;
+ pt = 0;
+#ifdef MAXLONG
+ local_check (MAXLONG, 69, 0x7fffffff);
+#endif
+ if (tmp == NULL || tmp->tm_year < 0) {
+ for (i = 63; i >= 0; i--) {
+ time_t x = pt | ((time_t)1 << i);
+ if (x < 0 || x < pt) continue;
+ local_check (x, 69, 0x7fffffff);
+ }
+ }
+ printf ("sLOCALTIME_max=%ld\n", pt);
+ return (0);
+ } /* check_max */
+
+int check_min ()
+{
+ tmp = NULL;
+ pt = 0;
+#ifdef MINLONG
+ local_check (MINLONG, -1900, 70);
+#endif
+ if (tmp == NULL) {
+ for (i = 36; i >= 0; i--) {
+ time_t x = pt - ((time_t)1 << i);
+ if (x > 0) continue;
+ local_check (x, -1900, 70);
+ }
+ }
+ printf ("sLOCALTIME_min=%ld\n", pt);
+ return (0);
+ } /* check_min */
+
+int main (int argc, char *argv[])
+{
+ check_max ();
+ check_min ();
+ return (0);
+ } /* main */
+EOCP
+ set try
+ if eval $compile; then
+ eval `$run ./try`
+ else
+ echo "Cannot determine sLOCALTIME_max and sLOCALTIME_min." >&4
+ fi
+ $rm_try
+ ;;
+ esac
+
: check for type of arguments to select.
case "$selecttype" in
'') case "$d_select" in
for nfd in 'int' 'size_t' 'unsigned long' 'unsigned' ; do
for tmo in 'struct timeval *' 'const struct timeval *'; do
case "$val" in
- '') try="extern select _(($nfd, $xxx, $xxx, $xxx, $tmo));"
+ '') try="$extern_C select _(($nfd, $xxx, $xxx, $xxx, $tmo));"
if ./protochk "$try" $hdrs; then
echo "Your system accepts $xxx."
val="$xxx"
yyy="$yyy $sizetype int long unsigned"
for xxx in $yyy; do
case "$socksizetype" in
- '') try="extern int accept(int, struct sockaddr *, $xxx *);"
+ '') try="$extern_C int accept(int, struct sockaddr *, $xxx *);"
case "$usesocks" in
"$define")
if ./protochk "$try" $i_systypes sys/types.h $d_socket sys/socket.h literal '#define INCLUDE_PROTOTYPES' $i_socks socks.h.; then
: see what type of char stdio uses.
echo " "
-echo '#include <stdio.h>' > stdio.c
-$cppstdin $cppminus < stdio.c > stdioh
+echo '#include <stdio.h>' | $cppstdin $cppminus > stdioh
if $contains 'unsigned.*char.*_ptr;' stdioh >/dev/null 2>&1 ; then
echo "Your stdio uses unsigned chars." >&4
stdchar="unsigned char"
echo "Your stdio uses signed chars." >&4
stdchar="char"
fi
-$rm -f stdio.* stdioh
+$rm -f stdioh
: see what type uids are declared as in the kernel
echo " "
;;
esac
+: see if prototypes support variable argument declarations
+echo " "
+case "$prototype$i_stdarg" in
+$define$define)
+ echo "It appears we'll be able to prototype varargs functions." >&4
+ val="$define"
+ ;;
+*)
+ echo "Too bad... We won't be using prototyped varargs functions..." >&4
+ val="$undef"
+ ;;
+esac
+set vaproto
+eval $setvar
+
: determine compiler compiler
case "$yacc" in
'')
set mntent.h i_mntent
eval $inhdr
-: see if ndbm.h is available
-set ndbm.h i_ndbm
-eval $inhdr
-: Compatibility location for RedHat 7.1
-set gdbm/ndbm.h i_gdbmndbm
-eval $inhdr
-: Compatibility location for Debian 4.0
-set gdbm-ndbm.h i_gdbm_ndbm
-eval $inhdr
-
-if $test "$i_ndbm" = "$define" -o "$i_gdbmndbm" = "$define" -o "$i_gdbm_ndbm" = "$define"; then
- : see if dbm_open exists
- set dbm_open d_dbm_open
- eval $inlibc
- case "$d_dbm_open" in
- $undef)
- i_ndbm="$undef"
- i_gdbmndbm="$undef"
- i_gdbm_ndbm="$undef"
- echo "We won't be including <ndbm.h>"
- val="$undef"
- ;;
- *) val="$define"
- ;;
- esac
-fi
-set d_ndbm
-eval $setvar
-
: see if net/errno.h is available
val=''
set net/errno.h val
./Cppsym < Cppsym.know > Cppsym.true
: Add in any linux cpp "predefined macros":
case "$osname::$gccversion" in
- *linux*::*.*)
+ *linux*::*.*|*gnukfreebsd*::*.*|gnu::*.*)
tHdrH=_tmpHdr
rm -f $tHdrH'.h' $tHdrH
touch $tHdrH'.h'
- if cpp -dM $tHdrH'.h' > $tHdrH'_cppsym.h' && [ -s $tHdrH'_cppsym.h' ]; then
+ if $cpp -dM $tHdrH'.h' > $tHdrH'_cppsym.h' && [ -s $tHdrH'_cppsym.h' ]; then
sed 's/#define[\ \ ]*//;s/[\ \ ].*$//' <$tHdrH'_cppsym.h' >$tHdrH'_cppsym.real'
if [ -s $tHdrH'_cppsym.real' ]; then
cat $tHdrH'_cppsym.real' Cppsym.know | sort | uniq | ./Cppsym | sort | uniq > Cppsym.true
set utime.h i_utime
eval $inhdr
-: see if this is a values.h system
-set values.h i_values
-eval $inhdr
-
: see if this is a vfork system
case "$d_vfork" in
"$define")
: Function to recursively find available extensions, ignoring DynaLoader
: NOTE: recursion limit of 10 to prevent runaway in case of symlink madness
+: In 5.10.1 and later, extensions are stored in directories
+: like File-Glob instead of the older File/Glob/.
find_extensions='
for xxx in *; do
case "$xxx" in
DynaLoader|dynaload) ;;
*)
- if $test -f $xxx/$xxx.xs -o -f $xxx/$xxx.c; then
- known_extensions="$known_extensions $1$xxx";
- elif $test -f $xxx/Makefile.PL; then
- nonxs_extensions="$nonxs_extensions $1$xxx";
+ this_ext=`echo $xxx | $sed -e s/-/\\\//g`;
+ leaf=`echo $xxx | $sed -e s/.*-//`;
+ if $test -d File; then
+ if $test -f $xxx/$leaf.xs -o -f $xxx/$leaf.c; then
+ known_extensions="$known_extensions $1$this_ext";
+ elif $test -f $xxx/Makefile.PL; then
+ nonxs_extensions="$nonxs_extensions $1$this_ext";
+ else
+ if $test -d $xxx -a $# -lt 10; then
+ set $1$xxx/ $*;
+ cd "$xxx";
+ eval $find_extensions;
+ cd ..;
+ shift;
+ fi;
+ fi;
else
- if $test -d $xxx -a $# -lt 10; then
- set $1$xxx/ $*;
- cd "$xxx";
- eval $find_extensions;
- cd ..;
- shift;
+ $ls -1 $xxx > $$.tmp;
+ if $contains "\.xs$" $$.tmp > /dev/null 2>&1; then
+ known_extensions="$known_extensions $this_ext";
+ elif $contains "\.c$" $$.tmp > /dev/null 2>&1; then
+ known_extensions="$known_extensions $this_ext";
+ elif $test -d $xxx; then
+ nonxs_extensions="$nonxs_extensions $this_ext";
fi;
+ $rm -f $$.tmp;
fi
;;
esac;
done'
tdir=`pwd`
+cd "$rsrc/cpan"
+set X
+shift
+eval $find_extensions
+cd "$rsrc/dist"
+set X
+shift
+eval $find_extensions
cd "$rsrc/ext"
set X
shift
eval $find_extensions
-# Special case: Add in modules that nest beyond the first level.
-# Currently threads/shared and Hash/Util/FieldHash, since they are
-# not picked up by the recursive find above (and adding in general
-# recursive finding breaks SDBM_File/sdbm).
-# A.D. 20011025 (SDBM), ajgough 20071008 (FieldHash)
-known_extensions="$known_extensions threads/shared Hash/Util/FieldHash"
+if $test -d File-Glob; then
+ : All ext/ flattened
+else
+ # Special case: Add in modules that nest beyond the first level.
+ # Currently threads/shared and Hash/Util/FieldHash, since they are
+ # not picked up by the recursive find above (and adding in general
+ # recursive finding breaks SDBM_File/sdbm).
+ # A.D. 20011025 (SDBM), ajgough 20071008 (FieldHash)
+ known_extensions="$known_extensions threads/shared Hash/Util/FieldHash"
+fi
set X $known_extensions
shift
-known_extensions="$*"
+known_extensions=`echo "$*" | tr ' ' $trnl | $sort | tr $trnl ' '`
set X $nonxs_extensions
shift
-nonxs_extensions="$*"
+nonxs_extensions=`echo "$*" | tr ' ' $trnl | $sort | tr $trnl ' '`
cd "$tdir"
: Now see which are supported on this system.
esac
;;
NDBM_File|ndbm_fil)
- case "$i_ndbm" in
+ case "$d_ndbm" in
$define)
case "$osname-$use64bitint" in
hpux-define)
# --jhi
avail_ext="$avail_ext $xxx"
;;
+ VMS*)
+ ;;
Win32*)
case "$osname" in
cygwin) avail_ext="$avail_ext $xxx" ;;
$define) avail_ext="$avail_ext $xxx" ;;
esac
;;
+ XS/APItest/KeywordRPN|xs/apitest/keywordrpn)
+ # 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
# Target system : $myuname
EOT
+: Add in command line options if available
$test -f UU/cmdline.opt && $cat UU/cmdline.opt >> config.sh
+
$spitshell <<EOT >>config.sh
Author='$Author'
baserev='$baserev'
bash='$bash'
bin='$bin'
+bin_ELF='$bin_ELF'
binexp='$binexp'
bison='$bison'
byacc='$byacc'
cf_by='$cf_by'
cf_email='$cf_email'
cf_time='$cf_time'
+charbits='$charbits'
+charsize='$charsize'
chgrp='$chgrp'
chmod='$chmod'
chown='$chown'
d_aintl='$d_aintl'
d_alarm='$d_alarm'
d_archlib='$d_archlib'
+d_asctime64='$d_asctime64'
d_asctime_r='$d_asctime_r'
d_atolf='$d_atolf'
d_atoll='$d_atoll'
+d_attribute_deprecated='$d_attribute_deprecated'
d_attribute_format='$d_attribute_format'
d_attribute_malloc='$d_attribute_malloc'
d_attribute_nonnull='$d_attribute_nonnull'
d_csh='$d_csh'
d_ctermid='$d_ctermid'
d_ctermid_r='$d_ctermid_r'
+d_ctime64='$d_ctime64'
d_ctime_r='$d_ctime_r'
d_cuserid='$d_cuserid'
d_dbl_dig='$d_dbl_dig'
d_dbminitproto='$d_dbminitproto'
+d_difftime64='$d_difftime64'
d_difftime='$d_difftime'
d_dir_dd_fd='$d_dir_dd_fd'
d_dirfd='$d_dirfd'
d_ftello='$d_ftello'
d_ftime='$d_ftime'
d_futimes='$d_futimes'
+d_gdbm_ndbm_h_uses_prototypes='$d_gdbm_ndbm_h_uses_prototypes'
+d_gdbmndbm_h_uses_prototypes='$d_gdbmndbm_h_uses_prototypes'
+d_getaddrinfo='$d_getaddrinfo'
d_getcwd='$d_getcwd'
d_getespwnam='$d_getespwnam'
d_getfsstat='$d_getfsstat'
d_getlogin_r='$d_getlogin_r'
d_getmnt='$d_getmnt'
d_getmntent='$d_getmntent'
+d_getnameinfo='$d_getnameinfo'
d_getnbyaddr='$d_getnbyaddr'
d_getnbyname='$d_getnbyname'
d_getnent='$d_getnent'
d_getspnam='$d_getspnam'
d_getspnam_r='$d_getspnam_r'
d_gettimeod='$d_gettimeod'
+d_gmtime64='$d_gmtime64'
d_gmtime_r='$d_gmtime_r'
d_gnulibc='$d_gnulibc'
d_grpasswd='$d_grpasswd'
d_inc_version_list='$d_inc_version_list'
d_index='$d_index'
d_inetaton='$d_inetaton'
+d_inetntop='$d_inetntop'
+d_inetpton='$d_inetpton'
d_int64_t='$d_int64_t'
d_isascii='$d_isascii'
d_isfinite='$d_isfinite'
d_ldbl_dig='$d_ldbl_dig'
d_libm_lib_version='$d_libm_lib_version'
d_link='$d_link'
+d_localtime64='$d_localtime64'
d_localtime_r='$d_localtime_r'
d_localtime_r_needs_tzset='$d_localtime_r_needs_tzset'
d_locconv='$d_locconv'
d_mkfifo='$d_mkfifo'
d_mkstemp='$d_mkstemp'
d_mkstemps='$d_mkstemps'
+d_mktime64='$d_mktime64'
d_mktime='$d_mktime'
d_mmap='$d_mmap'
d_modfl='$d_modfl'
d_munmap='$d_munmap'
d_mymalloc='$d_mymalloc'
d_ndbm='$d_ndbm'
+d_ndbm_h_uses_prototypes='$d_ndbm_h_uses_prototypes'
d_nice='$d_nice'
d_nl_langinfo='$d_nl_langinfo'
d_nv_preserves_uv='$d_nv_preserves_uv'
d_pipe='$d_pipe'
d_poll='$d_poll'
d_portable='$d_portable'
+d_prctl='$d_prctl'
+d_prctl_set_name='$d_prctl_set_name'
d_printf_format_null='$d_printf_format_null'
d_procselfexe='$d_procselfexe'
d_pseudofork='$d_pseudofork'
d_telldir='$d_telldir'
d_telldirproto='$d_telldirproto'
d_time='$d_time'
+d_timegm='$d_timegm'
d_times='$d_times'
d_tm_tm_gmtoff='$d_tm_tm_gmtoff'
d_tm_tm_zone='$d_tm_tm_zone'
exe_ext='$exe_ext'
expr='$expr'
extensions='$extensions'
+extern_C='$extern_C'
extras='$extras'
fflushNULL='$fflushNULL'
fflushall='$fflushall'
rmail='$rmail'
run='$run'
runnm='$runnm'
+sGMTIME_max='$sGMTIME_max'
+sGMTIME_min='$sGMTIME_min'
+sLOCALTIME_max='$sLOCALTIME_max'
+sLOCALTIME_min='$sLOCALTIME_min'
sPRIEUldbl='$sPRIEUldbl'
sPRIFUldbl='$sPRIFUldbl'
sPRIGUldbl='$sPRIGUldbl'
use64bitall='$use64bitall'
use64bitint='$use64bitint'
usecrosscompile='$usecrosscompile'
+usedevel='$usedevel'
usedl='$usedl'
usedtrace='$usedtrace'
usefaststdio='$usefaststdio'
uvtype='$uvtype'
uvuformat='$uvuformat'
uvxformat='$uvxformat'
+vaproto='$vaproto'
vendorarch='$vendorarch'
vendorarchexp='$vendorarchexp'
vendorbin='$vendorbin'
zip='$zip'
EOT
-: Add in command line options if available
-$test -f UU/cmdline.opt && $cat UU/cmdline.opt >> config.sh
-
: add special variables
$test -f $src/patchlevel.h && \
awk '/^#define[ ]+PERL_/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh
-echo "PERL_PATCHLEVEL=$perl_patchlevel" >>config.sh
+echo "PERL_PATCHLEVEL='$perl_patchlevel'" >>config.sh
echo "PERL_CONFIG_SH=true" >>config.sh
: propagate old symbols