# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
#
-# Generated on Sun Apr 14 18:24:18 EET DST 2002 [metaconfig 3.0 PL70]
+# Generated on Wed Apr 24 03:05:12 EET DST 2002 [metaconfig 3.0 PL70]
# (with additional metaconfig patches by perlbug@perl.org)
cat >c1$$ <<EOF
''|[nN]*) multiarch="$undef" ;;
esac
-: check for ordering of bytes in a long
+: check for ordering of bytes in a UV
echo " "
case "$usecrosscompile$multiarch" in
*$define*)
probably right.
I'm now running the test program...
EOM
- $cat >try.c <<'EOCP'
+ $cat >try.c <<EOCP
#include <stdio.h>
+#include <sys/types.h>
+typedef $uvtype UV;
int main()
{
int i;
union {
- unsigned long l;
- char c[sizeof(long)];
+ UV l;
+ char c[$uvsize];
} u;
- if (sizeof(long) > 4)
- u.l = (0x08070605L << 32) | 0x04030201L;
+ if ($uvsize > 4)
+ u.l = (((UV)0x08070605) << 32) | (UV)0x04030201;
else
- u.l = 0x04030201L;
- for (i = 0; i < sizeof(long); i++)
+ u.l = (UV)0x04030201;
+ for (i = 0; i < $uvsize; i++)
printf("%c", u.c[i]+'0');
printf("\n");
exit(0);
fi
case "$xxx_prompt" in
y)
- rp="What is the order of bytes in a long?"
+ rp="What is the order of bytes in $uvtype?"
. ./myread
byteorder="$ans"
;;
esac
;;
threads|threads/shared)
- case "$usethreads" in
- true|$define|y)
- case "$useithreads" in
- $define|true|[yY]*) avail_ext="$avail_ext $xxx" ;;
- esac
- esac
+ # threads and threads::shared are special cases.
+ # To stop people from asking "Perl 5.8.0 was supposed
+ # to have this new fancy threads implementation but my
+ # perl doesn't have it" and from people trying to
+ # (re)install the threads module using CPAN.pm and
+ # CPAN.pm then offering to reinstall Perl 5.8.0,
+ # the threads.pm and threads/shared.pm will always be
+ # there, croaking informatively ("you need to rebuild
+ # all of Perl with threads, sorry") when threads haven't
+ # been compiled in.
+ # --jhi
+ avail_ext="$avail_ext $xxx"
;;
IPC/SysV|ipc/sysv)
: XXX Do we need a useipcsysv variable here
: Exclude those that are not xs extensions
case "$dflt" in
'') dflt=none;;
- *) case " $dflt " in
- *" Encode "*) # Add the subextensions of Encode
- cd "$rsrc/ext"
- for xxx in `ls Encode/*/Makefile.PL|awk -F/ '{print $2}'`; do
- dflt="$dflt Encode/$xxx"
- done
- cd "$tdir"
- ;;
- esac
- ;;
esac
rp="What extensions do you wish to include?"
. ./myread
esac
;;
esac
+#
+# Encode is a special case. If we are building Encode as a static
+# extension, we need to explicitly list its subextensions as well.
+# For other nested extensions, this is handled automatically by
+# the appropriate Makefile.PL.
+case " $static_ext " in
+ *" Encode "*) # Add the subextensions of Encode
+ cd "$rsrc/ext"
+ for xxx in `ls Encode/*/Makefile.PL|awk -F/ '{print $2}'`; do
+ static_ext="$static_ext Encode/$xxx"
+ done
+ cd "$tdir"
+ ;;
+esac
set X $dynamic_ext $static_ext $nonxs_ext
shift