device-dependent library updates for Yocto
[keystone-rtos/fault_mgmt.git] / src / Module.xs
index 4bc6c8d102de18518e585316f15a9505c378106a..f6fa5492567d62aaedc965b8109ff829d27015f0 100644 (file)
@@ -6,7 +6,7 @@
  * DESCRIPTION: 
  *  This file contains the module specification for the Fault Management source directory.
  *
- * Copyright (C) 2012-2014 Texas Instruments, Inc.
+ * Copyright (C) 2012-2015, Texas Instruments, Inc.
  *****************************************************************************/
 
 /* Load the library utility. */
@@ -27,23 +27,39 @@ var fault_mgmtLibFiles = [
  **************************************************************************/
 function modBuild() 
 {
-    /* Build the libraries for all the targets specified. */
-    for (var device=0; device < devices.length; device++) 
+    /* Build the device independent libraries for all the targets specified. */
+    for (var targets=0; targets < socs["all"].targets.length; targets++)
     {
-        /* Only build libraries within the specified SOC Family */
-        if (devicesSocFamily[device] == fault_mgmtlibSocFamily)
-        {
+        var targetFiles = rmlldFile.slice(); /* make copy */
+        var libOptions = {
+            copts: socs["all"].copts,
+            incs:  lldIncludePath, 
+        };
+        libUtility.buildLibrary ("", "false", libOptions, Pkg.name, socs["all"].targets[targets], targetFiles);
+    }
+
+    /* Build library targets for device dependent SoCs */
+    for (var soc=0; soc < soc_names.length; soc++) 
+    {
+        var dev = socs[soc_names[soc]];
+        
+        /* do not proceed if this SoC is not configured to be built */
+        if (dev.build == "false")
+           continue;
+
+        if (dev.socDevLib == "true")
+        { 
+            var targetFiles_soc = rmlldFile.slice(); /* make copy */
             /* Build the libraries for all the targets specified. */
-            for (var targets=0; targets < Build.targets.length; targets++)
+            for (var targets=0; targets < dev.targets.length; targets++)
             {
                 var libOptions = {
-                    copts: devicesCCOpt[device],
-                    incs: fault_mgmtlibIncludePath, 
+                    copts: dev.copts,
+                    incs:  lldIncludePath, 
                 };
-           
-                libUtility.buildLibrary (devices[device], libOptions, "ti.instrumentation.fault_mgmt", Build.targets[targets], fault_mgmtLibFiles);       
+                libUtility.buildLibrary (soc_names[soc], "true", libOptions, Pkg.name, dev.targets[targets], targetFiles_soc);
             }
-        }
+         }
     }
 
     /* Add all the .c files to the release package. */