- AdditionalFiles Package tagı içerisine taşındı
- Paket oluşturma sırasında artık AdditionalFiles içerisindekiler de pakete dahil ediliyor.
This commit is contained in:
@@ -227,6 +227,15 @@ class PisiBuild:
|
|||||||
fsize = "0"
|
fsize = "0"
|
||||||
files.append(FileInfo(frpath, ftype, fsize, fhash))
|
files.append(FileInfo(frpath, ftype, fsize, fhash))
|
||||||
|
|
||||||
|
# append AdditionalFiles to files.xml
|
||||||
|
for afile in package.additionalFiles:
|
||||||
|
fpath = install_dir + afile.target
|
||||||
|
ftype = "AdditionalFile"
|
||||||
|
fhash = util.sha1_file(fpath)
|
||||||
|
fsize = str(os.path.getsize(fpath))
|
||||||
|
frpath = util.removepathprefix(install_dir, fpath) # relative path
|
||||||
|
files.append(FileInfo(frpath, ftype, fsize, fhash))
|
||||||
|
|
||||||
files.write(os.path.join(self.ctx.pkg_dir(), const.files_xml))
|
files.write(os.path.join(self.ctx.pkg_dir(), const.files_xml))
|
||||||
|
|
||||||
def buildPackages(self):
|
def buildPackages(self):
|
||||||
@@ -259,6 +268,14 @@ class PisiBuild:
|
|||||||
pcomar.script)
|
pcomar.script)
|
||||||
pkg.add_to_package(fname)
|
pkg.add_to_package(fname)
|
||||||
|
|
||||||
|
# store additional files
|
||||||
|
install_dir = self.ctx.pkg_dir() + const.install_dir_suffix
|
||||||
|
for afile in package.additionalFiles:
|
||||||
|
src = os.path.join(const.files_dir, afile.filename)
|
||||||
|
dest = os.path.join(install_dir + afile.target, afile.filename)
|
||||||
|
util.copy_file(src, dest)
|
||||||
|
if afile.permission:
|
||||||
|
os.chmod(dest, afile.permission)
|
||||||
|
|
||||||
# add xmls and files
|
# add xmls and files
|
||||||
os.chdir(self.ctx.pkg_dir())
|
os.chdir(self.ctx.pkg_dir())
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ class MetaData(XmlFile):
|
|||||||
self.package.conflicts = pkg.conflicts
|
self.package.conflicts = pkg.conflicts
|
||||||
self.package.providesComar = pkg.providesComar
|
self.package.providesComar = pkg.providesComar
|
||||||
self.package.requiresComar = pkg.requiresComar
|
self.package.requiresComar = pkg.requiresComar
|
||||||
|
self.package.additionalFiles = pkg.additionalFiles
|
||||||
|
|
||||||
|
|
||||||
def read(self, filename):
|
def read(self, filename):
|
||||||
|
|||||||
@@ -56,7 +56,8 @@ class SourceFetcher(object):
|
|||||||
|
|
||||||
def fetch_additionalFiles(self):
|
def fetch_additionalFiles(self):
|
||||||
spec = self.spec
|
spec = self.spec
|
||||||
for afile in spec.source.additionalFiles:
|
for pkg in self.spec.packages:
|
||||||
|
for afile in pkg.additionalFiles:
|
||||||
afileuri = join(self.location,
|
afileuri = join(self.location,
|
||||||
const.files_dir, patch.filename)
|
const.files_dir, patch.filename)
|
||||||
self.url.uri = afileuri
|
self.url.uri = afileuri
|
||||||
|
|||||||
+9
-9
@@ -33,14 +33,14 @@ class PackagerInfo:
|
|||||||
|
|
||||||
class AdditionalFileInfo:
|
class AdditionalFileInfo:
|
||||||
def __init__(self, node):
|
def __init__(self, node):
|
||||||
self.filepath = getNodeText(node)
|
self.filename = getNodeText(node)
|
||||||
self.target = getNodeAttribute(node, "target")
|
self.target = getNodeAttribute(node, "target")
|
||||||
self.permission = getNodeAttribute(node, "permission")
|
self.permission = getNodeAttribute(node, "permission")
|
||||||
self.owner = getNodeAttribute(node, "owner")
|
self.owner = getNodeAttribute(node, "owner")
|
||||||
|
|
||||||
def elt(self, xml):
|
def elt(self, xml):
|
||||||
node = xml.newNode("AdditionalFile")
|
node = xml.newNode("AdditionalFile")
|
||||||
xml.addText(node, self.filepath)
|
xml.addText(node, self.filename)
|
||||||
node.setAttribute("target", self.target)
|
node.setAttribute("target", self.target)
|
||||||
if self.permission:
|
if self.permission:
|
||||||
node.setAttribute("permission", self.permission)
|
node.setAttribute("permission", self.permission)
|
||||||
@@ -48,7 +48,7 @@ class AdditionalFileInfo:
|
|||||||
node.setAttribute("owner", self.owner)
|
node.setAttribute("owner", self.owner)
|
||||||
|
|
||||||
def verify(self):
|
def verify(self):
|
||||||
if not self.filepath: return False
|
if not self.filename: return False
|
||||||
if not self.target: return False
|
if not self.target: return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
@@ -164,8 +164,6 @@ class SourceInfo:
|
|||||||
self.archiveSHA1 = getNodeAttribute(archiveNode, "sha1sum")
|
self.archiveSHA1 = getNodeAttribute(archiveNode, "sha1sum")
|
||||||
patchElts = getAllNodes(node, "Patches/Patch")
|
patchElts = getAllNodes(node, "Patches/Patch")
|
||||||
self.patches = [PatchInfo(p) for p in patchElts]
|
self.patches = [PatchInfo(p) for p in patchElts]
|
||||||
aFilesElts = getAllNodes(node, "AdditionalFiles/AdditionalFile")
|
|
||||||
self.additionalFiles = [AdditionalFileInfo(f) for f in aFilesElts]
|
|
||||||
buildDepElts = getAllNodes(node, "BuildDependencies/Dependency")
|
buildDepElts = getAllNodes(node, "BuildDependencies/Dependency")
|
||||||
self.buildDeps = [DepInfo(d) for d in buildDepElts]
|
self.buildDeps = [DepInfo(d) for d in buildDepElts]
|
||||||
historyElts = getAllNodes(node, "History/Update")
|
historyElts = getAllNodes(node, "History/Update")
|
||||||
@@ -188,8 +186,6 @@ class SourceInfo:
|
|||||||
archiveNode.setAttribute("sha1sum", self.archiveSHA1)
|
archiveNode.setAttribute("sha1sum", self.archiveSHA1)
|
||||||
for patch in self.patches:
|
for patch in self.patches:
|
||||||
xml.addNodeUnder(node, "Patches", patch.elt(xml))
|
xml.addNodeUnder(node, "Patches", patch.elt(xml))
|
||||||
for afile in self.additionalFiles:
|
|
||||||
xml.addNodeUnder(node, "AdditionalFiles", afile.elt(xml))
|
|
||||||
for dep in self.buildDeps:
|
for dep in self.buildDeps:
|
||||||
xml.addNodeUnder(node, "BuildDependencies", dep.elt(xml))
|
xml.addNodeUnder(node, "BuildDependencies", dep.elt(xml))
|
||||||
for update in self.history:
|
for update in self.history:
|
||||||
@@ -212,8 +208,6 @@ class SourceInfo:
|
|||||||
if not update.verify(): return False
|
if not update.verify(): return False
|
||||||
for patch in self.patches:
|
for patch in self.patches:
|
||||||
if not patch.verify(): return False
|
if not patch.verify(): return False
|
||||||
for afile in self.additionalFiles:
|
|
||||||
if not afile.verify(): return False
|
|
||||||
for dep in self.buildDeps:
|
for dep in self.buildDeps:
|
||||||
if not dep.verify(): return False
|
if not dep.verify(): return False
|
||||||
|
|
||||||
@@ -241,6 +235,8 @@ class PackageInfo(object):
|
|||||||
self.providesComar = [ComarProvide(x) for x in provComarElts]
|
self.providesComar = [ComarProvide(x) for x in provComarElts]
|
||||||
reqComarElts = getAllNodes(node, "Requires/COMAR")
|
reqComarElts = getAllNodes(node, "Requires/COMAR")
|
||||||
self.requiresComar = map(getNodeText, reqComarElts)
|
self.requiresComar = map(getNodeText, reqComarElts)
|
||||||
|
aFilesElts = getAllNodes(node, "AdditionalFiles/AdditionalFile")
|
||||||
|
self.additionalFiles = [AdditionalFileInfo(f) for f in aFilesElts]
|
||||||
|
|
||||||
def elt(self, xml):
|
def elt(self, xml):
|
||||||
node = xml.newNode("Package")
|
node = xml.newNode("Package")
|
||||||
@@ -265,6 +261,8 @@ class PackageInfo(object):
|
|||||||
xml.addNodeUnder(node, "Provides", pcomar.elt(xml))
|
xml.addNodeUnder(node, "Provides", pcomar.elt(xml))
|
||||||
for rcomar in self.requiresComar:
|
for rcomar in self.requiresComar:
|
||||||
xml.addTextNodeUnder(node, "Requires/COMAR", rcomar)
|
xml.addTextNodeUnder(node, "Requires/COMAR", rcomar)
|
||||||
|
for afile in self.additionalFiles:
|
||||||
|
xml.addNodeUnder(node, "AdditionalFiles", afile.elt(xml))
|
||||||
return node
|
return node
|
||||||
|
|
||||||
def verify(self):
|
def verify(self):
|
||||||
@@ -278,6 +276,8 @@ class PackageInfo(object):
|
|||||||
if not path.verify(): return False
|
if not path.verify(): return False
|
||||||
for dep in self.runtimeDeps:
|
for dep in self.runtimeDeps:
|
||||||
if not dep.verify(): return False
|
if not dep.verify(): return False
|
||||||
|
for afile in self.additionalFiles:
|
||||||
|
if not afile.verify(): return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
|
|||||||
Reference in New Issue
Block a user