Build: Remove building for core1 platforms
[gstreamer-omap:sysbios-rpmsg.git] / src / config.bld
1 /*
2  * Copyright (c) 2011-2012, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * *  Redistributions of source code must retain the above copyright
10  *    notice, this list of conditions and the following disclaimer.
11  *
12  * *  Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  *
16  * *  Neither the name of Texas Instruments Incorporated nor the names of
17  *    its contributors may be used to endorse or promote products derived
18  *    from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 /*
33  *  ======== config.bld ========
34  *  Sample Build configuration script
35  */
36
37 /* Exported tools locations to supercede defaults */
38 var arm_cgtools_rootdir = java.lang.System.getenv("TMS470CGTOOLPATH");
39 var c6x_cgtools_rootdir = java.lang.System.getenv("C6000CGTOOLPATH");
40 var build_smp = java.lang.System.getenv("BUILD_SMP");
41
42 /* Setup for C64T target */
43 var C64T = xdc.useModule('ti.targets.elf.C64T');
44 C64T.rootDir = c6x_cgtools_rootdir;
45 C64T.ccOpts.suffix += " -mi10 -mo -pds=71";
46 C64T.lnkOpts.prefix += " -e=ti_sysbios_family_c64p_Hwi0";
47 /* Set default platform and list of all interested platforms for c64T */
48 C64T.platforms = [
49                     "ti.platform.omap4430.dsp",
50                     "ti.platform.omap54xx.dsp",
51                 ];
52 C64T.platform = C64T.platforms[0];
53
54 /* Setup for M3 and M4 targets. M4 targets are still built in M3 mode. */
55 var M3 = xdc.useModule('ti.targets.arm.elf.M3');
56 M3.rootDir = arm_cgtools_rootdir;
57 M3.ccOpts.suffix += " --embed_inline_assembly -ms -pds=71";
58 M3.lnkOpts.prefix += " --retain=.resource_table";
59 M3.lnkOpts.prefix += " --cinit_compression=off";
60
61 /* Default platforms for M3 in non-SMP mode */
62 var regPlatforms = [
63                         "ti.platform.omap4430.core0",
64                         "ti.platform.omap54xx.core0",
65                    ];
66
67 /* Default platforms for M3 in SMP mode */
68 var smpPlatforms = [
69                         "ti.platform.omap4430.ipu",
70                         "ti.platform.omap54xx.ipu",
71                    ];
72
73 /* Set default platform and list of all interested platforms for M3 */
74 if (build_smp == null || build_smp == "0") {
75     /* Helps boot times, plus unmasks issues w/ uninit'd vars */
76     M3.lnkOpts.prefix +=  " --zero_init=off";
77     M3.platforms = regPlatforms;
78 }
79 else {
80     M3.platforms = smpPlatforms;
81 }
82 M3.platform = M3.platforms[0];
83
84 if (c6x_cgtools_rootdir != null && c6x_cgtools_rootdir != "" &&
85     (build_smp == null || build_smp == "0")) {
86     Build.targets.$add(C64T);
87 }
88 if (arm_cgtools_rootdir != null && arm_cgtools_rootdir != "") {
89     Build.targets.$add(M3);
90 }
91
92 /* Eliminate profiles that aren't 'debug' or 'release' */
93 for (var t = 0; t < Build.targets.length; t++) {
94     for (prof in Build.targets[t].profiles) {
95         if ((prof != "debug") && (prof != "release")) {
96             delete Build.targets[t].profiles[prof];
97         }
98     }
99 }