Subversion Repositories DevTools

Rev

Rev 1356 | Rev 2413 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1356 Rev 2319
Line 127... Line 127...
127
    '.oslo'         => '.oso',
127
    '.oslo'         => '.oso',
128
    '.osl'          => '.oso',
128
    '.osl'          => '.oso',
129
);
129
);
130
 
130
 
131
my %specialPackages = (
131
my %specialPackages = (
132
    'core_devl' =>  ',all,protected,',
132
    'core_devl'           =>  ',all,protected,',
-
 
133
    'daf_utils_mos'       => ',flat,',
133
#    'core_devl' =>  ',all,',
134
    'mos_packager'        => ',all,',
134
    'daf_utils_mos' => ',flat,',
135
    'cfmgr-cfmgr'         => ',flat,',
135
    'mos_packager'  => ',all,',
136
    'daf_utils_button_st' => ',flat,',
136
 
137
 
137
    # Need to be handled in a special manner
138
    # Need to be handled in a special manner
138
    # Not done by this utility
139
    # Not done by this utility
139
    #
140
    #
140
    'linux_drivers_eb5600'  => ',protected,',
141
    'linux_drivers_eb5600'  => ',protected,',
Line 142... Line 143...
142
    'linux_drivers_cobra'   => ',protected,',
143
    'linux_drivers_cobra'   => ',protected,',
143
    'linux_drivers_bcp4600' => ',protected,',
144
    'linux_drivers_bcp4600' => ',protected,',
144
    'linux_drivers_etx86'   => ',protected,',
145
    'linux_drivers_etx86'   => ',protected,',
145
    'linux_drivers_tp5600'  => ',protected,',
146
    'linux_drivers_tp5600'  => ',protected,',
146
 
147
 
-
 
148
# Not in the ukHops migration at the moment
-
 
149
    'cs'                        => ',protected,',
-
 
150
 
-
 
151
    'DBA-Common'                => ',protected,',
-
 
152
    'DBA-DatabaseInstall'       => ',protected,',
-
 
153
    'DBA-ExternalPerlModules'   => ',protected,',
-
 
154
    'DBA-OraUserBuild'          => ',protected,',
-
 
155
    'DBA-OST'                   => ',protected,',
-
 
156
    'orahops-install'           => ',protected,',
-
 
157
    'orahops-patch'             => ',protected,',
-
 
158
    'orahops-ssw-install'       => ',protected,',
-
 
159
    'orahops-ssw-patch'         => ',protected,',
-
 
160
# End of ukHops migration exclussion
-
 
161
 
147
    'ftp'                   => 'SetProjectBase,',
162
    'ftp'                   => 'SetProjectBase,',
148
 
163
 
149
    'icl'                   => 'IgnoreProjectBase,',
164
    'icl'                   => 'IgnoreProjectBase,',
150
    'itso'                  => 'IgnoreProjectBase,',
165
    'itso'                  => 'IgnoreProjectBase,',
151
    'daf_osa_mos'           => 'IgnoreProjectBase,',
166
    'daf_osa_mos'           => 'IgnoreProjectBase,',
Line 153... Line 168...
153
    'itso_ud'               => 'IgnoreProjectBase,',
168
    'itso_ud'               => 'IgnoreProjectBase,',
154
#    'mos_api'               => 'IgnoreProjectBase,',
169
#    'mos_api'               => 'IgnoreProjectBase,',
155
#    'mos_fonts'             => 'IgnoreProjectBase,',
170
#    'mos_fonts'             => 'IgnoreProjectBase,',
156
#    'sntp'                  => 'IgnoreProjectBase,',
171
#    'sntp'                  => 'IgnoreProjectBase,',
157
#    'time_it'               => 'IgnoreProjectBase,',
172
#    'time_it'               => 'IgnoreProjectBase,',
158
 
-
 
159
);
173
);
160
 
174
 
161
my %notCots = (
175
my %notCots = (
162
    'isl'       => 1,
176
    'isl'       => 1,
163
);
177
);
164
 
178
 
-
 
179
my $ukHopsMode = 0;
-
 
