summaryrefslogtreecommitdiff
path: root/Configure
diff options
context:
space:
mode:
authorGraham Barr <gbarr@pobox.com>1998-06-19 06:31:04 -0500
committerGurusamy Sarathy <gsar@cpan.org>1998-06-21 06:51:38 +0000
commit4318d5a0158916acc059aa8e6af84037cb7296b9 (patch)
treeeed01f63911055a71417415226fec5ef7fb4d955 /Configure
parent0f4eea8fa1779e08575278392ed398ffeda6dcd2 (diff)
downloadperl-4318d5a0158916acc059aa8e6af84037cb7296b9.tar.gz
applied patch, modified logic to avoid reentering lexer at compile-time
Message-ID: <19980619113104.S9711@asic.sc.ti.com> Subject: Re: [PATCH perl5.004_67] Add Errno in ext/ p4raw-id: //depot/perl@1173
Diffstat (limited to 'Configure')
-rwxr-xr-xConfigure35
1 files changed, 33 insertions, 2 deletions
diff --git a/Configure b/Configure
index 307f25012c..8dd8d9ad25 100755
--- a/Configure
+++ b/Configure
@@ -147,6 +147,7 @@ dynamic_ext=''
extensions=''
known_extensions=''
static_ext=''
+nonxs_ext=''
useopcode=''
useposix=''
d_bsd=''
@@ -10867,6 +10868,7 @@ cd $rsrc/ext
: If we are using the old config.sh, known_extensions may contain
: old or inaccurate or duplicate values.
known_extensions=''
+nonxs_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
@@ -10879,17 +10881,27 @@ for xxx in * ; do
else
if $test -d $xxx; then
cd $xxx
+ zzz=$known_extensions
for yyy in * ; do
if $test -f $yyy/$yyy.xs; then
known_extensions="$known_extensions $xxx/$yyy"
fi
done
cd ..
+ if $test "$zzz" = "$known_extensions"; then
+ if $test -f $xxx/Makefile.PL; then
+ known_extensions="$known_extensions $xxx"
+ nonxs_extensions="$nonxs_extensions $xxx"
+ fi
+ fi
fi
fi
;;
esac
done
+set X $nonxs_extensions
+shift
+nonxs_extensions="$*"
set X $known_extensions
shift
known_extensions="$*"
@@ -10939,7 +10951,11 @@ for xxx in $known_extensions ; do
true|$define|y) avail_ext="$avail_ext $xxx" ;;
esac
;;
- *) avail_ext="$avail_ext $xxx"
+ *)
+ case " $nonxs_extensions " in
+ *" $xxx "*) ;;
+ *) avail_ext="$avail_ext $xxx" ;;
+ esac
;;
esac
done
@@ -10948,6 +10964,19 @@ set X $avail_ext
shift
avail_ext="$*"
+: Now see which nonxs extensions are supported on this system.
+nonxs_ext=''
+for xxx in $nonxs_extensions ; do
+ case "$xxx" in
+ *) nonxs_ext="$nonxs_ext $xxx"
+ ;;
+ esac
+done
+
+set X $nonxs_ext
+shift
+nonxs_ext="$*"
+
case $usedl in
$define)
$cat <<EOM
@@ -10978,6 +11007,7 @@ EOM
esac
;;
esac
+ : Exclude those that are not xs extensions
case "$dflt" in
'') dflt=none;;
esac
@@ -10993,7 +11023,7 @@ EOM
: Exclude those already listed in dynamic linking
dflt=''
for xxx in $avail_ext; do
- case " $dynamic_ext " in
+ case " $dynamic_ext $nonxs_ext " in
*" $xxx "*) ;;
*) dflt="$dflt $xxx" ;;
esac
@@ -11574,6 +11604,7 @@ path_sep='$path_sep'
perl='$perl'
perladmin='$perladmin'
perlpath='$perlpath'
+nonxs_ext='$nonxs_ext'
pg='$pg'
phostname='$phostname'
pidtype='$pidtype'