diff options
Diffstat (limited to 'infrastructure/makeparcels.pl.in')
-rwxr-xr-x | infrastructure/makeparcels.pl.in | 36 |
1 files changed, 30 insertions, 6 deletions
diff --git a/infrastructure/makeparcels.pl.in b/infrastructure/makeparcels.pl.in index 2370f435..ff96c078 100755 --- a/infrastructure/makeparcels.pl.in +++ b/infrastructure/makeparcels.pl.in @@ -123,12 +123,24 @@ for my $parcel (@parcels) for(@{$parcel_contents{$parcel}}) { - my ($type,$name,$dest) = split /\s+/; - my $optional = ''; + my @args = split /\s+/; + + my ($type,$name,$dest) = @args; + my $optional = 0; + my $install = 1; if ($type eq 'optional') { - ($optional,$type,$name,$dest) = split /\s+/; + $optional = 1; + shift @args; + ($type,$name,$dest) = @args; + } + + if ($type eq 'noinstall') + { + $install = 0; + shift @args; + ($type,$name,$dest) = @args; } if($type eq 'bin') @@ -184,20 +196,32 @@ EOF for(@{$parcel_contents{$parcel}}) { my ($type,$name,$dest) = split /\s+/; - my $optional = ''; + + my $optional = 0; + my $install = 1; if ($type eq 'optional') { - ($optional,$type,$name,$dest) = split /\s+/; + $optional = 1; + shift @args; + ($type,$name,$dest) = @args; } + if ($type eq 'noinstall') + { + $install = 0; + shift @args; + ($type,$name,$dest) = @args; + } + + if ($type eq 'script') { # remove path from script name $name =~ s{.*/}{}; } - unless ($target_windows) + if ($install and not $target_windows) { my $local_install_dir = $install_into_dir; if (defined $dest) |