Subversion Repositories DevTools

Rev

Rev 5716 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5716 Rev 6133
Line 17... Line 17...
17
 
17
 
18
package DEVLINUX_Build;
18
package DEVLINUX_Build;
19
use JatsError;
19
use JatsError;
20
use Storable qw(dclone);
20
use Storable qw(dclone);
21
 
21
 
22
#
-
 
23
#   Create a hash of GBE_MACHTYPEs for which the DEVLINUX platform is available
-
 
24
#   It won't just build on any old machine
-
 
25
#
-
 
26
#   Hash values are an array of:
-
 
27
#           Operating System
-
 
28
#           architecture
-
 
29
#
-
 
30
my %valid_machines = (
-
 
31
    'linux_i386'             => [ 'COBRA',
-
 
32
                                  'COBRA2',
-
 
33
                                  'ARM9TDMI',
-
 
34
#                                 'LINUX_EMU',		# Removed as there is no target for this code to run on
-
 
35
                                  'LINUX_ETX',
-
 
36
                                  'PPC_603E',
-
 
37
                                  'VIPER2',
-
 
38
                                  'UBUNTU12',
-
 
39
                                  'UBUNTU12_INSTRUMENT',
-
 
40
                                  'UBUNTU12C11',
-
 
41
                                  'UBUNTU12C11_INSTRUMENT',
-
 
42
                                  'SK20',
-
 
43
								  'SK20V41'
-
 
44
                                  ],
-
 
45
);
-
 
46
 
-
 
47
#-------------------------------------------------------------------------------
22
#-------------------------------------------------------------------------------
48
# Function        : new_platform
23
# Function        : new_platform
49
#
24
#
50
# Description     : Called when a new platform is being created
25
# Description     : Called when a new platform is being created
51
#                   The function can extend the build information
26
#                   The function can extend the build information
Line 62... Line 37...
62
{
37
{
63
    my $class = shift;              # Not really a class, but its called like a class
38
    my $class = shift;              # Not really a class, but its called like a class
64
    my $pInfo  = shift;
39
    my $pInfo  = shift;
65
 
40
 
66
    #
41
    #
-
 
42
    #   Get the list of targets that have been tagged as DEVLINUX
-
 
43
    #   
-
 
44
    my @targets = PlatformConfig::getTargetsByTag('DEVLINUX');
-
 
45
 
-
 
46
    #
67
    #   Ignore this platform if there is no way that it can be built on the
47
    #   Ignore this platform if there is no way that it can be built on the
68
    #   current machine.
48
    #   current machine.
69
    #
49
    #
70
    my $entry = $valid_machines{$::GBE_MACHTYPE};
-
 
71
    unless ( $entry )
50
    unless ( @targets )
72
    {
51
    {
73
        Verbose ("DEVLINUX will not build on this machine type: $::GBE_MACHTYPE");
52
        Verbose ("DEVLINUX will not build on this machine type: $::GBE_MACHTYPE");
74
        $pInfo->{NOT_AVAILABLE} = 1;
53
        $pInfo->{NOT_AVAILABLE} = 1;
75
        return;
54
        return;
76
    }
55
    }
77
 
56
 
78
    #
57
    #
79
    #   Instantiate all targets
58
    #   Instantiate all targets
80
    #
59
    #
81
    foreach my $target ( @$entry )
60
    foreach my $target ( @targets )
82
    {
61
    {
83
        DEVLINUX_generic(  dclone($pInfo), $target );
62
        DEVLINUX_generic(  dclone($pInfo), $target );
84
    }
63
    }
85
 
64
 
86
    #
65
    #