From: bbahnsen Date: Sat, 16 Dec 2006 08:28:47 +0000 (+0000) Subject: Corrections to the far manifest. X-Git-Tag: edk2-stable201903~23772 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=d32aaa956e98417dbdd117301c472627cf7d94e5 Corrections to the far manifest. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2105 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/Tools/Python/MkFar.py b/Tools/Python/MkFar.py index b5284b4781..f6355db56b 100755 --- a/Tools/Python/MkFar.py +++ b/Tools/Python/MkFar.py @@ -39,59 +39,68 @@ def parseSpd(spdFile): for f in XmlList(spd, xmlPath): filelist.append(str(os.path.join(spdDir, XmlElementData(f)))) - for xmlPath in ["/PackageSurfaceArea/MsaFiles/Filename"]: - for f in XmlList(spd, xmlPath): - msaFile = str(os.path.join(spdDir, XmlElementData(f))) - filelist += parseMsa(msaFile, spdDir) + for f in XmlList(spd, "/PackageSurfaceArea/MsaFiles/Filename"): + msaFile = str(os.path.join(spdDir, XmlElementData(f))) + filelist += parseMsa(msaFile, spdDir) return filelist def makeFar(filelist, farname): - man = \ -""" - - -""" - domImpl = xml.dom.minidom.getDOMImplementation() man = domImpl.createDocument(None, "FrameworkArchiveManifest", None) top_element = man.documentElement header = man.createElement("FarHeader") top_element.appendChild(header) - + packList = man.createElement("FarPackageList") top_element.appendChild(packList) - + platList = man.createElement("FarPlatformList") top_element.appendChild(platList) - + contents = man.createElement("Contents") top_element.appendChild(contents) - + zip = zipfile.ZipFile(farname, "w") - for file in args: - if not os.path.exists(inWorkspace(file)): - print "Skipping non-existent file '%s'." % file - (_, extension) = os.path.splitext(file) + for infile in filelist: + if not os.path.exists(inWorkspace(infile)): + print "Skipping non-existent file '%s'." % infile + (_, extension) = os.path.splitext(infile) if extension == ".spd": - filelist = parseSpd(file) + filelist = parseSpd(infile) - for file in filelist: - - package = man.createElement("FarPackage") - packList.appendChild(package) + package = man.createElement("FarPackage") + packList.appendChild(package) - spdfilename = man.createElement("FarFileName") - package.appendChild(spdfilename) + spdfilename = man.createElement("FarFilename") + package.appendChild(spdfilename) - spdfilename.appendChild( man.createTextNode(file) ) + spdfilename.appendChild( man.createTextNode(infile) ) + + for spdfile in filelist: + content = man.createElement("FarFilename") + content.appendChild( man.createTextNode(spdfile)) + contents.appendChild(content) elif extension == ".fpd": - filelist = [file] + filelist = [infile] + + platform = man.createElement("FarPlatform") + platList.appendChild(platform) + + fpdfilename = man.createElement("FarFilename") + platform.appendChild(fpdfilename) + + fpdfilename.appendChild( man.createTextNode(infile) ) + else: filelist = [] + content = man.createElement("FarFilename") + content.appendChild( man.createTextNode(infile)) + contents.appendChild(content) + for f in set(filelist): zip.write(inWorkspace(f), f) zip.writestr("FrameworkArchiveManifest.xml", man.toprettyxml(" "))