1 /******************************************************************************\r
2 * FILE PURPOSE: Build configuration Script for the TCP3D Driver\r
3 ******************************************************************************\r
4 * FILE NAME: config.bld\r
5 *\r
6 * DESCRIPTION: \r
7 * This file contains the build configuration script for the TCP3D driver\r
8 * and is responsible for configuration of the paths for the various \r
9 * tools required to build the driver.\r
10 *\r
11 * Copyright (C) 2009, 2014 Texas Instruments, Inc.\r
12 *****************************************************************************/\r
13 \r
14 /* Set package attribute as ZIP or TAR */\r
15 Pkg.attrs.archiver = "tar";\r
16 \r
17 /* Get the Tools Base directory from the Environment Variable. */\r
18 var toolsBaseDir = java.lang.System.getenv("C6X_GEN_INSTALL_PATH");\r
19 \r
20 /* Get the base directory for the TCP3D Driver Package */\r
21 var tcp3dDriverPath = new java.io.File(".//").getPath();\r
22 \r
23 /* Get the extended debug flags */\r
24 var extDbgFlags = java.lang.System.getenv("EXTDBGFLAGS");\r
25 \r
26 var tcp3dDriverInstallType;\r
27 \r
28 /* Read the part number from the environment variable. */\r
29 var tcp3dPartNumber = java.lang.System.getenv("PARTNO");\r
30 \r
31 if(tcp3dPartNumber == null)\r
32 {\r
33 tcp3dPartNumber = "keystone2";\r
34 }\r
35 \r
36 /* Include Path */\r
37 var tcp3dIncludePath = " -i" + tcp3dDriverPath + "/src" + " -i" + tcp3dDriverPath + " -i" + tcp3dDriverPath + "/test";\r
38 \r
39 /* Configure the TCP3D Release Version Information */\r
40 /* We use the information from compatibility key. It require 3 steps: */ \r
41 /* remove SPACE and TAB, convert to string and split to make array */\r
42 var tcp3dDriverReleaseVersion = (""+Pkg.version.replace(/\s/g, "")).split(',');\r
43 \r
44 /* TCP3D Driver Coverity Analysis: Check the environment variable to determine if Static\r
45 * Analysis has to be done on the TCP3D Driver Code base or not? */\r
46 var tcp3dDriverCoverityAnalysis = java.lang.System.getenv("LLDCOV");\r
47 \r
48 /* C66 ELF compiler configuration for Little Endian Mode. */\r
49 var C66LE = xdc.useModule('ti.targets.elf.C66');\r
50 C66LE.rootDir = toolsBaseDir;\r
51 C66LE.ccOpts.prefix = "-mo -o3 -q -k -eo.o";\r
52 if(extDbgFlags)\r
53 C66LE.ccOpts.prefix = C66LE.ccOpts.prefix + " " + extDbgFlags; \r
54 \r
55 \r
56 /* List all the build targets here. */\r
57 Build.targets = [ C66LE ];\r
58 \r
59 /* Grab input from XDCARGS */\r
60 var buildArguments = [];\r
61 \r
62 /* Construct the build arguments */\r
63 for (var tmp=0; arguments[tmp] != undefined; tmp++)\r
64 {\r
65 \r
66 /* If no arguments are provided, override for building all */\r
67 if ( ( arguments.length == 1) && (arguments[tmp].equals("./config.bld")) )\r
68 buildArguments[buildArguments.length++] = "all";\r
69 else\r
70 buildArguments[buildArguments.length++] = arguments[tmp];\r
71 }\r
72 \r
73 var devices = [];\r
74 var devicesCCOpt = [];\r
75 \r
76 if ( ( buildArguments.indexOf("k2k") != -1 ) ||\r
77 ( buildArguments.indexOf("all") != -1 ) ) \r
78 {\r
79 print ("adding k2k to build");\r
80 devices.push("k2k/c66");\r
81 devicesCCOpt.push(" -DDEVICE_K2K");\r
82 }\r
83 \r
84 if ( ( buildArguments.indexOf("k2h") != -1 ) ||\r
85 ( buildArguments.indexOf("all") != -1 ) ) \r
86 {\r
87 print ("adding k2h to build");\r
88 devices.push("k2h/c66");\r
89 devicesCCOpt.push(" -DDEVICE_K2H");\r
90 }\r
91 \r
92 if ( ( buildArguments.indexOf("k2l") != -1 ) ||\r
93 ( buildArguments.indexOf("all") != -1 ) ) \r
94 {\r
95 print ("adding k2l to build");\r
96 devices.push("k2l/c66");\r
97 devicesCCOpt.push(" -DDEVICE_K2L");\r
98 }\r
99 \r
100 if ( ( buildArguments.indexOf("c6657") != -1 ) ||\r
101 ( buildArguments.indexOf("all") != -1 ) ) \r
102 {\r
103 print ("adding c6657 to build");\r
104 devices.push("c6657/c66");\r
105 devicesCCOpt.push(" -DSOC_C6657");\r
106 }\r
107 \r