# Note: this Configure script was generated automatically. Rather than
# working with this copy of Configure, you may wish to get metaconfig.
# The dist package (which contains metaconfig) is available via SVN:
-# svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist
+# svn co https://svn.code.sf.net/p/dist/code/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
# See Porting/pumpkin.pod for more information on metaconfig.
#
-# Generated on Fri Feb 15 14:51:06 CET 2013 [metaconfig 3.5 PL0]
+# Generated on Tue Sep 17 10:34:33 CEST 2013 [metaconfig 3.5 PL0]
# (with additional metaconfig patches by perlbug@perl.org)
cat >c1$$ <<EOF
is_os2=yes
elif test -n "$DJGPP"; then
case "X${MACHTYPE:-nonesuchmach}" in
- *cygwin) ;;
+ *cygwin|*msys) ;;
*) p_=\; ;;
esac
fi
lddlflags=''
usedl=''
doublesize=''
+bootstrap_charset=''
ebcdic=''
fflushNULL=''
fflushall=''
d_dirnamlen=''
direntrytype=''
i_dirent=''
-i_dld=''
i_dlfcn=''
i_fcntl=''
i_float=''
vendorscript=''
vendorscriptexp=''
versiononly=''
-defvoidused=''
-voidflags=''
yacc=''
yaccflags=''
CONFIG=''
elif test -n "$DJGPP"; then
: DOS DJGPP
_exe=".exe"
+elif test -f /kern/cookiejar; then
+: MiNT
+ _exe=""
elif test -d c:/. -o -n "$is_os2" ; then
: OS/2 or cygwin
_exe=".exe"
ignore_versioned_solibs=''
: set usethreads on the Configure command line to enable threads.
usereentrant='undef'
-: full support for void wanted by default
-defvoidused=15
-
ccname=''
ccversion=''
perllibs=''
: set usesocks on the Configure command line to enable socks.
: List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file.
-libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun"
+libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun"
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
case "$sh" in
'') cat >&2 <<EOM
-$me: Fatal Error: I can't find a Bourne Shell anywhere.
+$me: Fatal Error: I can't find a Bourne Shell anywhere.
Usually it's in /bin/sh. How did you even get this far?
-Please contact me (Perl Maintainers) at perlbug@perl.org and
+Please contact me (Perl Maintainers) at perlbug@perl.org and
we'll try to straighten this all out.
EOM
exit 1
;;
*) issymlink='' ;;
esac
- fi
+ fi
fi
if $test "X$issymlink" = X; then
if $test -L sym 2>/dev/null; then
myuname=`$uname -a 2>/dev/null`
$test -z "$myuname" && myuname=`hostname 2>/dev/null`
# Downcase everything to avoid ambiguity.
-# Remove slashes and single quotes so we can use parts of this in
+# Remove slashes and single quotes so we can use parts of this in
# directory and file names.
# Remove newlines so myuname is sane to use elsewhere.
# tr '[A-Z]' '[a-z]' would not work in EBCDIC
*) osvers=$tmp;;
esac
;;
+ bitrig) osname=bitrig
+ osvers="$3"
+ ;;
bsd386) osname=bsd386
osvers=`$uname -r`
;;
fi
: determine installation prefix for where package is to be installed.
-if $afs; then
+if $afs; then
$cat <<EOM
Since you are running AFS, I need to distinguish the directory in which
esac
cat <<EOM
-Perl can be built to take advantage of threads on some systems.
+Perl can be built to offer a form of threading support on some systems
To do so, Configure can be run with -Dusethreads.
Note that Perl built with threading support runs slightly slower
-and uses more memory than plain Perl. The current implementation
-is believed to be stable, but it is fairly new, and so should be
-treated with caution.
+and uses slightly more memory than plain Perl.
If this doesn't make any sense to you, just accept the default '$dflt'.
EOM
if $test $patchlevel -lt 9; then
case "$usethreads" in
$define)
- $cat <<EOM
-
-Since release 5.6, Perl has had two different threading implementations,
-the newer interpreter-based version (ithreads) with one interpreter per
-thread, and the older 5.005 version (5005threads).
-The 5005threads version is effectively unmaintained and will probably be
-removed in Perl 5.10, so there should be no need to build a Perl using it
-unless needed for backwards compatibility with some existing 5.005threads
-code.
-
-EOM
: Default to ithreads unless overridden on command line or with
: old config.sh
dflt='y'
case "$use5005threads" in
- $define|true|[yY]*) dflt='n';;
+ $define|true|[yY]*)
+ echo "5.005 threads are no longer supported"
+ exit 1
+ ;;
esac
case "$useithreads" in
$undef|false|[nN]*) dflt='n';;
esac
# See note above about -fstack-protector
case "$ccflags" in
-*-fstack-protector*)
+*-fstack-protector*)
case "$dflt" in
*-fstack-protector*) ;; # Don't add it again
- *) dflt="$dflt -fstack-protector" ;;
+ *) dflt="$dflt -fstack-protector" ;;
esac
;;
esac
fi
case "$use64bitint" in
"$define"|true|[yY]*)
+ : This test was common to all the OpenBSD forks, and seems harmless for
+ : other platforms:
+ echo " "
+ echo "Checking if your C library has broken 64-bit functions..." >&4
+ cat >try.c <<EOCP
+#include <stdio.h>
+typedef $uquadtype myULL;
+int main (void)
+{
+ struct {
+ double d;
+ myULL u;
+ } *p, test[] = {
+ {4294967303.15, 4294967303ULL},
+ {4294967294.2, 4294967294ULL},
+ {4294967295.7, 4294967295ULL},
+ {0.0, 0ULL}
+ };
+ for (p = test; p->u; p++) {
+ myULL x = (myULL)p->d;
+ if (x != p->u) {
+ printf("buggy\n");
+ return 0;
+ }
+ }
+ printf("ok\n");
+ return 0;
+}
+EOCP
+ set try
+ if eval $compile_ok; then
+ libcquad=`./try`
+ echo "Your C library's 64-bit functions are $libcquad."
+ else
+ echo "(I can't seem to compile the test program.)"
+ echo "Assuming that your C library's 64-bit functions are ok."
+ libcquad="ok"
+ fi
+ $rm_try
+
+ case "$libcquad" in
+ buggy*)
+ cat >&4 <<EOM
+
+*** You have a C library with broken 64-bit functions.
+*** 64-bit support does not work reliably in this configuration.
+*** Please rerun Configure without -Duse64bitint and/or -Dusemorebits.
+*** Cannot continue, aborting.
+
+EOM
+ exit 1
+ ;;
+ esac
case "$longsize" in
4) case "$archname64" in
'') archname64=64int ;;
. ./myread
archname="$ans"
-: optionally add api version to the architecture for versioned archlibs
+: optionally add API version to the architecture for versioned archlibs
case "$useversionedarchname" in
$define|true|[yY]*) dflt='y';;
*) dflt='n';;
set i_malloc
eval $setvar
-: check for void type
-echo " "
-echo "Checking to see how well your C compiler groks the void type..." >&4
-case "$voidflags" in
-'')
- $cat >try.c <<EOCP
-#$i_stdlib I_STDLIB
-#ifdef I_STDLIB
-#include <stdlib.h>
-#endif
-#if TRY & 1
-void sub() {
-#else
-sub() {
-#endif
- extern void moo(); /* function returning void */
- void (*goo)(); /* ptr to func returning void */
-#if TRY & 8
- void *hue; /* generic ptr */
-#endif
-#if TRY & 2
- void (*foo[10])();
-#endif
-
-#if TRY & 4
- if(goo == moo) {
- exit(0);
- }
-#endif
- exit(0);
-}
-int main() { sub(); }
-EOCP
- if $cc $ccflags -c -DTRY=$defvoidused try.c >.out 2>&1 ; then
- voidflags=$defvoidused
- echo "Good. It appears to support void to the level $package wants.">&4
- if $contains warning .out >/dev/null 2>&1; then
- echo "However, you might get some warnings that look like this:"
- $cat .out
- fi
- else
-echo "Hmm, your compiler has some difficulty with void. Checking further..." >&4
- if $cc $ccflags -c -DTRY=1 try.c >/dev/null 2>&1; then
- echo "It supports 1..."
- if $cc $ccflags -c -DTRY=3 try.c >/dev/null 2>&1; then
- echo "It also supports 2..."
- if $cc $ccflags -c -DTRY=7 try.c >/dev/null 2>&1; then
- voidflags=7
- echo "And it supports 4 but not 8 definitely."
- else
- echo "It doesn't support 4..."
- if $cc $ccflags -c -DTRY=11 try.c >/dev/null 2>&1; then
- voidflags=11
- echo "But it supports 8."
- else
- voidflags=3
- echo "Neither does it support 8."
- fi
- fi
- else
- echo "It does not support 2..."
- if $cc $ccflags -c -DTRY=13 try.c >/dev/null 2>&1; then
- voidflags=13
- echo "But it supports 4 and 8."
- else
- if $cc $ccflags -c -DTRY=5 try.c >/dev/null 2>&1; then
- voidflags=5
- echo "And it supports 4 but has not heard about 8."
- else
- echo "However it supports 8 but not 4."
- fi
- fi
- fi
- else
- echo "There is no support at all for void."
- voidflags=0
- fi
- fi
-esac
-case "$voidflags" in
-"$defvoidused") ;;
-*) $cat >&4 <<'EOM'
- Support flag bits are:
- 1: basic void declarations.
- 2: arrays of pointers to functions returning void.
- 4: operations between pointers to and addresses of void functions.
- 8: generic void pointers.
-EOM
- dflt="$voidflags";
- rp="Your void support flags add up to what?"
- . ./myread
- voidflags="$ans"
- ;;
-esac
-$rm_try
-
: check for length of pointer
echo " "
case "$ptrsize" in
'')
echo "Checking to see how big your pointers are..." >&4
- if test "$voidflags" -gt 7; then
- echo '#define VOID_PTR char *' > try.c
- else
- echo '#define VOID_PTR void *' > try.c
- fi
$cat >>try.c <<EOCP
#include <stdio.h>
#$i_stdlib I_STDLIB
#endif
int main()
{
- printf("%d\n", (int)sizeof(VOID_PTR));
+ printf("%d\n", (int)sizeof(void *));
exit(0);
}
EOCP
[yY]*) fn=d~+
rp='Installation prefix to use for vendor-supplied add-ons?'
case "$vendorprefix" in
- '') dflt='' ;;
+ '') dflt="$prefix" ;;
*) dflt=$vendorprefix ;;
esac
. ./getfile
Lastly, you can have perl look in other directories for extensions and
modules in addition to those already specified.
-These directories will be searched after
- $sitearch
- $sitelib
+These directories will be searched after
+ $sitearch
+ $sitelib
EOM
test X"$vendorlib" != "X" && echo ' ' $vendorlib
test X"$vendorarch" != "X" && echo ' ' $vendorarch
rp='Colon-separated list of additional directories for perl to search?'
. ./myread
case "$ans" in
-' '|''|none) otherlibdirs=' ' ;;
+' '|''|none) otherlibdirs=' ' ;;
*) otherlibdirs="$ans" ;;
esac
case "$otherlibdirs" in
;;
esac
case "$dflt" in
- '')
+ '')
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
+ echo "'nm' won't be sufficient on this system." >&4
dflt=n
fi
;;
esac
$rm -f libnames libpath
-: see if dld is available
-set dld.h i_dld
-eval $inhdr
-
: Check if we are using C++
echo " "
echo "Checking for C++..." >&4
case "$d_dlopen" in
$define) dflt='y' ;;
esac
- case "$i_dld" in
- $define) dflt='y' ;;
- esac
: Does a dl_xxx.xs file exist for this operating system
$test -f $rsrc/$dldir/dl_${osname}.xs && dflt='y'
;;
dflt="$dldir/dl_${osname}.xs"
elif $test "$d_dlopen" = "$define" ; then
dflt="$dldir/dl_dlopen.xs"
- elif $test "$i_dld" = "$define" ; then
- dflt="$dldir/dl_dld.xs"
else
dflt=''
fi
;;
linux|irix*|gnu*) dflt="-shared $optimize" ;;
next) dflt='none' ;;
- solaris) dflt='-G' ;;
+ solaris) # See [perl #66604].
+ # On Solaris 11, gcc -m64 on amd64
+ # appears not to understand -G. gcc versions at
+ # least as old as 3.4.3 support -shared, so just
+ # use that with Solaris 11 and later, but keep
+ # the old behavior for older Solaris versions.
+ case "$gccversion" in
+ '') dflt='-G' ;;
+ *) case "$osvers" in
+ 2.?|2.10) dflt='-G' ;;
+ *) dflt='-shared' ;;
+ esac
+ ;;
+ esac
+ ;;
sunos) dflt='-assert nodefinitions' ;;
svr4*|esix*|nonstopux) dflt="-G $ldflags" ;;
*) dflt='none' ;;
solaris)
xxx="-R $shrpdir"
;;
- freebsd|mirbsd|netbsd|openbsd|interix|dragonfly)
+ freebsd|mirbsd|netbsd|openbsd|interix|dragonfly|bitrig)
xxx="-Wl,-R$shrpdir"
;;
bsdos|linux|irix*|dec_osf|gnu*)
: determine where manual pages are on this system
echo " "
case "$sysman" in
-'')
+'')
syspath='/usr/share/man/man1 /usr/man/man1'
syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1"
syspath="$syspath /usr/man/u_man/man1"
cont=x
while test "$cont"; do
case "$MAILDOMAIN" in
- '') maildomain="$myhostname$mydomain";;
+ '')
+ if $test -s /etc/mailname; then
+ maildomain=`$cat /etc/mailname`
+ else
+ maildomain="$myhostname$mydomain"
+ fi
+ ;;
*) maildomain="$MAILDOMAIN";;
esac
case "$cf_email" in
valstd="$undef"
fi
-: see if varags is available
+: see if varargs is available
echo " "
if $test `./findhdr varargs.h`; then
echo "<varargs.h> found." >&4
: now check which varargs header should be included
echo " "
i_varhdr=''
-val=""
+val=''
case "$valstd" in
"$define")
if `./varargs I_STDARG`; then
#endif
#endif
#endif
-#endif
+#endif
int main() {
DIR *dirp = opendir(".");
if (dirfd(dirp) >= 0)
$rm -f $$.h
;;
*)
- val="$undef";
+ val="$undef";
set d_pwquota; eval $setvar
set d_pwage; eval $setvar
set d_pwchange; eval $setvar
#endif
#ifdef INT16
int16_t i = INT16_MAX;
- uint16_t i = UINT16_MAX;
+ uint16_t u = UINT16_MAX;
printf("int16_t\n");
#endif
#ifdef INT32
if eval $compile_ok; then
val="$define"
else
- echo "But you don't seem to have a useable struct sigaction." >&4
+ echo "But you don't seem to have a usable struct sigaction." >&4
val="$undef"
fi
else
# Respect a hint (or previous) value for perl_static_inline, if there is one.
case "$perl_static_inline" in
'') # Check the various possibilities, and break out on success.
- # For gcc, prefer __inline__, which will still permit
+ # For gcc, prefer __inline__, which will still permit
# cflags.SH to add in -ansi.
case "$gccversion" in
'') xxx="inline __inline__ __inline _inline";;
echo 'strerror() found.' >&4
d_strerror="$define"
d_strerrm='strerror(e)'
- if set sys_errlist val -a d_syserrlst; eval $csym; $val; then
- echo "(You also have sys_errlist[], so we could roll our own strerror.)"
+ if set sys_errlist val -a d_syserrlst; eval $csym; $val; then
+ echo "(You also have sys_errlist[], so we could roll our own strerror.)"
d_syserrlst="$define"
else
- echo "(Since you don't have sys_errlist[], sterror() is welcome.)"
+ echo "(Since you don't have sys_errlist[], strerror() is welcome.)"
d_syserrlst="$undef"
fi
elif xxx=`./findhdr string.h`; test "$xxx" || xxx=`./findhdr strings.h`; \
echo 'strerror() found in string header.' >&4
d_strerror="$define"
d_strerrm='strerror(e)'
- if set sys_errlist val -a d_syserrlst; eval $csym; $val; then
+ if set sys_errlist val -a d_syserrlst; eval $csym; $val; then
echo "(Most probably, strerror() uses sys_errlist[] for descriptions.)"
d_syserrlst="$define"
else
: set the base revision
baserev=5.0
-: length of character in bytes. Is always 1, otherwise it isnt C
+: Determine if this is an EBCDIC system
+echo " "
+echo "Determining whether or not we are on an EBCDIC system..." >&4
+$cat >try.c <<'EOM'
+int main()
+{
+ if ('M'==0xd4) return 0;
+ return 1;
+}
+EOM
+
+case "$BOOTSTRAP_CHARSET" in
+ Y|y|define) bootstrap_charset=$define ;;
+ *) bootstrap_charset=$undef ;;
+esac
+
+val=$undef
+set try
+if eval $compile_ok; then
+ if $run ./try; then
+ echo "You seem to speak EBCDIC." >&4
+ val="$define"
+ else
+ echo "Nope, no EBCDIC, probably ASCII or some ISO Latin. Or UTF-8." >&4
+ fi
+else
+ echo "I'm unable to compile the test program." >&4
+ echo "I'll assume ASCII or some ISO Latin. Or UTF8." >&4
+fi
+$rm_try
+set ebcdic
+eval $setvar
+
+: length of character in bytes. Is always 1, otherwise it is not C
: This used to be a test using sizeof
charsize=1
: How can we generate normalized random numbers ?
echo " "
-echo "Looking for a random number function..." >&4
-case "$randfunc" in
-'')
- if set drand48 val -f; eval $csym; $val; then
- dflt="drand48"
- echo "Good, found drand48()." >&4
- elif set random val -f; eval $csym; $val; then
- dflt="random"
- echo "OK, found random()." >&4
- else
- dflt="rand"
- echo "Yick, looks like I have to use rand()." >&4
- fi
- echo " "
- ;;
-*)
- dflt="$randfunc"
- ;;
-esac
-cont=true
+echo "Using our internal random number implementation..." >&4
case "$ccflags" in
*-Dmy_rand=*|*-Dmy_srand=*)
;;
esac
-while $test "$cont"; do
- rp="Use which function to generate random numbers?"
- . ./myread
- if $test "$ans" = "$dflt"; then
- : null
- else
- randbits=''
- fi
- randfunc="$ans"
- if set $ans val -f; eval $csym; $val; then
- cont=''
- else
- dflt=y
- rp="I cannot find function $ans. Use that name anyway?"
- . ./myread
- dflt=rand
- case "$ans" in
- [yY]*) cont='';;
- esac
- fi
- case "$cont" in
- '')
- case "$randfunc" in
- drand48)
- drand01="drand48()"
- seedfunc="srand48"
- randbits=48
- randseedtype=long
- ;;
- rand|random)
- case "$randbits" in
- '')
-echo "Checking to see how many bits your $randfunc() function produces..." >&4
- $cat >try.c <<EOCP
-#$i_unistd I_UNISTD
-#$i_stdlib I_STDLIB
-#include <stdio.h>
-#ifdef I_UNISTD
-# include <unistd.h>
-#endif
-#ifdef I_STDLIB
-# include <stdlib.h>
-#endif
-int main()
-{
- int i;
- unsigned long tmp;
- unsigned long max = 0L;
-
- for (i = 1000; i; i--) {
- tmp = (unsigned long) $randfunc();
- if (tmp > max) max = tmp;
- }
- for (i = 0; max; i++)
- max /= 2;
- printf("%d\n",i);
-}
-EOCP
- set try
- if eval $compile_ok; then
- dflt=`try`
- else
- dflt='?'
- echo "(I can't seem to compile the test program...)"
- fi
- ;;
- *)
- dflt="$randbits"
- ;;
- esac
- rp="How many bits does your $randfunc() function produce?"
- . ./myread
- randbits="$ans"
- $rm_try
- drand01="($randfunc() / (double) ((unsigned long)1 << $randbits))"
- seedfunc="s$randfunc"
- randseedtype=unsigned
- ;;
- *)
- dflt="31"
- rp="How many bits does your $randfunc() function produce?"
- . ./myread
- randbits="$ans"
- seedfunc="s$randfunc"
- drand01="($randfunc() / (double) ((unsigned long)1 << $randbits))"
- if set $seedfunc val -f; eval $csym; $val; then
- echo "(Using $seedfunc() to seed random generator)"
- else
- echo "(Warning: no $seedfunc() to seed random generator)"
- seedfunc=rand
- fi
- randseedtype=unsigned
- ;;
- esac
- ;;
- esac
-done
-
-: Determine if this is an EBCDIC system
-echo " "
-echo "Determining whether or not we are on an EBCDIC system..." >&4
-$cat >try.c <<'EOM'
-int main()
-{
- if ('M'==0xd4) return 0;
- return 1;
-}
-EOM
-
-val=$undef
-set try
-if eval $compile_ok; then
- if $run ./try; then
- echo "You seem to speak EBCDIC." >&4
- val="$define"
- else
- echo "Nope, no EBCDIC, probably ASCII or some ISO Latin. Or UTF-8." >&4
- fi
-else
- echo "I'm unable to compile the test program." >&4
- echo "I'll assume ASCII or some ISO Latin. Or UTF8." >&4
-fi
-$rm_try
-set ebcdic
-eval $setvar
+randfunc=Perl_drand48
+drand01="Perl_drand48()"
+seedfunc="Perl_drand48_init"
+randbits=48
+randseedtype=U32
: Check how to flush
echo " "
;;
esac
fi
-: check for fflush NULL behaviour
+: check for fflush NULL behavior
case "$fflushNULL" in
'') set try -DTRY_FFLUSH_NULL $output
if eval $compile; then
$rm_try
;;
*) echo "You don't have <stdarg.h>, not checking for va_copy()." >&4
+ need_va_copy="$undef"
;;
esac
*-y*) ;;
*)
yacc="$yacc -y"
- echo "(Adding -y option to bison to get yacc-compatible behaviour.)"
+ echo "(Adding -y option to bison to get yacc-compatible behavior.)"
;;
esac
;;
chmod +x Cppsym.try
$eunicefix Cppsym.try
./Cppsym < Cppsym.know | $sort | $uniq > Cppsym.true
-: Add in any linux cpp "predefined macros":
+: Add in any Linux cpp "predefined macros":
case "$osname::$gccversion" in
*linux*::*.*|*gnukfreebsd*::*.*|gnu::*.*)
tHdrH=_tmpHdr
: Check extensions
echo " "
echo "Looking for extensions..." >&4
-: If we are using the old config.sh, known_extensions may contain
-: old or inaccurate or duplicate values.
-known_extensions=''
+: If we are using the old config.sh, nonxs_extensions and xs_extensions may
+: contain old or inaccurate or duplicate values.
nonxs_extensions=''
+xs_extensions=''
: We do not use find because it might not be available.
: We do not just use MANIFEST because the user may have dropped
: some additional extensions into the source tree and expect them
DynaLoader|dynaload) ;;
*)
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
- echo " $known_extensions $nonxs_extensions" > $$.tmp;
- if $contains " $this_ext " $$.tmp; then
- echo >&4;
- echo "Duplicate directories detected for extension $xxx" >&4;
- echo "Configure cannot correctly recover from this - shall I abort?" >&4;
- case "$knowitall" in
- "") dflt=y;;
- *) dflt=n;;
- esac;
- . ../UU/myread;
- case "$ans" in
- n*|N*) ;;
- *) echo >&4;
- echo "Ok. Stopping Configure." >&4;
- echo "Please remove the duplicate directory (eg using git clean) and then re-run Configure" >&4;
- exit 1;;
- esac;
- echo "Ok. You will need to correct config.sh before running make." >&4;
- fi;
- $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
+ case "$this_ext" in
+ Scalar/List/Utils) this_ext="List/Util";;
+ PathTools) this_ext="Cwd";;
+ esac;
+ echo " $xs_extensions $nonxs_extensions" > $$.tmp;
+ if $contains " $this_ext " $$.tmp; then
+ echo >&4;
+ echo "Duplicate directories detected for extension $xxx" >&4;
+ echo "Configure cannot correctly recover from this - shall I abort?" >&4;
+ case "$knowitall" in
+ "") dflt=y;;
+ *) dflt=n;;
+ esac;
+ . ../UU/myread;
+ case "$ans" in
+ n*|N*) ;;
+ *) echo >&4;
+ echo "Ok. Stopping Configure." >&4;
+ echo "Please remove the duplicate directory (e.g. using git clean) and then re-run Configure" >&4;
+ exit 1;;
+ esac;
+ echo "Ok. You will need to correct config.sh before running make." >&4;
+ fi;
+ $ls -1 $xxx > $$.tmp;
+ if $contains "\.xs$" $$.tmp > /dev/null 2>&1; then
+ xs_extensions="$xs_extensions $this_ext";
+ elif $contains "\.c$" $$.tmp > /dev/null 2>&1; then
+ xs_extensions="$xs_extensions $this_ext";
+ elif $test -d $xxx; then
+ nonxs_extensions="$nonxs_extensions $this_ext";
+ fi;
+ $rm -f $$.tmp;
;;
esac;
done'
set X
shift
eval $find_extensions
-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
+set X $xs_extensions
shift
-known_extensions=`echo "$*" | tr ' ' $trnl | $sort | tr $trnl ' '`
+xs_extensions=`echo "$*" | tr ' ' $trnl | $sort | tr $trnl ' '`
set X $nonxs_extensions
shift
nonxs_extensions=`echo "$*" | tr ' ' $trnl | $sort | tr $trnl ' '`
cd "$tdir"
+known_extensions=`echo $nonxs_extensions $xs_extensions | tr ' ' $trnl | $sort | tr $trnl ' '`
: Now see which are supported on this system.
avail_ext=''
-for xxx in $known_extensions ; do
+for xxx in $xs_extensions ; do
case "$xxx" in
DB_File|db_file)
case "$i_db" in
nonxs_ext=''
for xxx in $nonxs_extensions ; do
case "$xxx" in
+ VMS*)
+ ;;
*) nonxs_ext="$nonxs_ext $xxx"
;;
esac
cd "$rsrc/cpan"
for xxx in `ls Encode/*/Makefile.PL|awk -F/ '{print $2}'`; do
static_ext="$static_ext Encode/$xxx"
+ known_extensions="$known_extensions Encode/$xxx"
done
cd "$tdir"
;;
;;
*) case "$usedl" in
$define|true|[yY]*)
- set X `echo " $libs " | sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -lgdbm_compat @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
+ set X `echo " $libs " | sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -lgdbm_compat @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
shift
perllibs="$*"
;;
bin_ELF='$bin_ELF'
binexp='$binexp'
bison='$bison'
+bootstrap_charset='$bootstrap_charset'
byacc='$byacc'
byteorder='$byteorder'
c='$c'
db_version_major='$db_version_major'
db_version_minor='$db_version_minor'
db_version_patch='$db_version_patch'
-defvoidused='$defvoidused'
direntrytype='$direntrytype'
dlext='$dlext'
dlsrc='$dlsrc'
i_db='$i_db'
i_dbm='$i_dbm'
i_dirent='$i_dirent'
-i_dld='$i_dld'
i_dlfcn='$i_dlfcn'
i_fcntl='$i_fcntl'
i_float='$i_float'
version_patchlevel_string='$version_patchlevel_string'
versiononly='$versiononly'
vi='$vi'
-voidflags='$voidflags'
xlibpth='$xlibpth'
yacc='$yacc'
yaccflags='$yaccflags'