]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - ipc/ipcdev.git/blobdiff - packages/ti/sdo/ipc/Build.xs
Build.xs: remove unused utilsSources
[ipc/ipcdev.git] / packages / ti / sdo / ipc / Build.xs
index 9272ab40db53dc3e811c8364dc1817e37aa18259..64a9428fc9ec56618dee5cbe473d5cc585badfda 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013-2014 Texas Instruments Incorporated - http://www.ti.com
+ * Copyright (c) 2013-2018 Texas Instruments Incorporated - http://www.ti.com
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -38,8 +38,7 @@ var BIOS = null;
 var Build = null;
 var Ipc = null;
 
-var custom28xOpts = " -q -mo ";
-var custom6xOpts = " -q -mi10 -mo -pdr -pden -pds=238 -pds=880 -pds1110 ";
+var custom6xOpts = " -q -mi10 -mo -pdr -pden -pds=238 -pds=880 -pds1110 --mem_model:const=data --mem_model:data=far ";
 var customARP32xOpts = " -q --gen_func_subsections ";
 var customArmOpts = " -q -ms --opt_for_speed=2 ";
 var customGnuArmM3Opts = " ";
@@ -48,10 +47,9 @@ var customGnuArmM4FOpts = " ";
 var customGnuArmA9Opts = " ";
 var customGnuArmA8Opts = " ";
 var customGnuArmA15Opts = " ";
+var customGnuArmA53Opts = " ";
 
 var ccOptsList = {
-    "ti.targets.C28_large"                      : custom28xOpts,
-    "ti.targets.C28_float"                      : custom28xOpts,
     "ti.targets.C64P"                           : custom6xOpts,
     "ti.targets.elf.C64P"                       : custom6xOpts,
     "ti.targets.C64P_big_endian"                : custom6xOpts,
@@ -70,12 +68,58 @@ var ccOptsList = {
     "ti.targets.arm.elf.M3"                     : customArmOpts,
     "ti.targets.arm.elf.M4"                     : customArmOpts,
     "ti.targets.arm.elf.M4F"                    : customArmOpts,
+    "ti.targets.arm.elf.R5F"                    : customArmOpts,
     "gnu.targets.arm.M3"                        : customGnuArmM3Opts,
     "gnu.targets.arm.M4"                        : customGnuArmM4Opts,
     "gnu.targets.arm.M4F"                       : customGnuArmM4FOpts,
     "gnu.targets.arm.A8F"                       : customGnuArmA8Opts,
     "gnu.targets.arm.A9F"                       : customGnuArmA9Opts,
     "gnu.targets.arm.A15F"                      : customGnuArmA15Opts,
+    "gnu.targets.arm.A53F"                      : customGnuArmA53Opts,
+};
+
+var ipcPackages = [
+    "ti.sdo.ipc",
+    "ti.sdo.ipc.family.omap4430",
+    "ti.sdo.ipc.family.omap3530",
+    "ti.sdo.ipc.family.da830",
+    "ti.sdo.ipc.family.dm6446",
+    "ti.sdo.ipc.family.ti81xx",
+    "ti.sdo.ipc.family.arctic",
+    "ti.sdo.ipc.family.c647x",
+    "ti.sdo.ipc.family.c6a8149",
+    "ti.sdo.ipc.family.tci663x",
+    "ti.sdo.ipc.family.tda3xx",
+    "ti.sdo.ipc.family.vayu",
+    "ti.sdo.ipc.family.am65xx",
+    "ti.sdo.ipc.gates",
+    "ti.sdo.ipc.heaps",
+    "ti.sdo.ipc.notifyDrivers",
+    "ti.sdo.ipc.nsremote",
+    "ti.sdo.ipc.transports",
+    "ti.sdo.utils",
+    "ti.ipc.family.tci6614",
+    "ti.ipc.family.tci6638",
+    "ti.ipc.family.vayu",
+    "ti.ipc.family.am65xx",
+    "ti.ipc.namesrv",
+    "ti.ipc.remoteproc",
+    "ti.ipc.transports"
+];
+
+var cFiles = {
+    "ti.ipc.ipcmgr" : {
+        cSources: [ "IpcMgr.c" ]
+    },
+    "ti.ipc.family.vayu" : {
+        cSources: [ "VirtQueue.c" ]
+    },
+    "ti.ipc.family.am65xx" : {
+        cSources: [ "VirtQueue.c" ]
+    },
+    "ti.ipc.rpmsg" : {
+        cSources: [ "NameMap.c", "RPMessage.c" ]
+    }
 };
 
 /*
@@ -105,6 +149,10 @@ function module$meta$init()
      * User can override this in their cfg file.
      */
     Build.customCCOpts = Build.getDefaultCustomCCOpts();
+
+    /* needed by IPackage.close() method */
+    Build.$private.ipcPkgs = ipcPackages;
+    Build.$private.cFiles = cFiles;
 }
 
 /*
@@ -308,7 +356,15 @@ function module$validate()
  */
 function getCCOpts(target)
 {
-    return(Build.customCCOpts);
+    var ccOpts = "";
+
+    if (target.$name.match(/^ti\.targets\./)) {
+        if (("ti.ipc.rpmsg" in xdc.om) || ("ti.ipc.transports" in xdc.om)) {
+            ccOpts += " --gcc";
+        }
+    }
+
+    return (Build.customCCOpts + ccOpts);
 }
 
 /*
@@ -334,42 +390,40 @@ function getEnumString(enumProperty)
 /*
  * Add pre-built Instrumented and Non-Intrumented release libs
  */
