]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/pdk.git/blob - packages/ti/osal/package.xs
diag: sdr/sdtf_test: Fix typo error
[processor-sdk/pdk.git] / packages / ti / osal / package.xs
1 /*\r
2  *  ======== package.xs ========\r
3  *\r
4  */\r
5 \r
6 \r
7 /*\r
8  *  ======== Package.getLibs ========\r
9  *  This function is called when a program's configuration files are\r
10  *  being generated and it returns the name of a library appropriate\r
11  *  for the program's configuration.\r
12  */\r
13 \r
14 function getLibs(prog)\r
15 {\r
16     var suffix = prog.build.target.suffix;\r
17 \r
18     var name = this.$name + ".a" + suffix;\r
19         \r
20     var soc  = this.Settings.socType;   \r
21     \r
22     var osType = this.Settings.osType;\r
23         \r
24     soc = soc.toLowerCase();\r
25     osType = osType.toLowerCase();\r
26         \r
27     /* Read LIBDIR variable */\r
28     var lib = java.lang.System.getenv("LIBDIR");\r
29 \r
30     /* If NULL, default to "lib" folder */\r
31     if (lib == null)\r
32     {\r
33         lib = "./lib";\r
34     } else {\r
35         print ("\tSystem environment LIBDIR variable defined : " + lib);\r
36     }\r
37 \r
38         /* Get the Soc layer for bare metal case */\r
39     if (osType.equals("tirtos")) \r
40     {\r
41         lib = lib + "/" + osType;\r
42         if (!soc)\r
43         {\r
44             \r
45         }\r
46         else if (soc.substring(0, 2) == "am")\r
47         {\r
48 \r
49           if( soc.substring(0, 3) != "am6") \r
50           {\r
51 \r
52             /* replace the last charecter in soc to x */\r
53             soc = soc.substring(0, soc.length - 1);\r
54             soc = soc.concat("x");\r
55           }\r
56           lib = lib + "/" + soc;\r
57         }\r
58         else \r
59         {\r
60             lib = lib + "/" + soc;\r
61         }\r
62     }\r
63         \r
64         /* Get the Soc layer for bare metal case */\r
65     if (osType.equals("nonos")) \r
66     {\r
67         lib = lib + "/" + osType;\r
68         if (!soc)\r
69         {\r
70              throw new Error ("Soc is not defined");\r
71         }\r
72         else if (soc.substring(0, 2) == "am")\r
73         {\r
74             /* replace the last charecter in soc to x */\r
75             soc = soc.substring(0, soc.length - 1);\r
76             soc = soc.concat("x");\r
77             lib = lib + "/" + soc;\r
78         }\r
79         else \r
80         {\r
81             lib = lib + "/" + soc;\r
82         }\r
83     }\r
84 \r
85     /* Get target folder, if applicable */\r
86     if ( java.lang.String(suffix).contains('66') )\r
87         lib = lib + "/c66";\r
88     else if (java.lang.String(suffix).contains('a15') )\r
89         lib = lib + "/a15";\r
90     else if (java.lang.String(suffix).contains('m4') )\r
91         lib = lib + "/m4";\r
92     else if (java.lang.String(suffix).contains('a9') )\r
93         lib = lib + "/a9";\r
94     else if (java.lang.String(suffix).contains('674') )\r
95         lib = lib + "/c674";\r
96     else if (java.lang.String(suffix).contains('e9') )\r
97         lib = lib + "/arm9";\r
98     else if (java.lang.String(suffix).contains('a8') )\r
99         lib = lib + "/a8";  \r
100     else if (java.lang.String(suffix).contains('a53'))\r
101         lib = lib + "/a53";\r
102     else if (java.lang.String(suffix).contains('r5f'))\r
103         lib = lib + "/r5f";\r
104     else\r
105         throw new Error("\tUnknown target for: " + this.packageBase + lib);\r
106 \r
107     var libProfiles = ["debug", "release"];\r
108     /* get the configured library profile */\r
109     for each(var profile in libProfiles)\r
110     {\r
111         if (this.Settings.libProfile.equals(profile))\r
112         {\r
113             lib = lib + "/" + profile;\r
114             break;\r
115         }\r
116     }   \r
117 \r
118     /* Get library name with path */\r
119     lib = lib + "/" + name;\r
120     if (java.io.File(this.packageBase + lib).exists()) {\r
121        print ("\tLinking with library " + this.$name + ":" + lib);\r
122        return lib;\r
123     }\r
124 \r
125     /* Could not find any library, throw exception */\r
126     throw new Error("\tLibrary not found: " + this.packageBase + lib);\r
127 }\r
128 \r
129 function init() {\r
130     xdc.loadPackage("ti.csl");\r
131     xdc.loadPackage("ti.sysbios");\r
132 }\r
133 \r
134 /*\r
135  *  ======== package.close ========\r
136  */\r
137 function close()\r
138 {    \r
139     if (xdc.om.$name != 'cfg') {\r
140         return;\r
141     }\r
142 }\r