#!/opt/perl/bin/perl
use strict;
#use lib "$ENV{GPS_HOME_DIR}/bin/pm";
use File::Basename;
use Carp;

my $progname = basename $0;
my $pdir = "$ENV{GPS_HOME_DIR}/etc/proj_lists";

my $usage = <<EOT;
  $progname lists all the sites in a project list.
  project lists are the *_net_sites files in 
  $pdir

  Usage:
  $progname proj-name [net]

EOT

die $usage if ! @ARGV || @ARGV > 2 ;
my $proj= shift;
my $net = uc shift || '';
die "$proj doesn't exists in $pdir\n$usage" 
  unless -e "$pdir/${proj}_net_sites";

open(FILE,"$pdir/${proj}_net_sites") 
  or croak "couldn't open $pdir/${proj}_net_sites  $!\n";
my @nets;
my @sites;
while (<FILE> ) {
   chomp;
   s/#.*$//;
   s/^\s.*$//;
   next unless length;
   my @l = split ' ',$_;
   my $snet = shift @l;
   push @nets,$snet;
   next if $net && $net ne $snet; 
   push @sites, @l; 
}
if ( $net && ! @sites ) { die "No sites for net $net\n Nets:@nets\n"; }
my %seen;
print map { "$_\n" } grep { !$seen{$_}++ } sort @sites;


