X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Tools%2FSource%2FGenBuild%2Forg%2Ftianocore%2Fbuild%2Fglobal%2FSpd.java;h=72efa7eba778b64c163b77b940e4a693e80c0037;hp=54c13910941c1a18d871d86674034c6c0a9bb4c5;hb=250258de0d6ed07201db565101d45f4d92729bce;hpb=878ddf1fc3540a715f63594ed22b6929e881afb4 diff --git a/Tools/Source/GenBuild/org/tianocore/build/global/Spd.java b/Tools/Source/GenBuild/org/tianocore/build/global/Spd.java index 54c1391094..72efa7eba7 100644 --- a/Tools/Source/GenBuild/org/tianocore/build/global/Spd.java +++ b/Tools/Source/GenBuild/org/tianocore/build/global/Spd.java @@ -18,14 +18,15 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.tianocore.PackageSurfaceAreaDocument; import org.tianocore.GuidDeclarationsDocument.GuidDeclarations; import org.tianocore.IncludeHeaderDocument.IncludeHeader; import org.tianocore.LibraryClassDeclarationDocument.LibraryClassDeclaration; import org.tianocore.LibraryClassDeclarationsDocument.LibraryClassDeclarations; import org.tianocore.PackageHeadersDocument.PackageHeaders; +import org.tianocore.PackageSurfaceAreaDocument; import org.tianocore.PackageSurfaceAreaDocument.PackageSurfaceArea; import org.tianocore.PpiDeclarationsDocument.PpiDeclarations; +import org.tianocore.PpiDeclarationsDocument.PpiDeclarations.Entry; import org.tianocore.ProtocolDeclarationsDocument.ProtocolDeclarations; /** @@ -125,15 +126,14 @@ public class Spd { if (packageHeader != null) { List headerList = packageHeader.getIncludeHeaderList(); + IncludeHeader header; + for (int i = 0; i < headerList.size(); i++) { + header = (IncludeHeader)headerList.get(i); try { - this.moduleInfo - .put(headerList.get(i).getModuleType() - .toString(), headerList.get(i) - .getStringValue()); + this.moduleInfo.put(header.getModuleType().toString(), header.getStringValue()); } catch (Exception e) { - System.out - .print("can't find ModuleHeaders ModuleType & includeHeader!\n"); + System.out.print("can't find ModuleHeaders ModuleType & includeHeader!\n"); } } } @@ -149,19 +149,26 @@ public class Spd { **/ public void genPpiInfoList(PpiDeclarations ppiInfo) { String[] cNameGuid = new String[2]; + String guidString; if (ppiInfo != null) { List ppiEntryList = ppiInfo.getEntryList(); + PpiDeclarations.Entry ppiEntry; + for (int i = 0; i < ppiEntryList.size(); i++) { + ppiEntry = (PpiDeclarations.Entry)ppiEntryList.get(i); try { - cNameGuid[0] = ppiEntryList.get(i).getCName(); - cNameGuid[1] = formatGuidName(ppiEntryList.get(i) - .getGuid().getStringValue()); - this.ppiInfo.put(ppiEntryList.get(i).getName(), new String[] { - cNameGuid[0], cNameGuid[1] }); + if (ppiEntry.isSetGuidValue()) { + guidString = ppiEntry.getGuidValue(); + } else { + guidString = ppiEntry.getGuid().getStringValue(); + } + + cNameGuid[0] = ppiEntry.getCName(); + cNameGuid[1] = formatGuidName(guidString); + this.ppiInfo.put(ppiEntry.getName(), new String[] { cNameGuid[0], cNameGuid[1] }); } catch (Exception e) { - System.out - .print("can't find GuidDeclarations C_Name & Guid!\n"); + System.out.print("can't find GuidDeclarations C_Name & Guid!\n"); } } } @@ -177,20 +184,26 @@ public class Spd { **/ public void genProtocolInfoList(ProtocolDeclarations proInfo) { String[] cNameGuid = new String[2]; + String guidString; + if (proInfo != null) { List protocolEntryList = proInfo.getEntryList(); + ProtocolDeclarations.Entry protocolEntry; for (int i = 0; i < protocolEntryList.size(); i++) { + protocolEntry = (ProtocolDeclarations.Entry)protocolEntryList.get(i); try { - cNameGuid[0] = protocolEntryList.get(i).getCName(); - cNameGuid[1] = formatGuidName(protocolEntryList.get(i) - .getGuid().getStringValue()); - - String temp = new String(protocolEntryList.get(i).getName()); - this.protocolInfo.put(temp, new String[] { cNameGuid[0], - cNameGuid[1] }); + if (protocolEntry.isSetGuidValue()) { + guidString = protocolEntry.getGuidValue(); + } else { + guidString = protocolEntry.getGuid().getStringValue(); + } + cNameGuid[0] = protocolEntry.getCName(); + cNameGuid[1] = formatGuidName(guidString); + + String temp = new String(protocolEntry.getName()); + this.protocolInfo.put(temp, new String[] { cNameGuid[0], cNameGuid[1] }); } catch (Exception e) { - System.out - .print("can't find ProtocolDeclarations C_Name & Guid!\n"); + System.out.print("can't find ProtocolDeclarations C_Name & Guid!\n"); } } } @@ -207,15 +220,23 @@ public class Spd { **/ public void genGuidInfoList(GuidDeclarations guidInfo) { String[] cNameGuid = new String[2]; + String guidString; + if (guidInfo != null) { - List guidEntryList = guidInfo.getEntryList(); + List guidEntryList = guidInfo.getEntryList(); + GuidDeclarations.Entry guidEntry; for (int i = 0; i < guidEntryList.size(); i++) { - cNameGuid[0] = guidEntryList.get(i).getCName(); - cNameGuid[1] = formatGuidName(guidEntryList.get(i) - .getGuid().getStringValue()); - this.guidInfo.put(guidEntryList.get(i).getName(), new String[] { - cNameGuid[0], cNameGuid[1] }); + guidEntry = (GuidDeclarations.Entry)guidEntryList.get(i); + if (guidEntry.isSetGuidValue()) { + guidString = guidEntry.getGuidValue(); + } else { + guidString = guidEntry.getGuid().getStringValue(); + } + + cNameGuid[0] = guidEntry.getCName(); + cNameGuid[1] = formatGuidName(guidString); + this.guidInfo.put(guidEntry.getName(), new String[] {cNameGuid[0], cNameGuid[1] }); } } }