summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas König <a.koenig@mind.de>2000-11-02 12:26:48 +0100
committerJarkko Hietaniemi <jhi@iki.fi>2000-11-02 13:56:26 +0000
commit632a9a7f3319d143cc62cb1495c02ec868a6dc88 (patch)
tree442087b5eca3611eba3f52976dba24d1789864f8
parent4de74f4e8cc9429ea54bd73d4b78725908054f91 (diff)
downloadperl-632a9a7f3319d143cc62cb1495c02ec868a6dc88.tar.gz
Test::Harness revealed buglets in the new DynaLoader.
Subject: [ID 20001102.001] Not OK: perl v5.7.0 +DEVEL7523 on i686-linux 2.2.16a (UNINSTALLED) Message-Id: <m3vgu6k6tz.fsf@ak-71.mind.de> p4raw-id: //depot/perl@7526
-rw-r--r--ext/DynaLoader/DynaLoader_pm.PL24
1 files changed, 18 insertions, 6 deletions
diff --git a/ext/DynaLoader/DynaLoader_pm.PL b/ext/DynaLoader/DynaLoader_pm.PL
index 1f9a9bcc95..728172a0af 100644
--- a/ext/DynaLoader/DynaLoader_pm.PL
+++ b/ext/DynaLoader/DynaLoader_pm.PL
@@ -27,7 +27,9 @@ package DynaLoader;
#
# Tim.Bunce@ig.co.uk, August 1994
-$VERSION = "1.04"; # avoid typo warning
+use vars qw($VERSION *AUTOLOAD);
+
+$VERSION = 1.04; # avoid typo warning
require AutoLoader;
*AUTOLOAD = \&AutoLoader::AUTOLOAD;
@@ -59,6 +61,14 @@ sub dl_load_flags { 0x00 }
# = @Config::Config{'dlext', 'dlsrc'};
EOT
+
+if (!$ENV{PERL_BUILD_EXPAND_CONFIG_VARS}) {
+ print OUT <<EOT;
+use Config;
+
+EOT
+}
+
print OUT " (\$dl_dlext, \$dlsrc) = (",
to_string($Config::Config{'dlext'}), ",",
to_string($Config::Config{'dlsrc'}), ")\n;" ;
@@ -69,13 +79,15 @@ print OUT <<'EOT';
# (VMS support by Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>)
# See dl_expandspec() for more details. Should be harmless but
# inefficient to define on systems that don't need it.
-$do_expand = $Is_VMS = $^O eq 'VMS';
+$Is_VMS = $^O eq 'VMS';
+$do_expand = $Is_VMS;
+$Is_MacOS = $^O eq 'MacOS';
@dl_require_symbols = (); # names of symbols we need
@dl_resolve_using = (); # names of files to link with
@dl_library_path = (); # path to look for files
-#@dl_librefs = (); # things we have loaded
-#@dl_modules = (); # Modules we have loaded
+@dl_librefs = (); # things we have loaded
+@dl_modules = (); # Modules we have loaded
# This is a fix to support DLD's unfortunate desire to relink -lc
@dl_resolve_using = dl_findfile('-lc') if $dlsrc eq "dl_dld.xs";
@@ -83,7 +95,7 @@ $do_expand = $Is_VMS = $^O eq 'VMS';
EOT
my $cfg_dl_library_path = <<'EOT';
-push(@dl_library_path, split(' ', $Config::Config{'libpth'}));
+push(@dl_library_path, split(' ', $Config::Config{libpth}));
EOT
sub dquoted_comma_list {
@@ -132,7 +144,7 @@ EOT
my $env_dl_library_path = <<EOT;
-if (exists \$ENV{$ldlibpthname}) {
+if (exists \$ENV{$ldlibpthname} && \$ENV{$ldlibpthname} ne '') {
push(\@dl_library_path, split(/\$pthsep/, \$ENV{$ldlibpthname}));
}