summaryrefslogtreecommitdiff
path: root/Tools/Source
diff options
context:
space:
mode:
authorjwang36 <jwang36@6f19259b-4bc3-4df7-8a09-765794883524>2006-07-20 10:40:46 +0000
committerjwang36 <jwang36@6f19259b-4bc3-4df7-8a09-765794883524>2006-07-20 10:40:46 +0000
commit57cc2ee710e6a12621f879dd5e95dc7d4fb8cba9 (patch)
tree5f1c6a0d3b29cef1fca32b1f51aab0ec81bc1d15 /Tools/Source
parent0647c9adf92c6a8712091607a73b2768327a865d (diff)
downloadedk2-platforms-57cc2ee710e6a12621f879dd5e95dc7d4fb8cba9.tar.xz
a) Fixed the issue that the unnecessary build for not specified ARCH in single module build
b) Fixed the issue that mixed case of FV name will cause invalid inf file generation c) Fixed the issue that not specified outputDir will cause tool (flashmap, efirom) cannot be launched git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1056 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Tools/Source')
-rw-r--r--Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/EfiRomTask.java2
-rw-r--r--Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/FlashMapTask.java2
-rw-r--r--Tools/Source/GenBuild/org/tianocore/build/GenBuildTask.java5
-rw-r--r--Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java9
-rw-r--r--Tools/Source/GenBuild/org/tianocore/build/global/GlobalData.java6
-rw-r--r--Tools/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java6
6 files changed, 17 insertions, 13 deletions
diff --git a/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/EfiRomTask.java b/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/EfiRomTask.java
index 763b73f339..ff2be738f7 100644
--- a/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/EfiRomTask.java
+++ b/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/EfiRomTask.java
@@ -93,7 +93,7 @@ public class EfiRomTask extends Task implements EfiDefine {
///
/// output directory
///
- private String outputDir = "";
+ private String outputDir = ".";
///
diff --git a/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/FlashMapTask.java b/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/FlashMapTask.java
index 436fd64826..e494e564c8 100644
--- a/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/FlashMapTask.java
+++ b/Tools/Source/FrameworkTasks/org/tianocore/framework/tasks/FlashMapTask.java
@@ -117,7 +117,7 @@ public class FlashMapTask extends Task implements EfiDefine {
// /
// / output directory
// /
- private String outputDir = "";
+ private String outputDir = ".";
// /
// / MCI file array
diff --git a/Tools/Source/GenBuild/org/tianocore/build/GenBuildTask.java b/Tools/Source/GenBuild/org/tianocore/build/GenBuildTask.java
index ec2fd1ad2f..1f020b3cc1 100644
--- a/Tools/Source/GenBuild/org/tianocore/build/GenBuildTask.java
+++ b/Tools/Source/GenBuild/org/tianocore/build/GenBuildTask.java
@@ -240,8 +240,9 @@ public class GenBuildTask extends Ant {
//
// Whether the module is built before
//
- if (GlobalData.isModuleBuilt(fpdModuleId)) {
- return ;
+ if ((moduleId.isLibrary() == false && GlobalData.hasFpdModuleSA(fpdModuleId) == false)
+ || GlobalData.isModuleBuilt(fpdModuleId)) {
+ continue;
}
else {
GlobalData.registerBuiltModule(fpdModuleId);
diff --git a/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java b/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java
index c85cda83e2..39d4d6f2d4 100644
--- a/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java
+++ b/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java
@@ -220,9 +220,9 @@ public class FpdParserTask extends Task {
getProject().setProperty(globalVariables[j][0], globalVariables[j][1]);
}
- getProject().setProperty("FV_FILENAME", validFv[i].toUpperCase());
+ getProject().setProperty("FV_FILENAME", validFv[i]);
- File fvFile = new File(getProject().replaceProperties( getProject().getProperty("FV_DIR") + File.separatorChar + validFv[i].toUpperCase() + ".inf"));
+ File fvFile = new File(getProject().replaceProperties( getProject().getProperty("FV_DIR") + File.separatorChar + validFv[i] + ".inf"));
fvFile.getParentFile().mkdirs();
try {
@@ -295,7 +295,7 @@ public class FpdParserTask extends Task {
//
// Files
//
- Set<FpdModuleIdentification> filesSet = fvs.get(validFv[i].toUpperCase());
+ Set<FpdModuleIdentification> filesSet = fvs.get(validFv[i]);
if (filesSet != null) {
FpdModuleIdentification[] files = filesSet.toArray(new FpdModuleIdentification[filesSet.size()]);
bw.write("[files]");
@@ -503,8 +503,7 @@ public class FpdParserTask extends Task {
if (fvName == null || fvName.trim().length() == 0) {
fvName = "NULL";
}
- String upcaseFvName = fvName.toUpperCase();
- String[] fvNameArray = upcaseFvName.split("[, \t]+");
+ String[] fvNameArray = fvName.split("[, \t]+");
for (int i = 0; i < fvNameArray.length; i++) {
//
// Put module to corresponding fvName
diff --git a/Tools/Source/GenBuild/org/tianocore/build/global/GlobalData.java b/Tools/Source/GenBuild/org/tianocore/build/global/GlobalData.java
index 101e14f008..18b766dc42 100644
--- a/Tools/Source/GenBuild/org/tianocore/build/global/GlobalData.java
+++ b/Tools/Source/GenBuild/org/tianocore/build/global/GlobalData.java
@@ -315,7 +315,11 @@ public class GlobalData {
}
fpdModuleSA.put(fpdModuleId, result);
}
-
+
+ public synchronized static boolean hasFpdModuleSA(FpdModuleIdentification fpdModuleId) {
+ return fpdModuleSA.containsKey(fpdModuleId);
+ }
+
/**
Query overrided module surface area information. If current is Package
or Platform build, also include the information from FPD file.
diff --git a/Tools/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java b/Tools/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java
index f795e1e521..d5683a0daa 100644
--- a/Tools/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java
+++ b/Tools/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java
@@ -1425,7 +1425,7 @@ public class SurfaceAreaQuery {
*/
public static String[][] getFpdOptions(String fvName) {
String[] xPath = new String[] { "/Flash/FvImages/FvImage[@Type='Options' and ./FvImageNames='"
- + fvName.toUpperCase() + "']/FvImageOptions" };
+ + fvName + "']/FvImageOptions" };
Object[] queryResult = get("PlatformSurfaceArea", xPath);
if (queryResult == null) {
return new String[0][];
@@ -1493,7 +1493,7 @@ public class SurfaceAreaQuery {
*/
public static String[][] getFpdAttributes(String fvName) {
String[] xPath = new String[] { "/Flash/FvImages/FvImage[@Type='Attributes' and ./FvImageNames='"
- + fvName.toUpperCase() + "']/FvImageOptions" };
+ + fvName + "']/FvImageOptions" };
Object[] queryResult = get("PlatformSurfaceArea", xPath);
if (queryResult == null) {
return new String[0][];
@@ -1563,7 +1563,7 @@ public class SurfaceAreaQuery {
* @returns empty list if nothing is there
*/
public static String[][] getFpdComponents(String fvName) {
- String[] xPath = new String[] { "/Flash/FvImages/FvImage[@Type='Components' and ./FvImageNames='"+ fvName.toUpperCase() + "']/FvImageOptions" };
+ String[] xPath = new String[] { "/Flash/FvImages/FvImage[@Type='Components' and ./FvImageNames='"+ fvName + "']/FvImageOptions" };
Object[] queryResult = get("PlatformSurfaceArea", xPath);
if (queryResult == null) {
return new String[0][];