mirror of https://github.com/acidanthera/audk.git
48 lines
1.3 KiB
Python
48 lines
1.3 KiB
Python
|
#!/usr/bin/env python
|
||
|
|
||
|
"""List the contents of the Framework Database to the screen in a readble
|
||
|
form."""
|
||
|
|
||
|
import os, sys, getopt, string, xml.dom.minidom, zipfile, md5
|
||
|
from XmlRoutines import *
|
||
|
from WorkspaceRoutines import *
|
||
|
|
||
|
def openDatabase(f):
|
||
|
|
||
|
print "Dumping the contents of %s workspace database file." % f
|
||
|
|
||
|
db = xml.dom.minidom.parse(inWorkspace(f))
|
||
|
|
||
|
return db
|
||
|
|
||
|
def showSpds(db):
|
||
|
|
||
|
print "--------\nPackages\n--------"
|
||
|
|
||
|
for spdFile in XmlList(db, "/FrameworkDatabase/PackageList/Filename"):
|
||
|
spdFileName = XmlElementData(spdFile)
|
||
|
spd = xml.dom.minidom.parse(inWorkspace(spdFileName))
|
||
|
spdName = XmlElement(spd, "/PackageSurfaceArea/SpdHeader/PackageName")
|
||
|
|
||
|
print " %-24s %-10s" % (spdName, spdFileName)
|
||
|
|
||
|
def showFpds(db):
|
||
|
|
||
|
print "--------\nPlatforms\n--------"
|
||
|
|
||
|
for fpdFile in XmlList(db, "/FrameworkDatabase/PlatformList/Filename"):
|
||
|
fpdFileName = XmlElementData(fpdFile)
|
||
|
fpd = xml.dom.minidom.parse(inWorkspace(fpdFileName))
|
||
|
fpdName = XmlElement(fpd, "/PlatformSurfaceArea/PlatformHeader/PlatformName")
|
||
|
|
||
|
print " %-24s %-10s" % (fpdName, fpdFileName)
|
||
|
|
||
|
# This acts like the main() function for the script, unless it is 'import'ed
|
||
|
# into another script.
|
||
|
if __name__ == '__main__':
|
||
|
|
||
|
db = openDatabase("Tools/Conf/FrameworkDatabase.db")
|
||
|
|
||
|
showSpds(db)
|
||
|
showFpds(db)
|