diff options
Diffstat (limited to 'manifest_xml.py')
-rw-r--r-- | manifest_xml.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/manifest_xml.py b/manifest_xml.py index 3c8fadd6..e2f58e62 100644 --- a/manifest_xml.py +++ b/manifest_xml.py | |||
@@ -261,6 +261,12 @@ class XmlManifest(object): | |||
261 | ce.setAttribute('dest', c.dest) | 261 | ce.setAttribute('dest', c.dest) |
262 | e.appendChild(ce) | 262 | e.appendChild(ce) |
263 | 263 | ||
264 | for l in p.linkfiles: | ||
265 | le = doc.createElement('linkfile') | ||
266 | le.setAttribute('src', l.src) | ||
267 | le.setAttribute('dest', l.dest) | ||
268 | e.appendChild(le) | ||
269 | |||
264 | default_groups = ['all', 'name:%s' % p.name, 'path:%s' % p.relpath] | 270 | default_groups = ['all', 'name:%s' % p.name, 'path:%s' % p.relpath] |
265 | egroups = [g for g in p.groups if g not in default_groups] | 271 | egroups = [g for g in p.groups if g not in default_groups] |
266 | if egroups: | 272 | if egroups: |
@@ -765,6 +771,8 @@ class XmlManifest(object): | |||
765 | for n in node.childNodes: | 771 | for n in node.childNodes: |
766 | if n.nodeName == 'copyfile': | 772 | if n.nodeName == 'copyfile': |
767 | self._ParseCopyFile(project, n) | 773 | self._ParseCopyFile(project, n) |
774 | if n.nodeName == 'linkfile': | ||
775 | self._ParseLinkFile(project, n) | ||
768 | if n.nodeName == 'annotation': | 776 | if n.nodeName == 'annotation': |
769 | self._ParseAnnotation(project, n) | 777 | self._ParseAnnotation(project, n) |
770 | if n.nodeName == 'project': | 778 | if n.nodeName == 'project': |
@@ -814,6 +822,14 @@ class XmlManifest(object): | |||
814 | # dest is relative to the top of the tree | 822 | # dest is relative to the top of the tree |
815 | project.AddCopyFile(src, dest, os.path.join(self.topdir, dest)) | 823 | project.AddCopyFile(src, dest, os.path.join(self.topdir, dest)) |
816 | 824 | ||
825 | def _ParseLinkFile(self, project, node): | ||
826 | src = self._reqatt(node, 'src') | ||
827 | dest = self._reqatt(node, 'dest') | ||
828 | if not self.IsMirror: | ||
829 | # src is project relative; | ||
830 | # dest is relative to the top of the tree | ||
831 | project.AddLinkFile(src, dest, os.path.join(self.topdir, dest)) | ||
832 | |||
817 | def _ParseAnnotation(self, project, node): | 833 | def _ParseAnnotation(self, project, node): |
818 | name = self._reqatt(node, 'name') | 834 | name = self._reqatt(node, 'name') |
819 | value = self._reqatt(node, 'value') | 835 | value = self._reqatt(node, 'value') |