180
my %ukHopsReleases = (
-
 
181
    '6222'      => { name => 'MainLine', 'trunk' => 1 },
-
 
182
    '14503'     => { name => 'Hops3' },
-
 
183
    '21864'     => { name => 'Hops3.6' },
-
 
184
    '22303'     => { name => 'Hops3.7' },
-
 
185
    '17223'     => { name => 'Hops4' },
-
 
186
);
-
 
187
 
-
 
188
# The following packages will have the version in the specified release forced to be on the trunk
-
 
189
# A trunk will be forced and the version will be on it.
-
 
190
#   May only work if the version in the release is also a TIP
-
 
191
my %ukHopsTip = (
-
 
192
    'ItsoMessaging'         => '6222',
-
 
193
    'MessageProcessor'      => '6222',
-
 
194
    'StrongNameKey'         => '6222',
-
 
195
);
-
 
196
 
165
################################################################################
197
################################################################################
166
#   Global data
198
#   Global data
167
#
199
#
168
my $VERSION = "1.0.0";
200
my $VERSION = "1.0.0";
169
my $RM_DB;
201
my $RM_DB;
Line 533... Line 565...
533
        $opt_flat = 1 unless defined $opt_flat;
565
        $opt_flat = 1 unless defined $opt_flat;
534
        setPruneMode('none') unless (defined $opt_pruneModeString);
566
        setPruneMode('none') unless (defined $opt_pruneModeString);
535
 
567
 
536
    } elsif ( exists $suffixes{'.tool'} ) {
568
    } elsif ( exists $suffixes{'.tool'} ) {
537
        $packageType = 'TOOL';
569
        $packageType = 'TOOL';
538
        $Projects{'.tool'}{'Trunk'} = 1;
570
        $Projects{'.tool'}{Trunk} = 1;
539
        $singleProject = 1;
571
        $singleProject = 1;
540
        setPruneMode('none') unless (defined $opt_pruneModeString);
572
        setPruneMode('none') unless (defined $opt_pruneModeString);
541
#        $opt_flat = 1;
573
#        $opt_flat = 1;
542
 
574
 
543
    } elsif ( scalar (keys %suffixes ) == 1 ) {
575
    } elsif ( scalar (keys %suffixes ) == 1 ) {
Line 827... Line 859...
827
                    $versions{$entry}{newSuffix} = 1;
859
                    $versions{$entry}{newSuffix} = 1;
828
                }
860
                }
829
            }
861
            }
830
        }
862
        }
831
    }
863
    }
-
 
864
 
-
 
865
    #
-
 
866
    #   Mark UkHops special points
-
 
867
    #
-
 
868
    foreach my $entry ( keys(%versions) ) {
-
 
869
        foreach my $rtag_id ( keys %{$versions{$entry}{Releases}}  ) {
-
 
870
            next unless ( exists $ukHopsReleases{$rtag_id} );
-
 
871
            next unless ( $svnRepo =~ m~/ITSO_TRACS$~ );
-
 
872
 
-
 
873
            #
-
 
874
            #   This package is current in a special ukHops release
-
 
875
            #   Need to handle the differently
-
 
876
            #
-
 
877
            my $ukData =  $ukHopsReleases{$rtag_id};
-
 
878
 
-
 
879
            # Mark version we want on the trunk
-
 
880
            # Will calculate tip later
-
 
881
            if ( $ukData->{trunk} )
-
 
882
            {
-
 
883
                #
-
 
884
                #   Can only place on trunk IFF its a tip
-
 
885
                #   May have a WIP.
-
 
886
                #   Solution. Walk to the tip, but only if there is one
-
 
887
                #             path.
-
 
888
                #
-
 
889
                my $end = $entry;
-
 
890
                my $last;
-
 
891
                while ( $end )
-
 
892
                {
-
 
893
                    $last = $end;
-
 
894
                    if ( @{$versions{$end}{next}} > 1)
-
 
895
                    {
-
 
896
                        Warning ("Uk Release. Preferred trunk is not a tip: $versions{$entry}{vname}");
-
 
897
                        last;
-
 
898
                    }
-
 
899
 
-
 
900
                    $end = @{$versions{$end}{next}}[0];
-
 
901
                }
-
 
902
                $versions{$last}{ukTrunk} = 1 ;
-
 
903
            }
-
 
904
 
-
 
905
            #
-
 
906
            #   What to do if the version is in more than one release
-
 
907
            #
-
 
908
            $versions{$entry}{ukBranch}++;
-
 
909
            if ( $versions{$entry}{ukBranch} > 1 )
-
 
910
            {
-
 
911
                Warning ("Version found in multiple Uk Releases - don't know what to do");
-
 
912
            }
-
 
913
 
-
 
914
            #
-
 
915
            #   What to do if the package has multiple version in a release
-
 
916
            #
-
 
917
            $ukData->{count}++;
-
 
918
            if ( $ukData->{count} > 1 )
-
 
919
            {
-
 
920
                Warning ("Package has multiple versions in the one Uk Release: $versions{$entry}{Releases}{$rtag_id}{rname}");
-
 
921
            }
-
 
922
        }
-
 
923
    }