-var ipcSources  =  "ipc/GateMP.c " +
-                   "ipc/ListMP.c " +
-                   "ipc/SharedRegion.c " +
-                   "ipc/MessageQ.c " +
-                   "ipc/Notify.c ";
-
-var gatesSources = "ipc/gates/GatePeterson.c " +
-                   "ipc/gates/GatePetersonN.c " +
-                   "ipc/gates/GateMPSupportNull.c ";
-
-var heapsSources = "ipc/heaps/HeapBufMP.c " +
-                   "ipc/heaps/HeapMemMP.c " +
-                   "ipc/heaps/HeapMultiBufMP.c ";
+var ipcSources  =  "ti/sdo/ipc/GateMP.c " +
+                   "ti/sdo/ipc/ListMP.c " +
+                   "ti/sdo/ipc/SharedRegion.c " +
+                   "ti/sdo/ipc/MessageQ.c " +
+                   "ti/sdo/ipc/Ipc.c " +
+                   "ti/sdo/ipc/Notify.c " +
+                   "ti/ipc/namesrv/NameServerRemoteRpmsg.c " +
+                   "ti/ipc/remoteproc/Resource.c ";
+
+var gatesSources = "ti/sdo/ipc/gates/GatePeterson.c " +
+                   "ti/sdo/ipc/gates/GatePetersonN.c " +
+                   "ti/sdo/ipc/gates/GateMPSupportNull.c ";
+
+var heapsSources = "ti/sdo/ipc/heaps/HeapBufMP.c " +
+                   "ti/sdo/ipc/heaps/HeapMemMP.c " +
+                   "ti/sdo/ipc/heaps/HeapMultiBufMP.c ";
 
 var notifyDriverSources =
-                   "ipc/notifyDrivers/NotifyDriverCirc.c " +
-                   "ipc/notifyDrivers/NotifySetupNull.c " +
-                   "ipc/notifyDrivers/NotifyDriverShm.c ";
+                   "ti/sdo/ipc/notifyDrivers/NotifyDriverCirc.c " +
+                   "ti/sdo/ipc/notifyDrivers/NotifySetupNull.c " +
+                   "ti/sdo/ipc/notifyDrivers/NotifyDriverShm.c ";
 
 var nsremoteSources =
