my @need_relocation;
if (fetch_string({},'userelocatableinc')) {
- foreach my $what (qw(archlibexp
+ foreach my $what (qw(prefixexp
+
+ archlibexp
+ html1direxp
+ html3direxp
+ man1direxp
+ man3direxp
privlibexp
+ scriptdirexp
sitearchexp
+ sitebinexp
+ sitehtml1direxp
+ sitehtml3direxp
sitelibexp
- sitelib_stem
+ siteman1direxp
+ siteman3direxp
+ sitescriptexp
vendorarchexp
+ vendorbinexp
+ vendorhtml1direxp
+ vendorhtml3direxp
vendorlibexp
- vendorlib_stem)) {
+ vendorman1direxp
+ vendorman3direxp
+ vendorscriptexp
+
+ siteprefixexp
+ sitelib_stem
+ vendorlib_stem
+
+ installarchlib
+ installhtml1dir
+ installhtml3dir
+ installman1dir
+ installman3dir
+ installprefix
+ installprefixexp
+ installprivlib
+ installscript
+ installsitearch
+ installsitebin
+ installsitehtml1dir
+ installsitehtml3dir
+ installsitelib
+ installsiteman1dir
+ installsiteman3dir
+ installsitescript
+ installvendorarch
+ installvendorbin
+ installvendorhtml1dir
+ installvendorhtml3dir
+ installvendorlib
+ installvendorman1dir
+ installvendorman3dir
+ installvendorscript
+ )) {
push @need_relocation, $what if fetch_string({}, $what) =~ m!^\.\.\./!;
}
}
print CONFIG_HEAVY @non_v, "\n";
# copy config summary format from the myconfig.SH script
-print CONFIG_HEAVY "our \$summary : unique = <<'!END!';\n";
+print CONFIG_HEAVY "our \$summary = <<'!END!';\n";
open(MYCONFIG,"<myconfig.SH") || die "open myconfig.SH failed: $!";
1 while defined($_ = <MYCONFIG>) && !/^Summary of/;
do { print CONFIG_HEAVY $_ } until !defined($_ = <MYCONFIG>) || /^\s*$/;
close(MYCONFIG);
-# NB. as $summary is unique, we need to copy it in a lexical variable
-# before expanding it, because may have been made readonly if a perl
-# interpreter has been cloned.
-
print CONFIG_HEAVY "\n!END!\n", <<'EOT';
my $summary_expanded;
if (@need_relocation) {
print CONFIG_HEAVY 'foreach my $what (qw(', join (' ', @need_relocation),
")) {\n", <<'EOT';
- s/^($what=)(['"])(.*?)\2/$1 . $2 . relocate_inc($3) . $2/me;
+ s<^($what=)(['"])(.*?)\2>
+ <$1 . $2 . relocate_inc($3) . $2 . "\n" .
+ 'raw_' . $1 . $2 . $3 . $2>me;
}
EOT
# Currently it only makes sense to do the ... relocation on Unix, so there's
my $config_sh_len = length $_;
-our $Config_SH_expanded : unique = "\n$_" . << 'EOVIRTUAL';
+our $Config_SH_expanded = "\n$_" . << 'EOVIRTUAL';
EOT
foreach my $prefix (qw(ccflags ldflags)) {
$cross =~ s/\*\*\*replace-marker\*\*\*/$Opts{cross}/g;
print CROSS $cross;
close CROSS;
+ unshift(@INC,"xlib/$Opts{cross}");
}
# Now do some simple tests on the Config.pm file we have created