X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Tools%2FJava%2FSource%2FGenBuild%2Forg%2Ftianocore%2Fbuild%2Fglobal%2FSurfaceAreaQuery.java;h=78bea2a43492777e2a827c77d171e51348c21dd0;hp=17f7541e093594c61d767d03efd4f976f7e7e925;hb=700279a971c1f603a72a45455be4b4f842ce39d9;hpb=2b34c3fe630ca813f15fe198caf971cd6a92c775 diff --git a/Tools/Java/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java b/Tools/Java/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java index 17f7541e09..78bea2a434 100644 --- a/Tools/Java/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java +++ b/Tools/Java/Source/GenBuild/org/tianocore/build/global/SurfaceAreaQuery.java @@ -38,6 +38,7 @@ import org.tianocore.build.id.PackageIdentification; import org.tianocore.build.id.PlatformIdentification; import org.tianocore.build.toolchain.ToolChainInfo; import org.tianocore.common.exception.EdkException; +import org.tianocore.common.definitions.EdkDefinitions; import org.w3c.dom.Node; /** @@ -593,7 +594,7 @@ public class SurfaceAreaQuery { * xpath * @returns null if nothing is there */ - public String[] getLibraryClasses(String usage, String arch) { + public String[] getLibraryClasses(String usage, String arch, String moduleType) { String[] xPath; if (usage == null || usage.equals("")) { xPath = new String[] { "/LibraryClass" }; @@ -610,8 +611,10 @@ public class SurfaceAreaQuery { List libraryClassName = new ArrayList(); for (int i = 0; i < libraryClassList.length; i++) { List archList = libraryClassList[i].getSupArchList(); - - if (arch == null || contains(archList, arch)) { + List moduleTypeList = libraryClassList[i].getSupModuleList(); + if ((arch == null || contains(archList, arch)) + && (moduleType == null || contains(moduleTypeList, moduleType) + || contains(moduleTypeList, EdkDefinitions.MODULE_TYPE_BASE))) { libraryClassName.add(libraryClassList[i].getKeyword()); } } @@ -2008,15 +2011,8 @@ public class SurfaceAreaQuery { if (list == null || list.size()== 0) { return true; } - Iterator it = list.iterator(); - while (it.hasNext()) { - String s = (String)it.next(); - if (s.equalsIgnoreCase(str)) { - return true; - } - } - return false; + return list.contains(str); } public boolean isHaveTianoR8FlashMap(){