-                   "ipc/nsremote/NameServerRemoteNotify.c " +
-                   "ipc/nsremote/NameServerMessageQ.c ";
+                   "ti/sdo/ipc/nsremote/NameServerRemoteNotify.c " +
+                   "ti/sdo/ipc/nsremote/NameServerMessageQ.c ";
 
 var transportsSources =
-                   "ipc/transports/TransportShm.c " +
-                   "ipc/transports/TransportShmCircSetup.c " +
-                   "ipc/transports/TransportShmNotifySetup.c " +
-                   "ipc/transports/TransportShmCirc.c " +
-                   "ipc/transports/TransportShmNotify.c " +
-                   "ipc/transports/TransportShmSetup.c " +
-                   "ipc/transports/TransportNullSetup.c " ;
-
-var utilsSources = "utils/MultiProc.c " +
-                   "utils/List.c " +
-                   "utils/NameServerRemoteNull.c " +
-                   "utils/NameServer.c ";
+                   "ti/sdo/ipc/transports/TransportShm.c " +
+                   "ti/sdo/ipc/transports/TransportShmCircSetup.c " +
+                   "ti/sdo/ipc/transports/TransportShmNotifySetup.c " +
+                   "ti/sdo/ipc/transports/TransportShmCirc.c " +
+                   "ti/sdo/ipc/transports/TransportShmNotify.c " +
+                   "ti/sdo/ipc/transports/TransportShmSetup.c " +
+                   "ti/sdo/ipc/transports/TransportNullSetup.c " ;
 
 var commonSources = ipcSources +
                     gatesSources +
@@ -377,161 +431,168 @@ var commonSources = ipcSources +
                     notifyDriverSources +
                     nsremoteSources +
                     transportsSources;
