diff options
author | Jess Robinson <castaway@desert-island.me.uk> | 2012-12-29 21:32:30 +0000 |
---|---|---|
committer | Brian Fraser <fraserbn@gmail.com> | 2014-01-22 13:08:20 -0300 |
commit | fdf90be34ec1e35c5b772dae2e8b3eb72df66a85 (patch) | |
tree | 0264e44dd3d741393ebfa38f78b1fb7746410cf0 /write_buildcustomize.pl | |
parent | ed9ba3bbdb87bec68e0f8d47a3a5c2253c96f950 (diff) | |
download | perl-fdf90be34ec1e35c5b772dae2e8b3eb72df66a85.tar.gz |
write_buildcustomize.pl: Setup $^O to be the target os when building Core.
This allows the correct hints files to be loaded when building modules
We do this by giving write_buildcustomize.pl a 'osname' parameter.
This means that write_buildcustomize.pl no longer depends on
Config to get osname, which eliminates a circular dependency
in the Makefiles.
Diffstat (limited to 'write_buildcustomize.pl')
-rw-r--r-- | write_buildcustomize.pl | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/write_buildcustomize.pl b/write_buildcustomize.pl index 3f78264a7a..64bf4ce6cb 100644 --- a/write_buildcustomize.pl +++ b/write_buildcustomize.pl @@ -1,13 +1,20 @@ #!./miniperl -w use strict; -if (@ARGV) { + +my $osname = $^O; +my $file = 'lib/buildcustomize.pl'; + +if ( @ARGV % 2 ) { my $dir = shift; chdir $dir or die "Can't chdir '$dir': $!"; unshift @INC, 'lib'; } -my $file = 'lib/buildcustomize.pl'; +if ( @ARGV ) { + # Used during cross-compilation. + $osname = $ARGV[1]; +} # To clarify, this isn't the entire suite of modules considered "toolchain" # It's not even all modules needed to build ext/ @@ -68,6 +75,7 @@ print $fh <<"EOT" or $error = "Can't print to $file: $!"; # Replace the first entry of \@INC ("lib") with the list of # directories we need. splice(\@INC, 0, 1, $inc); +\$^O = '$osname'; EOT if ($error) { |