1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
#! @PERL@
@GPT_PERL_INITIALIZER@
use strict;
use Getopt::Long;
use Config;
#
# Do a perl check for version >= 5.005.
#
if ( ! ( defined eval "require 5.005" ) )
{
die "GPT requires at least Perl version 5.005";
}
if ( ! ( defined eval "require Grid::GPT::GPTObject" ) )
{
die("$prefix does not appear to hold a valid GPT installation\n");
}
require Pod::Usage;
my $VERSION = 0.01;
my $srcdir = cwd();
my $flavor = "noflavor";
my $verbose = 0;
my ($help, $man);
# sub pod2usage {
# my $ex = shift;
# print "gpt_generate_bin_pkg_data [-verbose -help] -flavor=build_flavor src_metadata_file\n";
# exit $ex;
# }
GetOptions( 'flavor=s' => \$flavor, 'verbose=i' => \$verbose, 'help' => \$help)
or Pod::Usage::pod2usage(1);
Pod::Usage::pod2usage(0) if $help;
Pod::Usage::pod2usage(-verbose => 2) if $man;
require Grid::GPT::PackageFactory;
require Grid::GPT::V1::Definitions;
use Cwd;
my $srcfile = shift;
my $factory = new Grid::GPT::PackageFactory;
my $pkg = $factory->type_of_package($srcfile);
$pkg->read_metadata_file($srcfile);
my @pkgtypes = @Grid::GPT::V1::Definitions::package_types;
for my $typ (@pkgtypes) {
next if $typ eq 'src';
my $type_flavor = $flavor;
$type_flavor = "noflavor"
if defined ($Grid::GPT::V1::Definitions::noflavor_pkg_types{$typ});
# Don't put down pkgdata if there isn't a filelist
next unless ( -f "${type_flavor}_${typ}.filelist" );
my $out = $srcfile;
$out =~ s/_src/_$ {type_flavor}_$typ/;
my $bin_pkg = $pkg->convert_metadata($typ, $flavor);
$bin_pkg->output_metadata_file($out);
}
__END__
|