-//                  utilsSources;
-
-var C64PSources  = "ipc/gates/GateAAMonitor.c " +
-                   "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/gates/GateHWSem.c " +
-                   "ipc/family/dm6446/NotifySetup.c " +
-                   "ipc/family/dm6446/NotifyCircSetup.c " +
-                   "ipc/family/dm6446/InterruptDsp.c " +
-                   "ipc/family/omap3530/NotifySetup.c " +
-                   "ipc/family/omap3530/NotifyCircSetup.c " +
-                   "ipc/family/omap3530/InterruptDsp.c ";
-
-var C66Sources   = "ipc/gates/GateHWSem.c " +
-                   "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/tci663x/Interrupt.c " +
-                   "ipc/family/tci663x/MultiProcSetup.c " +
-                   "ipc/family/tci663x/NotifyCircSetup.c " +
-                   "ipc/family/tci663x/NotifySetup.c " +
-                   "ipc/family/vayu/InterruptDsp.c " +
-                   "ipc/family/vayu/NotifyDriverMbx.c " +
-                   "ipc/family/vayu/NotifySetup.c " +
-                   "ipc/family/tda3xx/InterruptDsp.c " +
-                   "ipc/family/tda3xx/NotifyDriverMbx.c " +
-                   "ipc/family/tda3xx/NotifySetup.c ";
-
-var C674Sources  = "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/da830/NotifySetup.c " +
-                   "ipc/family/da830/NotifyCircSetup.c " +
-                   "ipc/family/da830/InterruptDsp.c " +
-                   "ipc/family/arctic/NotifySetup.c " +
-                   "ipc/family/arctic/NotifyCircSetup.c " +
-                   "ipc/family/arctic/InterruptDsp.c " +
-                   "ipc/family/ti81xx/NotifySetup.c " +
-                   "ipc/family/ti81xx/NotifyCircSetup.c " +
-                   "ipc/family/ti81xx/InterruptDsp.c " +
-                   "ipc/family/ti81xx/NotifyMbxSetup.c " +
-                   "ipc/family/ti81xx/NotifyDriverMbx.c " +
-                   "ipc/family/c6a8149/NotifySetup.c " +
-                   "ipc/family/c6a8149/NotifyCircSetup.c " +
-                   "ipc/family/c6a8149/InterruptDsp.c " +
-                   "ipc/family/c6a8149/NotifyMbxSetup.c " +
-                   "ipc/family/c6a8149/NotifyDriverMbx.c ";
-
-var C647xSources = "ipc/family/c647x/Interrupt.c " +
-                   "ipc/family/c647x/NotifyCircSetup.c " +
-                   "ipc/family/c647x/MultiProcSetup.c " +
-                   "ipc/family/c647x/NotifySetup.c ";
-
-var C64TSources  = "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/omap4430/NotifyCircSetup.c " +
-                   "ipc/family/omap4430/NotifySetup.c " +
-                   "ipc/family/omap4430/InterruptDsp.c ";
-
-var C28Sources   = "ipc/family/f28m35x/NotifyDriverCirc.c " +
-                   "ipc/family/f28m35x/IpcMgr.c " +
-                   "ipc/family/f28m35x/TransportCirc.c " +
-                   "ipc/family/f28m35x/NameServerBlock.c " +
-                   "ipc/family/f2837x/NotifyDriverCirc.c " +
-                   "ipc/family/f2837x/IpcMgr.c " +
-                   "ipc/family/f2837x/TransportCirc.c " +
-                   "ipc/family/f2837x/NameServerBlock.c ";
-
-var M3Sources    = "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/omap4430/NotifySetup.c " +
-                   "ipc/family/omap4430/NotifyCircSetup.c " +
-                   "ipc/family/omap4430/InterruptDucati.c " +
-                   "ipc/family/ti81xx/NotifySetup.c " +
-                   "ipc/family/ti81xx/NotifyCircSetup.c " +
-                   "ipc/family/ti81xx/InterruptDucati.c " +
-                   "ipc/family/ti81xx/NotifyMbxSetup.c " +
-                   "ipc/family/ti81xx/NotifyDriverMbx.c " +
-                   "ipc/family/c6a8149/NotifySetup.c " +
-                   "ipc/family/c6a8149/NotifyCircSetup.c " +
-                   "ipc/family/c6a8149/InterruptDucati.c " +
-                   "ipc/family/c6a8149/NotifyMbxSetup.c " +
-                   "ipc/family/c6a8149/NotifyDriverMbx.c " +
-                   "ipc/family/f28m35x/IpcMgr.c " +
-                   "ipc/family/f28m35x/NotifyDriverCirc.c " +
-                   "ipc/family/f28m35x/TransportCirc.c " +
-                   "ipc/family/f28m35x/NameServerBlock.c " +
-                   "ipc/family/vayu/InterruptIpu.c " +
-                   "ipc/family/vayu/NotifyDriverMbx.c " +
-                   "ipc/family/vayu/NotifySetup.c " +
-                   "ipc/family/tda3xx/InterruptIpu.c " +
-                   "ipc/family/tda3xx/NotifyDriverMbx.c " +
-                   "ipc/family/tda3xx/NotifySetup.c ";
-
-var M4Sources    = "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/vayu/InterruptIpu.c " +
-                   "ipc/family/vayu/NotifyDriverMbx.c " +
-                   "ipc/family/vayu/NotifySetup.c " +
-                   "ipc/family/tda3xx/InterruptIpu.c " +
-                   "ipc/family/tda3xx/NotifyDriverMbx.c " +
-                   "ipc/family/tda3xx/NotifySetup.c ";
-
-var Arm9Sources  = "ipc/family/dm6446/NotifySetup.c " +
-                   "ipc/family/dm6446/NotifyCircSetup.c " +
-                   "ipc/family/dm6446/InterruptArm.c " +
-                   "ipc/family/da830/NotifySetup.c " +
-                   "ipc/family/da830/NotifyCircSetup.c " +
-                   "ipc/family/da830/InterruptArm.c ";
-
-var A8FSources   = "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/ti81xx/NotifySetup.c " +
-                   "ipc/family/ti81xx/NotifyCircSetup.c " +
-                   "ipc/family/ti81xx/InterruptHost.c " +
-                   "ipc/family/ti81xx/NotifyMbxSetup.c " +
-                   "ipc/family/ti81xx/NotifyDriverMbx.c " +
-                   "ipc/family/c6a8149/NotifySetup.c " +
-                   "ipc/family/c6a8149/NotifyCircSetup.c " +
-                   "ipc/family/c6a8149/InterruptHost.c " +
-                   "ipc/family/c6a8149/NotifyMbxSetup.c " +
-                   "ipc/family/c6a8149/NotifyDriverMbx.c " +
-                   "ipc/family/omap3530/NotifySetup.c " +
-                   "ipc/family/omap3530/NotifyCircSetup.c " +
-                   "ipc/family/omap3530/InterruptHost.c ";
-
-var A8gSources  = "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/ti81xx/NotifySetup.c " +
-                   "ipc/family/ti81xx/NotifyCircSetup.c " +
-                   "ipc/family/ti81xx/InterruptHost.c " +
-                   "ipc/family/ti81xx/NotifyMbxSetup.c " +
-                   "ipc/family/ti81xx/NotifyDriverMbx.c " +
-                   "ipc/family/c6a8149/NotifySetup.c " +
-                   "ipc/family/c6a8149/NotifyCircSetup.c " +
-                   "ipc/family/c6a8149/InterruptHost.c " +
-                   "ipc/family/c6a8149/NotifyMbxSetup.c " +
-                   "ipc/family/c6a8149/NotifyDriverMbx.c " +
-                   "ipc/family/omap3530/NotifySetup.c " +
-                   "ipc/family/omap3530/NotifyCircSetup.c " +
-                   "ipc/family/omap3530/InterruptHost.c ";
-
-var A15gSources  = "ipc/family/vayu/InterruptHost.c " +
-                   "ipc/family/vayu/NotifyDriverMbx.c " +
-                   "ipc/family/vayu/NotifySetup.c " +
-                   "ipc/gates/GateHWSpinlock.c ";
-
-var ARP32Sources = "ipc/gates/GateHWSpinlock.c " +
-                   "ipc/family/arctic/NotifySetup.c " +
-                   "ipc/family/arctic/NotifyCircSetup.c " +
-                   "ipc/family/arctic/InterruptArp32.c " +
-                   "ipc/family/c6a8149/NotifySetup.c " +
-                   "ipc/family/c6a8149/NotifyCircSetup.c " +
-                   "ipc/family/c6a8149/InterruptEve.c " +
-                   "ipc/family/vayu/InterruptArp32.c " +
-                   "ipc/family/vayu/NotifyDriverMbx.c " +
-                   "ipc/family/vayu/NotifySetup.c " +
-                   "ipc/family/tda3xx/InterruptArp32.c " +
-                   "ipc/family/tda3xx/NotifyDriverMbx.c " +
-                   "ipc/family/tda3xx/NotifySetup.c ";
 
