rm-lld:
authorMing Wei <mwei@ti.com>
Tue, 10 Nov 2015 21:03:29 +0000 (15:03 -0600)
committerMing Wei <mwei@ti.com>
Tue, 10 Nov 2015 21:03:29 +0000 (15:03 -0600)
updates for YOCTO build

build/buildlib.xs
config.bld

index 822f99a845989b04740dc10f9e57d58a22ad9950..e9732bceecab36483c442b02d9404ffdbb69e2d5 100644 (file)
@@ -7,7 +7,7 @@
  *  This file contains common routines that are used by the various RM \r
  *  components.\r
  *\r
- * Copyright (C) 2012-2013, Texas Instruments, Inc.\r
+ * Copyright (C) 2011-2015, Texas Instruments, Inc.\r
  *****************************************************************************/\r
 \r
 /**************************************************************************\r
@@ -110,11 +110,11 @@ function createMake(makefile)
 \r
       var file = xdc.module('xdc.services.io.File');\r
     \r
-      var xdcTargetType = java.lang.System.getenv("XDCTARGET");\r
-      var toolsBaseDir = java.lang.System.getenv("XDCCGROOT");   \r
       \r
       makefile.writeLine("\n# Output for prebuilt generated libraries");\r
       makefile.writeLine("export LIBDIR ?= ./lib");\r
+      /* use sectti.exe from path */\r
+      makefile.writeLine("export SECTTI ?= sectti");\r
 \r
       /* Create INCDIR from XDCPATH */\r
     \r
@@ -288,7 +288,7 @@ function createLibMake(makelibname,targetname, objectPath)
 \r
     }\r
        \r
-    libmakefile.writeLine("INCS = -I. -I$(strip $(subst ;, -I,$(subst $(space),\\$(space),$(INCDIR))))");\r
+        libmakefile.writeLine("INCS = -I. -I$(strip $(subst ;, -I,$(subst $(space),\\$(space),$(INCDIR)))) -I$("+tooldir+")/include");\r
     libmakefile.writeLine("OBJEXT = o"+targetname.suffix); \r
     libmakefile.writeLine("AOBJEXT = s"+targetname.suffix);     \r
     /* libmakefile.writeLine("INTERNALDEFS = -D"+stringname.replace(/\./g,"_")+" -Dxdc_target_types__=ti/targets/std.h -DMAKEFILE_BUILD -eo.$(OBJEXT) -ea.$(AOBJEXT) -fr=$(@D) -fs=$(@D) -ppa -ppd=$@.dep");*/\r
@@ -459,11 +459,29 @@ function buildLibrary (libOptions, libName, target, libFiles)
     /* Create the Epilogue; which executes after all the builds are completed. \r
      * This is used to generate the benchmark information for the built library. \r
      * Also add the benchmarking information file to the package. */\r
-    Pkg.makeEpilogue += ".libraries: benchmarking_" + target.suffix + "\n";\r
-    Pkg.makeEpilogue += "benchmarking_" + target.suffix + ":";\r
-    Pkg.makeEpilogue += "\n\t ofd6x.exe -x " + lldFullLibraryPath + ".a" + target.suffix + " > tmp.xml";\r
-    Pkg.makeEpilogue += "\n\t sectti.exe tmp.xml > " + lldFullLibraryPath + ".a" + target.suffix +  "_size.txt";\r
-    Pkg.makeEpilogue += "\n\t $(RM) tmp.xml\n\n";\r
+\r
+    /* Put the temp file in object directory since javascript doesn't have a built in tmpname, \r
+     * and don't want --jobs=# with # > 1 to result in collisions */\r
+    var libFullName = lldFullLibraryPath + ".a" + target.suffix;\r
+    var tempFile = libFullName + ".xml";\r
+    Pkg.makeEpilogue += ".libraries: " + libFullName +  "_size.txt\n";\r
+    Pkg.makeEpilogue += libFullName +  "_size.txt: " + libFullName + "\n";\r
+    if ( java.lang.String(target.name).contains('66') )\r
+    {    \r
+        Pkg.makeEpilogue += "\n\t $(C6X_GEN_INSTALL_PATH)/bin/ofd6x -x " + libFullName + " > " + tempFile;\r
+        Pkg.makeEpilogue += "\n\t $(SECTTI) " + tempFile + " > " + libFullName +  "_size.txt";\r
+        Pkg.makeEpilogue += "\n\t $(RM) " + tempFile + "\n\n";\r
+    }   \r
+    else if (target.name == "M4")\r
+    {\r
+        Pkg.makeEpilogue += "\n\t $(TOOLCHAIN_PATH_M4)/bin/armofd -x " + libFullName + " > " + tempFile;\r
+        Pkg.makeEpilogue += "\n\t $(SECTTI) " + tempFile + " > " + libFullName +  "_size.txt";\r
+        Pkg.makeEpilogue += "\n\t $(RM) " + tempFile + "\n\n";\r
+    }\r
+    else\r
+    {\r
+        Pkg.makeEpilogue += "\n\t $(TOOLCHAIN_PATH_A15)/bin/$(CROSS_TOOL_PRFX)size " + libFullName + " > " + libFullName + "_size.txt";\r
+    }                \r
     Pkg.otherFiles[Pkg.otherFiles.length++] = lldFullLibraryPath + ".a" + target.suffix + "_size.txt";\r
     Pkg.otherFiles[Pkg.otherFiles.length++] = lldFullBuildPath + ".a" + target.suffix + ".mk";\r
     Pkg.otherFiles[Pkg.otherFiles.length++] = lldFullLibraryPath + ".a" + target.suffix;\r
index 0d31b4ebf28defaa65e1a45319a90d635ac07467..dc67655c93a2252d6fdd42f8b3f03e2bfe96ac6b 100644 (file)
@@ -12,7 +12,7 @@
  *****************************************************************************/\r
 \r
 /* Get the Tools Base directory from the Environment Variable. */\r
-var toolsBaseDir = java.lang.System.getenv("XDCCGROOT");\r
+var toolsBaseDir = java.lang.System.getenv("C6X_GEN_INSTALL_PATH");\r
 \r
 /* Get the base directory for the RM Package */\r
 var lldPath = new java.io.File(".//").getPath();\r