832
    
924
    
833
    #
925
    #
834
    #   Prune
926
    #   Prune
835
    #   Marks paths to root for all essential packages
927
    #   Marks paths to root for all essential packages
836
    #   Marks the last-N from all essential packages
928
    #   Marks the last-N from all essential packages
Line 846... Line 938...
846
            my $entry = $_;
938
            my $entry = $_;
847
            my $count = 0;
939
            my $count = 0;
848
            while ( $entry )
940
            while ( $entry )
849
            {
941
            {
850
                last if ( $versions{$entry}{KeepMe} );
942
                last if ( $versions{$entry}{KeepMe} );
851
                unless ( $versions{$entry}{isaRipple} )
943
#                unless ( $versions{$entry}{isaRipple} )
852
                {
944
                {
853
                    my $keepFlag = ($count++ < $opt_retaincount);
945
                    my $keepFlag = ($count++ < $opt_retaincount);
854
                    last unless ( $keepFlag );
946
                    last unless ( $keepFlag );
855
                    $versions{$entry}{KeepMe} = $keepFlag;
947
                    $versions{$entry}{KeepMe} = $keepFlag;
856
                }
948
                }
Line 942... Line 1034...
942
        {
1034
        {
943
            my ($entry) = @_;
1035
            my ($entry) = @_;
944
 
1036
 
945
            return 0 unless ( exists $versions{$entry} );
1037
            return 0 unless ( exists $versions{$entry} );
946
            return 0 unless ( $versions{$entry}{last} );
1038
            return 0 unless ( $versions{$entry}{last} );
947
            return 0 if ( ($pruneMode == 2) && exists $versions{$entry}{KeepMe} );
1039
#            return 0 if ( ($pruneMode == 2) && exists $versions{$entry}{KeepMe} );
-
 
1040
            return 0 if ( exists $versions{$entry}{KeepMe} );
948
            return 0 if ( exists $versions{$entry}{Essential} );
1041
            return 0 if ( exists $versions{$entry}{Essential} );
949
            return 0 if ( $versions{$entry}{newSuffix} );
1042
            return 0 if ( $versions{$entry}{newSuffix} );
950
            return 0 if ( $versions{$entry}{newSuffix} && (exists $versions{$entry}{EssentialPath}) );
1043
            return 0 if ( $versions{$entry}{newSuffix} && (exists $versions{$entry}{EssentialPath}) );
951
#            return 1 if ( exists $versions{$entry}{DeadWood} );
1044
#            return 1 if ( exists $versions{$entry}{DeadWood} );
952
            return 0 if ( exists $versions{$entry}{EssentialSplitPoint} && $versions{$entry}{EssentialSplitPoint} > 1 );
1045
            return 0 if ( exists $versions{$entry}{EssentialSplitPoint} && $versions{$entry}{EssentialSplitPoint} > 1 );
Line 992... Line 1085...
992
        #
1085
        #
993
        calcRippleGroups();
1086
        calcRippleGroups();
994
    }
1087
    }
995
 
1088
 
996
    #
1089
    #
-
 
1090
    #   Want some versions to be forced to tip trunk
-
 
1091
    #
-
 
1092
    foreach my $name ( keys %ukHopsTip )
-
 
1093
    {
-
 
1094
        foreach my $entry ( keys(%versions) )
-
 
1095
        {
-
 
1096
            next unless ( $versions{$entry}{name} eq $name  );
-
 
1097
            next unless ( exists $versions{$entry}{Releases}{$ukHopsTip{$name}} );
-
 
1098
 
-
 
1099
            #
-
 
1100
            #   Force this suffix to be the trunk
-
 
1101
            #   Remove all others
-
 
1102
            #
-
 
1103
            foreach my $suffix ( keys %Projects )
-
 
1104
            {
-
 
1105
                delete $Projects{$suffix}{Trunk};
-
 
1106
            }
-
 
1107
            my $suffix = $versions{$entry}{suffix};
-
 
1108
            $Projects{$suffix}{Trunk} = 1;
-
 
1109
        }
-
 
1110
    }
-
 
1111
 
-
 
1112
    #
997
    #   Calculate best through-path for branches in the tree
1113
    #   Calculate best through-path for branches in the tree
998
    #   Attempt to keep that 'max' version on the mainline
1114
    #   Attempt to keep that 'max' version on the mainline
999
    #   May be modified by -tip=nnnn
1115
    #   May be modified by -tip=nnnn
1000
    #
1116
    #
1001
    #   For each leaf (end point), walk backwards and mark each node with the
1117
    #   For each leaf (end point), walk backwards and mark each node with the
Line 1007... Line 1123...
1007
    #   be recalculated
1123
    #   be recalculated
1008
    #
1124
    #
1009
 
1125
 
1010
    Message ("Calculate Max Version");
1126
    Message ("Calculate Max Version");
1011
    my $maxVersion;
1127
    my $maxVersion;
1012
 
-
 
1013
    foreach my $entry ( @endPoints )
1128
    foreach my $entry ( @endPoints )
1014
    {
1129
    {
1015
        my $lastSuffix;
1130
        my $lastSuffix;
1016
        my $forceTip;
1131
        my $forceTip;
1017
        while ( $entry )
1132
        while ( $entry )
Line 1019... Line 1134...
1019
            if (!defined($lastSuffix) || ($versions{$entry}{suffix} ne $lastSuffix) )
1134
            if (!defined($lastSuffix) || ($versions{$entry}{suffix} ne $lastSuffix) )
1020
            {
1135
            {
1021
                $maxVersion = '0';
1136
                $maxVersion = '0';
1022
                $visitId++;
1137
                $visitId++;
1023
                $forceTip = ( exists $tipVersions{$versions{$entry}{vname}} );
1138
                $forceTip = ( exists $tipVersions{$versions{$entry}{vname}} );
-
 
1139
                $forceTip = 1 if $versions{$entry}{ukTrunk};
1024
                delete $tipVersions{$versions{$entry}{vname}};
1140
                delete $tipVersions{$versions{$entry}{vname}};
1025
                $maxVersion = '999.999.999.999.zzz' if ( $forceTip );
1141
                $maxVersion = '999.999.999.999.zzz' if ( $forceTip );
1026
                $lastSuffix = $versions{$entry}{suffix};
1142
                $lastSuffix = $versions{$entry}{suffix};
1027
#print "---Tip Found\n" if $forceTip;
1143
#print "---Tip Found\n" if $forceTip;
1028
            }
1144
            }
Line 1469... Line 1585...
1469
    #
1585
    #
1470
    #   If this version has any 'ripples' then process them while we have the
1586
    #   If this version has any 'ripples' then process them while we have the
1471
    #   main view. Note the ripple list may contain entries that do not
1587
    #   main view. Note the ripple list may contain entries that do not
1472
    #   exist - they will have been pruned.
1588
    #   exist - they will have been pruned.
1473
    #
1589
    #
-
 
1590
if(0) {
1474
    foreach my $rentry ( @{$versions{$entry}{rippleList}} )
1591
    foreach my $rentry ( @{$versions{$entry}{rippleList}} )
1475
    {
1592
    {
1476
        next unless( exists $versions{$rentry} );
1593
        next unless( exists $versions{$rentry} );
1477
 
1594
 
1478
        if ($versions{$rentry}{Processed})
1595
        if ($versions{$rentry}{Processed})
Line 1483... Line 1600...
1483
 
1600
 
1484
        Message ("Proccessing associated Ripple: " . GetVname($rentry));
1601
        Message ("Proccessing associated Ripple: " . GetVname($rentry));
1485
        newPackageVersion($rentry);
1602
        newPackageVersion($rentry);
1486
    }
1603
    }
1487
}
1604
}
-
 
1605
}
1488
 
1606
 
1489
#-------------------------------------------------------------------------------
1607
#-------------------------------------------------------------------------------
1490
# Function        : newPackageVersionBody
1608
# Function        : newPackageVersionBody
1491
#
1609
#
1492
# Description     : Perform the bulk of the work in creating a new PackageVersion
1610
# Description     : Perform the bulk of the work in creating a new PackageVersion
Line 1551... Line 1669...
1551
    $cc_path =~ tr~\\/~/~s;
1669
    $cc_path =~ tr~\\/~/~s;
1552
 
1670
 
1553
    #
1671
    #
1554
    #   Correct well known path mistakes
1672
    #   Correct well known path mistakes
1555
    #
1673
    #
-
 
1674
    $cc_path =~ s~/build.pl$~~i;
-
 
1675
    $cc_path =~ s~/src$~~i;
-
 
1676
    $cc_path =~ s~/MASS_Dev/Infra/~/MASS_Dev_Infra/~i;
-
 
1677
    $cc_path =~ s~/MASS_Dev/Tools/~/MASS_Dev_Tools/~i;
1556
    $cc_path =~ s~/MASS_Dev/Bus/~/MASS_Dev_Bus/~i;
1678
    $cc_path =~ s~/MASS_Dev/Bus/~/MASS_Dev_Bus/~i;
1557
    $cc_path =~ s~/MASS_Dev_Bus/Cbp/~/MASS_Dev_Bus/CBP/~i;
1679
    $cc_path =~ s~/MASS_Dev_Bus/Cbp/~/MASS_Dev_Bus/CBP/~i;
1558
    $cc_path =~ s~/MREF_Package/ergpostmongui$~/MREF_Package/ergpostmongui~i;
1680
    $cc_path =~ s~/MREF_Package/ergpostmongui$~/MREF_Package/ergpostmongui~i;
1559
    $cc_path =~ s~/MREF_21/MREF_Package/~/MREF_Package/~i;
1681
    $cc_path =~ s~/MREF_21/MREF_Package/~/MREF_Package/~i;
1560
 
1682
 
Line 1602... Line 1724...
1602
 
1724
 
1603
    #
1725
    #
1604
    #   Some really ugly packages make use of a Jats feature called 'SetProjectBase'
1726
    #   Some really ugly packages make use of a Jats feature called 'SetProjectBase'
1605
    #   Detect such packages as we will need to handle them differently
1727
    #   Detect such packages as we will need to handle them differently
1606
    #   Can't really handle it on the fly
1728
    #   Can't really handle it on the fly
1607
    #   All we can do is detct it and report it - at the moment
1729
    #   All we can do is detect it and report it - at the moment
1608
    #
1730
    #
1609
    if (detectProjectBaseUsage($data, $cc_path) )
1731
    if (detectProjectBaseUsage($data, $cc_path) )
1610
    {
1732
    {
1611
        unless ( $opt_ignoreProjectBaseErrors )
1733
        unless ( $opt_ignoreProjectBaseErrors )
1612
        {
1734
        {
1613
            $data->{BadProjectBase}++;
1735
            $data->{BadProjectBase}++;
1614
            $data->{errStr} = 'Bad usage of ProjectBase detected';
1736
            $data->{errStr} = 'Bad usage of ProjectBase detected';
-
 
1737
            return 4;           # Lets see what the others look like too
1615
            return 14;
1738
#            return 14;
1616
        }
1739
        }
1617
    }
1740
    }
1618
 
1741
 
1619
 
1742
 
1620
    #
1743
    #
Line 1738... Line 1861...
1738
    {
1861
    {
1739
        $data->{errStr} = 'Failed to determine Rm Reference';
1862
        $data->{errStr} = 'Failed to determine Rm Reference';
1740
        return 13;
1863
        return 13;
1741
    }
1864
    }
1742
 
1865
 
-
 
1866
######################## Deleted ###############################################
-
 
1867
#
1743
 
1868
#
1744
    #
1869
#    #
1745
    #   Add supplemental tags if this version is in a 'Release'
1870
#    #   Add supplemental tags if this version is in a 'Release'
1746
    #   But only for some packages - els looks like a mess
1871
#    #   But only for some packages - else looks like a mess
1747
    #   Just a solution for the ITSO guys
1872
#    #   Just a solution for the ITSO guys
1748
    #
1873
#    #
1749
    foreach my $rtag_id ( keys %{$versions{$entry}{Releases}}  )
1874
#    foreach my $rtag_id ( keys %{$versions{$entry}{Releases}}  )
1750
    {
1875
#    {
1751
        next unless ( $svnRepo =~ m~/ITSO_TRACS(/|$)~);
1876
#        next unless ( $svnRepo =~ m~/ITSO_TRACS(/|$)~);
1752
 
1877
#
1753
        my $prog_id = $versions{$entry}{Releases}{$rtag_id}{proj_id};
1878
#        my $prog_id = $versions{$entry}{Releases}{$rtag_id}{proj_id};
1754
        Message ("Adding Release Tag:$prog_id:$rtag_id");
1879
#        Message ("Adding Release Tag:$prog_id:$rtag_id");
1755
 
1880
#
1756
        my $rtext = 'Release_' . saneString($versions{$entry}{Releases}{$rtag_id}{rname});
1881
#        my $rtext = 'Release_' . saneString($versions{$entry}{Releases}{$rtag_id}{rname});
1757
        my @comment;
1882
#        my @comment;
1758
        push @comment, "Tagged by ClearCase to Subversion import";
1883
#        push @comment, "Tagged by ClearCase to Subversion import";
1759
        push @comment, "Project:$prog_id:$versions{$entry}{Releases}{$rtag_id}{pname}";
1884
#        push @comment, "Project:$prog_id:$versions{$entry}{Releases}{$rtag_id}{pname}";
1760
        push @comment, "Release:$rtag_id:$versions{$entry}{Releases}{$rtag_id}{rname}";
1885
#        push @comment, "Release:$rtag_id:$versions{$entry}{Releases}{$rtag_id}{rname}";
1761
 
1886
#
1762
        $data->{ReleaseTag}{$prog_id}{$rtag_id}{name} = $rtext;
1887
#        $data->{ReleaseTag}{$prog_id}{$rtag_id}{name} = $rtext;
1763
 
1888
#
1764
        $rv = JatsToolPrint ( 'jats_svnlabel' ,
1889
#        $rv = JatsToolPrint ( 'jats_svnlabel' ,
1765
                    '-comment', encode('UTF-8', join("\n", @comment), Encode::FB_DEFAULT),
1890
#                    '-comment', encode('UTF-8', join("\n", @comment), Encode::FB_DEFAULT),
1766
                    $data->{rmRef},
1891
#                    $data->{rmRef},
1767
                    '-clone',
1892
#                    '-clone',
1768
                    $rtext,
1893
#                    $rtext,
1769
#                    @args,
1894
##                    @args,
1770
                    '-author=buildadm',
1895
#                    '-author=buildadm',
1771
                     );
1896
#                     );
1772
        $data->{ReleaseTag}{$prog_id}{$rtag_id}{eState} = $rv;
1897
#        $data->{ReleaseTag}{$prog_id}{$rtag_id}{eState} = $rv;
1773
        $data->{ReleaseTag}{tCount}++;
1898
#        $data->{ReleaseTag}{tCount}++;
1774
 
1899
#
1775
        if ( $rv )
1900
#        if ( $rv )
1776
        {
1901
#        {
1777
            $data->{ReleaseTag}{eCount}++;
1902
#            $data->{ReleaseTag}{eCount}++;
1778
            Warning("Failed to add Release Tag: $rtext");
1903
#            Warning("Failed to add Release Tag: $rtext");
1779
        }
1904
#        }
1780
    }
1905
#    }
1781
 
1906
#
-
 
1907
######################## Deleted ###############################################
1782
 
1908
 
1783
    Message ("RM Ref: $data->{rmRef}");
1909
    Message ("RM Ref: $data->{rmRef}");
1784
    unlink $datafile;
1910
    unlink $datafile;
1785
 
1911
 
1786
    #
1912
    #
Line 2145... Line 2271...
2145
 
2271
 
2146
                if ( m~^SetProjectBase~ )
2272
                if ( m~^SetProjectBase~ )
2147
                {
2273
                {
2148
                    $definesProjectBase++;
2274
                    $definesProjectBase++;
2149
                    $data->{DefinesProjectBase}++;
2275
                    $data->{DefinesProjectBase}++;
2150
                    Warning ("Package uses SetProjectBase:",
2276
                    Warning ("Package initialises SetProjectBase:",
2151
                             "Line: " . $_,
2277
                             "Line: " . $_,
2152
                             "Root: " . "$data->{ViewRoot}",
2278
                             "Root: " . "$data->{ViewRoot}",
2153
                             "File: " . "$data->{ViewRoot}/$file",
2279
                             "File: " . "$data->{ViewRoot}/$file",
2154
                            );
2280
                            );
2155
 
2281
 
Line 2177... Line 2303...
2177
                        pop @bpaths;
2303
                        pop @bpaths;
2178
                    }
2304
                    }
2179
                    unless (defined $blevel)
2305
                    unless (defined $blevel)
2180
                    {
2306
                    {
2181
                        Warning ("SetProjectBase$eSuf calculation failed - can't find build.pl");
2307
                        Warning ("SetProjectBase$eSuf calculation failed - can't find build.pl");
2182
                        $retval = 1;
2308
#                        $retval = 1;
-
 
2309
                         $definitionError++;
2183
                    }
2310
                    }
2184
                    else
2311
                    else
2185
                    {
2312
                    {
2186
                        #
2313
                        #
2187
                        #   Determine the depth of the view root
2314
                        #   Determine the depth of the view root
Line 2786... Line 2913...
2786
    my ($tag) = @_;
2913
    my ($tag) = @_;
2787
    $tag =~ tr~\\/~/~;
2914
    $tag =~ tr~\\/~/~;
2788
    if ( $tag =~ m~^CC::~ )
2915
    if ( $tag =~ m~^CC::~ )
2789
    {
2916
    {
2790
        $tag =~ s~CC::\s+~CC::~;
2917
        $tag =~ s~CC::\s+~CC::~;
-
 
2918
        $tag =~ s~/build.pl::~::~i;
-
 
2919
        $tag =~ s~/src::~::~i;
2791
        $tag =~ s~MASS_Dev_Bus/Cbp/~MASS_Dev_Bus/CBP/~i;
2920
        $tag =~ s~MASS_Dev_Bus/Cbp/~MASS_Dev_Bus/CBP/~i;
2792
        $tag =~ s~MASS_Dev_Bus~MASS_Dev_Bus~i;
2921
        $tag =~ s~MASS_Dev_Bus~MASS_Dev_Bus~i;
2793
        $tag =~ s~/MASS_Dev/Infra~MASS_Dev_Infra~i;
2922
        $tag =~ s~/MASS_Dev/Infra~MASS_Dev_Infra~i;
2794
        $tag =~ s~/MASS_Dev/Bus/web~/MASS_Dev_Bus/web~i;
2923
        $tag =~ s~/MASS_Dev/Bus/web~/MASS_Dev_Bus/web~i;
2795
 
2924
 
Line 3089... Line 3218...
3089
#        $stateText .= ' M='. $versions{$entry}{maxVersion} if (exists $versions{$entry}{maxVersion});
3218
#        $stateText .= ' M='. $versions{$entry}{maxVersion} if (exists $versions{$entry}{maxVersion});
3090
 
3219
 
3091
        push @label, "(${stateText})" if ( $stateText );
3220
        push @label, "(${stateText})" if ( $stateText );
3092
 
3221
 
3093
##       Insert Release Names
3222
##       Insert Release Names
3094
#        foreach my $rtag_id ( keys %{$versions{$entry}{Releases}}  ) {
3223
        foreach my $rtag_id ( keys %{$versions{$entry}{Releases}}  ) {
-
 
3224
            next unless ( exists $ukHopsReleases{$rtag_id} );
3095
#            push @label, "Release: $versions{$entry}{Releases}{$rtag_id}{rname}";
3225
            push @label, "Release: $versions{$entry}{Releases}{$rtag_id}{rname}";
3096
#        }
3226
        }
3097
 
3227
 
3098
        return join ('\n', @label );
3228
        return join ('\n', @label );
3099
    }
3229
    }
3100
 
3230
 
3101
    sub genAttributes
3231
    sub genAttributes