diff options
author | wuyizhong <wuyizhong@6f19259b-4bc3-4df7-8a09-765794883524> | 2006-10-30 04:03:55 +0000 |
---|---|---|
committer | wuyizhong <wuyizhong@6f19259b-4bc3-4df7-8a09-765794883524> | 2006-10-30 04:03:55 +0000 |
commit | 92cfaeee663888d6b4c4c8fb180ba249d940b16c (patch) | |
tree | 2e12834132de85b9103a72540fffdd43cf94cfe6 /Tools | |
parent | 62df8efa9368714c5f4c59dd5395ccf0ed0f7fa4 (diff) | |
download | edk2-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')
-rw-r--r-- | Tools/Java/Source/GenBuild/org/tianocore/build/global/GlobalData.java | 22 |
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;
}
|