Subversion Repositories DevTools

Rev

Rev 7299 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6133 dpurdie 1
###############################################################################
7300 dpurdie 2
# COPYRIGHT - VIX IP PTY LTD ("VIX"). ALL RIGHTS RESERVED.
6133 dpurdie 3
#
4
# File:         PLATFORM/CSHARP2015.cfg
5
#
6
# Contents:     CSHARP Build support
7
#
8
#               This package is used during the processing of the build.pl file
9
#               Values provided by this package are used to extend the Platform
10
#               information as platforms are being created. This provides a
11
#               powerful set of mechanism to extend the entire JATS toolset
12
#
13
###############################################################################
14
 
15
use strict;
16
use warnings;
17
 
18
package CSHARP2015_Build;
19
use JatsError;
20
 
21
#-------------------------------------------------------------------------------
22
# Function        : new_platform
23
#
24
# Description     : Called when a new platform is being created
25
#                   The function can extend the build information
26
#
27
#                   At the moment it simply removes the build from unsuitable
28
#                   machine types.
29
#
30
# Inputs          : $pInfo          - Reference to the platform build info hash
31
#
32
# Returns         : Nothing yet
33
#
34
 
35
sub new_platform
36
{
37
    my $class = shift;              # Not really a class, but its called like a class
38
    my $pInfo = shift;
39
 
40
    #
41
    #   Ignore this platform if there is no way that it can be built on the
42
    #   current machine.
43
    #
44
    unless ( PlatformConfig::targetHasTag( 'CSHARP2015', 'KNOWN' ) )
45
    {
46
        Verbose ("CSHARP2015 will not build on this machine type: $::GBE_MACHTYPE");
47
        $pInfo->{NOT_AVAILABLE} = 1;
48
        return;
49
    }
50
}
51
 
52
#-------------------------------------------------------------------------------
53
# Function        : add_platform
54
#
55
# Description     : This function is invoked just before a 'platform' is about
56
#                   to be added to the build system.
57
#
58
#                   This call is allowed to alter or extend the platform build
59
#                   information.
60
#
61
# Inputs          : $pInfo          - Reference to the platform build info hash
62
#
63
# Returns         : Nothing yet
64
#
65
sub add_platform
66
{
67
    my $class = shift;              # Not really a class, but its called like a class
68
    my $pInfo = shift;
69
 
70
    #   ALSO_USES
71
    #   An array of other platforms that may be 'used' by this platform.
72
    #   The process is not recursive
73
    #   Similar to the --Uses option in BuildPlatforms()
74
    #   Will be subject to product expansion.
75
    #
76
    #   Intended use: CSHARP2015 can use stuff from CSHARP and WIN32, but only if the
77
    #                 CSHARP2015 stuff is not available.
78
    $pInfo->{ALSO_USES} = ['VS2015',
79
                           'CSHARP2012', 'VS2012',
80
                           'CSHARP2010', 'VS2010',
81
                           'CSHARP2008', 'VS2008',
82
                           'CSHARP2005', 'VS2005' ,
83
                           'CSHARP'    , 'WIN32'];
84
 
85
    #
86
    #   EXT_SHARED
87
    #   Set to the value of the shared library extension
88
    #
89
    #   Intended Use
90
    #   Used to locate shared libraries in packgages for use in the
91
    #   generation set_<PLATFORM>.sh/.bat
92
    #
93
    #   If not set then the set_.sh files will no be created
94
    #
95
    $pInfo->{EXT_SHARED} = '.dll';
96
 
97
    #
98
    #   OS_COMMON
99
    #   Set the name of a directory to be used to package header files to be
100
    #   used on targets that share a common OS
101
    #
102
    #   Note: Should also be a part of EXTRA_USES
103
    #
104
    #   Intended Use
105
    #   Extend the operation of the PackageHdr directive to allow files
106
    #   common files to be packaged
107
    #
108
    $pInfo->{OS_COMMON} = 'WIN32';
109
}
110
 
111
1;
112