aboutsummaryrefslogtreecommitdiff
path: root/utils/seeded-builds
diff options
context:
space:
mode:
authorPaul Sokolovsky <paul.sokolovsky@linaro.org>2012-01-20 21:25:03 +0200
committerPaul Sokolovsky <paul.sokolovsky@linaro.org>2012-01-20 21:25:03 +0200
commitc78ff48e1a12dfe0032a34dcca4da8cec2066a0a (patch)
treef933e1830834f378ce884e389e49bc9cb5e30618 /utils/seeded-builds
parent104d2ced202d4f7a8853b39edfb89260d106f7af (diff)
Repo doesn't allow duplicate projects (bu name) in one manifest.
Also, sort remotes and projects in the result output.
Diffstat (limited to 'utils/seeded-builds')
-rwxr-xr-xutils/seeded-builds/manifest-union11
1 files changed, 8 insertions, 3 deletions
diff --git a/utils/seeded-builds/manifest-union b/utils/seeded-builds/manifest-union
index 8966212..b1e46bd 100755
--- a/utils/seeded-builds/manifest-union
+++ b/utils/seeded-builds/manifest-union
@@ -42,7 +42,8 @@ class Manifest:
name = project_node.getAttribute("name")
revision = project_node.getAttribute("revision")
path = project_node.getAttribute("path")
- key = (remote, name, revision, path)
+# key = (remote, name, revision, path)
+ key = (remote, name)
if key in self.project_map:
return False
self.project_map[key] = project_node
@@ -80,12 +81,16 @@ def union(manifest_files):
def dump(manifest, out):
+
+ def sort_by_name(n1, n2):
+ return cmp(n1.getAttribute("name"), n2.getAttribute("name"))
+
out.write("""\
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
""")
- for r in manifest.get_remotes():
+ for r in sorted(manifest.get_remotes(), sort_by_name):
out.write(r.toxml())
out.write("\n")
out.write("\n")
@@ -93,7 +98,7 @@ def dump(manifest, out):
out.write(manifest.get_default().toxml())
out.write("\n\n")
- for p in manifest.get_projects():
+ for p in sorted(manifest.get_projects(), sort_by_name):
out.write(p.toxml())
out.write("\n")
out.write("""\