Subversion Repositories DevTools

Rev

Rev 5710 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#! perl
########################################################################
# COPYRIGHT - VIX IP PTY LTD ("VIX"). ALL RIGHTS RESERVED.
#
# Module name   : jats.sh
# Module type   : Makefile system
# Compiler(s)   : n/a
# Environment(s): jats
#
# Description   : Junk
#
# Usage:
#
# Version   Who      Date        Description
#
#......................................................................#

require 5.006_001;
use strict;
use warnings;
use JatsError;

#use Data::Dumper;
use Cwd;
use DeployUtils::RmPkgInfo;
my $GBE_PERL     = $ENV{'GBE_PERL'};        # Essential ENV variables
my $GBE_CORE     = $ENV{'GBE_CORE'};
my $opt_verbose = 1;

my %Package;
my %Pkgs = (
#"tp5000", "1.0.0.syd",
"daf_br", "25.15.3001.syd",
);


ErrorConfig( 'name'    =>'PLAY1' );
foreach my $name ( sort keys( %Pkgs) )
{
    GetDepends (0, $name , $Pkgs{$name} );
}


#
#   Test the RM Interface
#
#GetDepends (0, 'daf_br', '25.14.3.syd' );
#GetDepends (0, 'daf_br_oar','26.0.3001.syd' );
#GetDepends (0, 'safpd', '2.0.6.syd' );

#-------------------------------------------------------------------------------
# Function        : GetDepends
#
# Description     :
#
# Inputs          : pkg_name
#                   pkg_ver
#
# Returns         :
#
sub GetDepends
{
    my ($level, $pkg_name, $pkg_ver ) = @_;

    print  ' ' x ($level * 4), "${pkg_name}_$pkg_ver\n";
    return
        if ( defined($Package{$pkg_name}{$pkg_ver}) );

    $Package{$pkg_name}{$pkg_ver} = 1;

    my $pkgInfo;

    $pkgInfo = DeployUtils::RmPkgInfo->new( { PKG_NAME => $pkg_name , PKG_VERSION => $pkg_ver } );
    my $path = $pkgInfo->pv_source_path();
    my $label = $pkgInfo->pv_label();


    unless ( $pkgInfo->foundDetails() )
    {
#        print  "${pkg_name}_$pkg_ver - NO Details at all\n";
        return;
    }

    $pkgInfo->getDependencyNames();
    foreach my $name ( $pkgInfo->getDependencyNames() )
    {
        my $depPkg = $pkgInfo->getDependencyObject($name);
        my $version = $depPkg->pkg_version();
        GetDepends ($level+1, $name , $version );

    }

    unless ( $path )
    {
#        print  "${pkg_name}_$pkg_ver - NO Path\n";
        return;
    }

    unless ( $label )
    {
#        print  "${pkg_name}_$pkg_ver - NO label\n";
        return;
    }
    

#    print  "${pkg_name}_$pkg_ver $label $path\n";


}