summaryrefslogtreecommitdiff
path: root/Tools/Java
diff options
context:
space:
mode:
authorwuyizhong <wuyizhong@6f19259b-4bc3-4df7-8a09-765794883524>2006-10-30 04:03:55 +0000
committerwuyizhong <wuyizhong@6f19259b-4bc3-4df7-8a09-765794883524>2006-10-30 04:03:55 +0000
commit92cfaeee663888d6b4c4c8fb180ba249d940b16c (patch)
tree2e12834132de85b9103a72540fffdd43cf94cfe6 /Tools/Java
parent62df8efa9368714c5f4c59dd5395ccf0ed0f7fa4 (diff)
downloadedk2-platforms-92cfaeee663888d6b4c4c8fb180ba249d940b16c.tar.xz
To fix bug EDKT432. Add judge to avoid include flags twice.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1854 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Tools/Java')
-rw-r--r--Tools/Java/Source/GenBuild/org/tianocore/build/global/GlobalData.java22
1 files changed, 15 insertions, 7 deletions
diff --git a/Tools/Java/Source/GenBuild/org/tianocore/build/global/GlobalData.java b/Tools/Java/Source/GenBuild/org/tianocore/build/global/GlobalData.java
index c736952377..437858a711 100644
--- a/Tools/Java/Source/GenBuild/org/tianocore/build/global/GlobalData.java
+++ b/Tools/Java/Source/GenBuild/org/tianocore/build/global/GlobalData.java
@@ -23,6 +23,7 @@ import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -768,6 +769,9 @@ public class GlobalData {
return setting;
}
+ Set<String> flagSet = new LinkedHashSet<String>();
+ flagSet.add(setting);
+
//
// Tool's option can be in .fpd and/or .msa file
//
@@ -785,7 +789,7 @@ public class GlobalData {
//
option = msaFamilyBuildOption.get(fpdModuleId.getModule());
if (option != null && (optionString = option.get(toolChainFamilyKey)) != null) {
- setting += (" " + optionString);
+ flagSet.add(optionString);
}
//
@@ -793,7 +797,7 @@ public class GlobalData {
//
option = msaBuildOption.get(fpdModuleId.getModule());
if (option != null && (optionString = option.get(toolChainKey)) != null) {
- setting += (" " + optionString);
+ flagSet.add(optionString);
}
//
@@ -801,7 +805,7 @@ public class GlobalData {
//
optionString = platformToolChainFamilyOption.get(toolChainFamilyKey);
if (optionString != null) {
- setting += (" " + optionString);
+ flagSet.add(optionString);
}
//
@@ -809,7 +813,7 @@ public class GlobalData {
//
optionString = platformToolChainOption.get(toolChainKey);
if (optionString != null) {
- setting += (" " + optionString);
+ flagSet.add(optionString);
}
//
@@ -817,7 +821,7 @@ public class GlobalData {
//
option = moduleToolChainFamilyOption.get(fpdModuleId);
if (option != null && (optionString = option.get(toolChainFamilyKey)) != null) {
- setting += (" " + optionString);
+ flagSet.add(optionString);
}
//
@@ -825,9 +829,13 @@ public class GlobalData {
//
option = moduleToolChainOption.get(fpdModuleId);
if (option != null && (optionString = option.get(toolChainKey)) != null) {
- setting += (" " + optionString);
+ flagSet.add(optionString);
+ }
+
+ setting = "";
+ for(Iterator<String> iter = flagSet.iterator(); iter.hasNext();) {
+ setting += iter.next() +" ";
}
-
return setting;
}