This seems a reasonable extension to cover, as it's arguably part of the
core, because it has to be linked into the perl executable, and handled
differently from everything else, even "static" extensions.
This reveals that DynaLoader can generate a previously undocumented warning,
so document this.
(F) List assignment to %ENV is not supported on some systems, notably
VMS.
+=item Can't make loaded symbols global on this platform while loading %s
+
+(W) A module passed the flag 0x01 to DynaLoader::dl_load_file() to request
+that symbols from the stated file are made available globally within the
+process, but that functionality is not available on this platform. Whilst
+the module likely will still work, this may prevent the perl interpreter
+from loading other XS-based extensions which need to link directly to
+functions defined in the C or XS code in the stated file.
+
=item Can't modify %s in %s
(F) You aren't allowed to assign to the item indicated, or otherwise try
open my $fh, '<', 'MANIFEST' or die "Can't open MANIFEST: $!";
while (my $file = <$fh>) {
- next if $file =~ m!\A(?:ext|dist|cpan|lib|t)/!;
chomp $file;
$file =~ s/\s+.*//;
- next unless $file =~ /\.(?:c|cpp|h|y)\z/ or $file =~ /^perly\./;
+ next unless $file =~ /\.(?:c|cpp|h|xs|y)\z/ or $file =~ /^perly\./;
+ # OS/2 extensions have never been migrated to ext/, hence the special case:
+ next if $file =~ m!\A(?:ext|dist|cpan|lib|t|os2/OS2)/!
+ && $file !~ m!\Aext/DynaLoader/!;
check_file($file);
}
close $fh or die $!;