-var cList = {
-    "ti.targets.C28_large"              : commonSources + C28Sources,
-    "ti.targets.C28_float"              : commonSources + C28Sources,
+var C64PSources  = "ti/sdo/ipc/gates/GateAAMonitor.c " +
+                   "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/gates/GateHWSem.c " +
+                   "ti/sdo/ipc/family/dm6446/NotifySetup.c " +
+                   "ti/sdo/ipc/family/dm6446/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/dm6446/InterruptDsp.c " +
+                   "ti/sdo/ipc/family/omap3530/NotifySetup.c " +
+                   "ti/sdo/ipc/family/omap3530/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/omap3530/InterruptDsp.c ";
+
+var C66Sources   = "ti/sdo/ipc/gates/GateHWSem.c " +
+                   "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/tci663x/Interrupt.c " +
+                   "ti/sdo/ipc/family/tci663x/MultiProcSetup.c " +
+                   "ti/sdo/ipc/family/tci663x/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/tci663x/NotifySetup.c " +
+                   "ti/sdo/ipc/family/vayu/InterruptDsp.c " +
+                   "ti/sdo/ipc/family/vayu/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/vayu/NotifySetup.c " +
+                   "ti/sdo/ipc/family/tda3xx/InterruptDsp.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifySetup.c " +
+                   "ti/ipc/family/tci6614/Interrupt.c " +
+                   "ti/ipc/family/tci6614/VirtQueue.c " +
+                   "ti/ipc/family/tci6614/NotifySetup.c " +
+                   "ti/ipc/family/tci6638/VirtQueue.c " +
+                   "ti/ipc/family/vayu/VirtQueue.c ";
+
+var C674Sources  = "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/da830/NotifySetup.c " +
+                   "ti/sdo/ipc/family/da830/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/da830/InterruptDsp.c " +
+                   "ti/sdo/ipc/family/arctic/NotifySetup.c " +
+                   "ti/sdo/ipc/family/arctic/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/arctic/InterruptDsp.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifySetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/InterruptDsp.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifySetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/InterruptDsp.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyDriverMbx.c ";
+
+var C647xSources = "ti/sdo/ipc/family/c647x/Interrupt.c " +
+                   "ti/sdo/ipc/family/c647x/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/c647x/MultiProcSetup.c " +
+                   "ti/sdo/ipc/family/c647x/NotifySetup.c ";
+
+var C64TSources  = "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/omap4430/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/omap4430/NotifySetup.c " +
+                   "ti/sdo/ipc/family/omap4430/InterruptDsp.c ";
+
+var M3Sources    = "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/omap4430/NotifySetup.c " +
+                   "ti/sdo/ipc/family/omap4430/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/omap4430/InterruptDucati.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifySetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/InterruptDucati.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifySetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/InterruptDucati.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/vayu/InterruptIpu.c " +
+                   "ti/sdo/ipc/family/vayu/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/vayu/NotifySetup.c " +
+                   "ti/sdo/ipc/family/tda3xx/InterruptIpu.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifySetup.c " +
+                   "ti/ipc/family/vayu/VirtQueue.c ";
+
+var M4Sources    = "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/vayu/InterruptIpu.c " +
+                   "ti/sdo/ipc/family/vayu/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/vayu/NotifySetup.c " +
+                   "ti/sdo/ipc/family/tda3xx/InterruptIpu.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifySetup.c " +
+                   "ti/ipc/family/vayu/VirtQueue.c ";
+
+var Arm9Sources  = "ti/sdo/ipc/family/dm6446/NotifySetup.c " +
+                   "ti/sdo/ipc/family/dm6446/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/dm6446/InterruptArm.c " +
+                   "ti/sdo/ipc/family/da830/NotifySetup.c " +
+                   "ti/sdo/ipc/family/da830/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/da830/InterruptArm.c ";
+
+var A8FSources   = "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifySetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/InterruptHost.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifySetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/InterruptHost.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/omap3530/NotifySetup.c " +
+                   "ti/sdo/ipc/family/omap3530/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/omap3530/InterruptHost.c ";
+
+var A8gSources  =  "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifySetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/InterruptHost.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/ti81xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifySetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/InterruptHost.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyMbxSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/omap3530/NotifySetup.c " +
+                   "ti/sdo/ipc/family/omap3530/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/omap3530/InterruptHost.c ";
+
+var A15gSources  = "ti/sdo/ipc/family/vayu/InterruptHost.c " +
+                   "ti/sdo/ipc/family/vayu/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/vayu/NotifySetup.c " +
+                   "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/gates/GateHWSem.c " +
+                   "ti/sdo/ipc/family/tci663x/Interrupt.c " +
+                   "ti/sdo/ipc/family/tci663x/MultiProcSetup.c " +
+                   "ti/sdo/ipc/family/tci663x/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/tci663x/NotifySetup.c ";
+
+var ARP32Sources = "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/arctic/NotifySetup.c " +
+                   "ti/sdo/ipc/family/arctic/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/arctic/InterruptArp32.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifySetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/NotifyCircSetup.c " +
+                   "ti/sdo/ipc/family/c6a8149/InterruptEve.c " +
+                   "ti/sdo/ipc/family/vayu/InterruptArp32.c " +
+                   "ti/sdo/ipc/family/vayu/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/vayu/NotifySetup.c " +
+                   "ti/sdo/ipc/family/tda3xx/InterruptArp32.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/tda3xx/NotifySetup.c ";
+
+var A53FSources  = "ti/sdo/ipc/family/am65xx/InterruptHost.c " +
+                   "ti/sdo/ipc/family/am65xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/am65xx/NotifySetup.c " +
+                   "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/gates/GateHWSem.c ";
+
+var R5FSources    = "ti/sdo/ipc/gates/GateHWSpinlock.c " +
+                   "ti/sdo/ipc/family/am65xx/InterruptR5f.c " +
+                   "ti/sdo/ipc/family/am65xx/NotifyDriverMbx.c " +
+                   "ti/sdo/ipc/family/am65xx/NotifySetup.c " +
+                   "ti/ipc/family/am65xx/VirtQueue.c ";
 
+var cList = {
     "ti.targets.C64P"                   : commonSources + C647xSources +
                                                 C64PSources,
     "ti.targets.C64P_big_endian"        : commonSources + C647xSources +
@@ -558,50 +619,24 @@ var cList = {
     "ti.targets.arm.elf.M3"             : commonSources + M3Sources,
     "ti.targets.arm.elf.M4"             : commonSources + M4Sources,
     "ti.targets.arm.elf.M4F"            : commonSources + M4Sources,
+    "ti.targets.arm.elf.R5F"            : commonSources + R5FSources,
 
     "gnu.targets.arm.A15F"              : commonSources + A15gSources,
     "gnu.targets.arm.A8F"               : commonSources + A8gSources,
     "gnu.targets.arm.M3"                : commonSources + M3Sources,
     "gnu.targets.arm.M4"                : commonSources + M4Sources,
     "gnu.targets.arm.M4F"               : commonSources + M4Sources,
+    "gnu.targets.arm.A53F"              : commonSources + A53FSources,
 };
 
-var cFiles = { };
-
-var ipcPackages = [
-    "ti.sdo.ipc",
-    "ti.sdo.ipc.family.omap4430",
-    "ti.sdo.ipc.family.omap3530",
-    "ti.sdo.ipc.family.da830",
-    "ti.sdo.ipc.family.dm6446",
-    "ti.sdo.ipc.family.ti81xx",
-    "ti.sdo.ipc.family.arctic",
-    "ti.sdo.ipc.family.f28m35x",
-    "ti.sdo.ipc.family.f2837x",
-    "ti.sdo.ipc.family.c647x",
-    "ti.sdo.ipc.family.c6a8149",
-    "ti.sdo.ipc.family.tci663x",
-    "ti.sdo.ipc.family.tda3xx",
-    "ti.sdo.ipc.family.vayu",
-    "ti.sdo.ipc.gates",
-    "ti.sdo.ipc.heaps",
-    "ti.sdo.ipc.notifyDrivers",
-    "ti.sdo.ipc.nsremote",
-    "ti.sdo.ipc.transports",
-    "ti.sdo.utils",
-];
-
 var asmListNone = [
 ];
 
 var asmList64P = [
-    "ipc/gates/GateAAMonitor_asm.s64P",
+    "ti/sdo/ipc/gates/GateAAMonitor_asm.s64P",
 ];
 
 var asmList = {
-    "ti.targets.C28_large"              : asmListNone,
-    "ti.targets.C28_float"              : asmListNone,
-
     "ti.targets.C64P"                   : asmList64P,
     "ti.targets.C64P_big_endian"        : asmList64P,
     "ti.targets.C674"                   : asmList64P,
@@ -623,6 +658,7 @@ var asmList = {
     "ti.targets.arm.elf.M3"             : asmListNone,
     "ti.targets.arm.elf.M4"             : asmListNone,
     "ti.targets.arm.elf.M4F"            : asmListNone,
+    "ti.targets.arm.elf.R5F"            : asmListNone,
 
     "gnu.targets.arm.M3"                : asmListNone,
     "gnu.targets.arm.M4"                : asmListNone,
@@ -630,6 +666,7 @@ var asmList = {
     "gnu.targets.arm.A8F"               : asmListNone,
     "gnu.targets.arm.A9F"               : asmListNone,
     "gnu.targets.arm.A15F"              : asmListNone,
+    "gnu.targets.arm.A53F"              : asmListNone,
 };
 
 function getDefaultCustomCCOpts()
@@ -702,6 +739,14 @@ function getDefs()
     defs += " -Dti_sdo_ipc_MessageQ_traceFlag__D=" +
             (MessageQ.traceFlag ? "TRUE" : "FALSE");
 
+    if ("ti.ipc.ipcmgr.IpcMgr" in xdc.om) {
+        defs += xdc.module("ti.ipc.ipcmgr.IpcMgr").getDefs();
+    }
+
+    if ("ti.ipc.rpmsg" in xdc.om) {
+        defs += xdc.module('ti.ipc.rpmsg.Build').getDefs();
+    }
+
     var InterruptDucati =
             xdc.module("ti.sdo.ipc.family.ti81xx.InterruptDucati");
 
@@ -733,18 +778,17 @@ function getDefs()
  */
 function getCFiles(target)
 {
-    var localSources = "ipc/Ipc.c ";
+    var localSources = "";
 
-    /*
-     * logic to trim the C files down to just what the application needs
-     * 3/2/11 disabled for now ...
-     */
     if (BIOS.buildingAppLib == true) {
-        for each (var mod in Program.targetModules()) {
+        var targetModules = Program.targetModules();
+
+        for (var m = 0; m < targetModules.length; m++) {
+            var mod = targetModules[m];
             var mn = mod.$name;
-            var pn = mn.substring(0, mn.lastIndexOf("."));
+            var pn = mod.$package.$name;
 
-            /* sanity check package path */
+            /* determine if this is an ipc package */
             var packageMatch = false;
 
             for (var i = 0; i < ipcPackages.length; i++) {
@@ -754,22 +798,17 @@ function getCFiles(target)
                 }
             }
 
-            if (packageMatch && !mn.match(/Proxy/) &&
-               (mn != "ti.sdo.ipc.Ipc")) {
-                if (cFiles[mn] === undefined) {
-                    var prefix = mn.substr(mn.indexOf("sdo")+4);
-                    var mod = mn.substr(mn.lastIndexOf(".")+1);
-                    prefix = prefix.substring(0, prefix.lastIndexOf('.')+1);
-                    prefix = prefix.replace(/\./g, "/");
-                    localSources += prefix + mod + ".c ";
-                }
-                else {
-                    for (i in cFiles[mn].cSources) {
-                        var prefix = mn.substr(mn.indexOf("sdo")+8);
-                        prefix = prefix.substring(0, prefix.lastIndexOf('.')+1);
-                        prefix = prefix.replace(/\./g, "/");
-                        localSources += prefix + cFiles[mn].cSources[i] + " ";
-                    }
+            if (packageMatch && !mn.match(/Proxy/)) {
+                localSources += mn.replace(/\./g, "/") + ".c" + " ";
+            }
+        }
+
+        /* special handling for non-target modules */
+        for (var p in cFiles) {
+            if (p in xdc.om) {
+                for (var f in cFiles[p].cSources) {
+                    localSources += p.replace(/\./g, "/")
+                            + "/" + cFiles[p].cSources[f] + " ";
                 }
             }
         }