summaryrefslogtreecommitdiff
path: root/Configure
diff options
context:
space:
mode:
authorH.Merijn Brand <h.m.brand@xs4all.nl>2012-03-31 16:31:29 +0200
committerH.Merijn Brand <h.m.brand@xs4all.nl>2012-03-31 16:31:54 +0200
commit9ec4dadfbbcf94d284b7e489694f1fa9fd6647c0 (patch)
tree6288f26601a51812aa7a6bdd5157b2b42d363695 /Configure
parent258f564231885d20cd3b29a014dda4c79b44b1b0 (diff)
downloadperl-9ec4dadfbbcf94d284b7e489694f1fa9fd6647c0.tar.gz
Add ld_can_script probe to Configure
With this new probe, requested by rafl, we could start building perl as it would be built on OSs like AIX and Windows and actually test visibility of the API and thus early detect if tests would fail on these restrictive OSs
Diffstat (limited to 'Configure')
-rwxr-xr-xConfigure32
1 files changed, 31 insertions, 1 deletions
diff --git a/Configure b/Configure
index f87e6fdc09..fa8fbb0169 100755
--- a/Configure
+++ b/Configure
@@ -28,7 +28,7 @@
# See Porting/pumpkin.pod for more information on metaconfig.
#
-# Generated on Thu Feb 16 16:57:30 CET 2012 [metaconfig 3.5 PL0]
+# Generated on Sat Mar 31 16:09:53 CEST 2012 [metaconfig 3.5 PL0]
# (with additional metaconfig patches by perlbug@perl.org)
cat >c1$$ <<EOF
@@ -843,6 +843,7 @@ cccdlflags=''
ccdlflags=''
dlsrc=''
ld=''
+ld_can_script=''
lddlflags=''
usedl=''
doublesize=''
@@ -8085,6 +8086,34 @@ EOM
;;
esac
+ld_can_script="$undef"
+case "$bin_ELF$usedl" in
+$define$define)
+ # Abuse try.h and a.out names for neat cleanup
+ $cat >try.c <<EOM
+void foo() {}
+void bar() {}
+EOM
+ $cat >try.h <<EOM
+LIBTEST_42 {
+ global:
+ foo;
+ local: *;
+ };
+EOM
+ if $cc $cccdlflags $ccdlflags $ccflags \
+ $ldflags $lddlflags -o a.out try.c \
+ -Wl,--version-script=try.h >/dev/null 2>&1 \
+ && $test -s a.out ; then
+ echo "ld supports scripting" >&4
+ ld_can_script="$define"
+ else
+ echo "ld does not support scripting" >&4
+ fi
+ $rm_try
+ ;;
+esac
+
: Do we want a shared libperl?
also=''
case "$usedl" in
@@ -23471,6 +23500,7 @@ ivtype='$ivtype'
known_extensions='$known_extensions'
ksh='$ksh'
ld='$ld'
+ld_can_script='$ld_can_script'
lddlflags='$lddlflags'
ldflags='$ldflags'
ldflags_uselargefiles='$ldflags_uselargefiles'