]> git.proxmox.com Git - mirror_edk2.git/commitdiff
For stand-alone build, generate Platform_build.xml and call prebuild firstly.
authorwuyizhong <wuyizhong@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 14 Sep 2006 02:39:02 +0000 (02:39 +0000)
committerwuyizhong <wuyizhong@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 14 Sep 2006 02:39:02 +0000 (02:39 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1532 6f19259b-4bc3-4df7-8a09-765794883524

Tools/Source/GenBuild/org/tianocore/build/GenBuildThread.java
Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java

index 01a387057b003e7311668aebb9a3e41aa0c6232f..738a448f3ac6c304c0ef406a2b215fcaf99a240e 100644 (file)
@@ -154,8 +154,8 @@ public class GenBuildThread implements Runnable {
 \r
             genBuildTask.perform();\r
         } catch (BuildException be) {\r
-\r
-            EdkLog.log("GenBuild", EdkLog.EDK_ALWAYS, moduleId + " with Arch " + arch +" build error. \n" + be.getMessage());\r
+            \r
+            EdkLog.log("GenBuild", EdkLog.EDK_ALWAYS, fpdModuleId + " build error. \n" + be.getMessage());\r
             \r
             if (FpdParserForThread.errorModule == null) {\r
                 FpdParserForThread.errorModule = fpdModuleId;\r
index d70166dbaf5e0760daed812ca21a739247168688..3d2c36ad2135d463a2e3eed67bb6fc3ed9f52b0e 100644 (file)
@@ -296,6 +296,43 @@ public class FpdParserTask extends Task {
     public void parseFpdFile(File fpdFile) throws BuildException, EdkException {\r
         this.fpdFile = fpdFile;\r
         parseFpdFile();\r
+        \r
+        //\r
+        // Call Platform_build.xml prebuild firstly in stand-alone build\r
+        // Prepare BUILD_DIR\r
+        //\r
+        isUnified = OutputManager.getInstance().prepareBuildDir(getProject());\r
+\r
+        String buildDir = getProject().getProperty("BUILD_DIR");\r
+        //\r
+        // For every Target and ToolChain\r
+        //\r
+        String[] targetList = GlobalData.getToolChainInfo().getTargets();\r
+        for (int i = 0; i < targetList.length; i++) {\r
+            String[] toolchainList = GlobalData.getToolChainInfo().getTagnames();\r
+            for(int j = 0; j < toolchainList.length; j++) {\r
+                //\r
+                // Prepare FV_DIR\r
+                //\r
+                String ffsCommonDir = buildDir + File.separatorChar\r
+                                + targetList[i] + "_"\r
+                                + toolchainList[j];\r
+                File fvDir = new File(ffsCommonDir + File.separatorChar + "FV");\r
+                fvDir.mkdirs();\r
+            }\r
+        }\r
+\r
+        String platformBuildFile = buildDir + File.separatorChar + platformId.getName() + "_build.xml";\r
+        PlatformBuildFileGenerator fileGenerator = new PlatformBuildFileGenerator(getProject(), outfiles, fvs, isUnified, saq, platformBuildFile);\r
+        fileGenerator.genBuildFile();\r
+        \r
+        Ant ant = new Ant();\r
+        ant.setProject(getProject());\r
+        ant.setAntfile(platformBuildFile);\r
+        ant.setTarget("prebuild");\r
+        ant.setInheritAll(true);\r
+        ant.init();\r
+        ant.execute();\r
     }\r
 \r
     /**\r