summaryrefslogtreecommitdiff
path: root/tools.morph
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2013-01-24 11:49:48 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2013-01-24 17:25:15 +0000
commit4de377ebd6877abeb312954dda001fb1f45b14df (patch)
tree2c880e0f80d73dd1082b32d0099ff3e72cd4d51e /tools.morph
parentec66dd9129f4b00bb9297b94814e27ad82c63b4d (diff)
downloadmorphs-4de377ebd6877abeb312954dda001fb1f45b14df.tar.gz
Reorganise morphologies for build-essential
This patch rewrites the Baserock morphologies so that they can be built using a minimal "build-essential" staging filler, as described in my previous patch mail. The Baserock system is split up into three strata: - build-essential: the minimum set of tools that can rebuild itself (from tarballs) - core: the remaining set of components necessary to produce a Baserock system which can rebuild itself from source - tools: auxiliary development tools and libraries The 'build-essential' stratum does not specify any build dependencies, because it expects to be built with a staging filler containing itself. In effect, the stratum has a circular dependency on itself, which we solve by using a staging filler. The 'core' stratum depends on only on 'build-essential'. This ensures that all build dependencies between chunks in 'core' are explicit. These strata can also be built with the staging filler from the water-bomb release. The distinction between a base and a devel system is no longer defined by the 'foundation' and 'devel' strata (in practice these had various hidden build dependencies between each other). The size of a base system is larger than before, due to more development tools being in 'core'.
Diffstat (limited to 'tools.morph')
-rw-r--r--tools.morph108
1 files changed, 108 insertions, 0 deletions
diff --git a/tools.morph b/tools.morph
new file mode 100644
index 0000000..7f64489
--- /dev/null
+++ b/tools.morph
@@ -0,0 +1,108 @@
+{
+ "name": "tools",
+ "description": "Extra development tools included in the devel system",
+ "kind": "stratum",
+ "build-depends": [
+ {
+ "repo": "baserock:baserock/morphs",
+ "ref": "baserock/samthursfield/build-essential",
+ "morph": "core"
+ }
+ ],
+ "chunks": [
+ {
+ "name": "lzo",
+ "repo": "upstream:lzo",
+ "ref": "master",
+ "build-depends": []
+ },
+ {
+ "name": "patch",
+ "repo": "upstream:patch",
+ "ref": "baserock/morph",
+ "build-depends": []
+ },
+ {
+ "name": "cmake",
+ "repo": "upstream:cmake",
+ "ref": "master",
+ "build-depends": []
+ },
+ {
+ "name": "coreutils",
+ "repo": "upstream:coreutils",
+ "ref": "baserock/morph",
+ "build-depends": [
+ "patch"
+ ]
+ },
+ {
+ "name": "distcc",
+ "repo": "upstream:distcc",
+ "ref": "master",
+ "build-depends": [
+ "lzo"
+ ]
+ },
+ {
+ "name": "e2fsprogs",
+ "repo": "upstream:e2fsprogs",
+ "ref": "master",
+ "build-depends": []
+ },
+ {
+ "name": "gdb",
+ "repo": "upstream:gdb",
+ "ref": "refs/heads/master",
+ "build-depends": []
+ },
+ {
+ "name": "less",
+ "repo": "upstream:less",
+ "ref": "master",
+ "build-depends": []
+ },
+ {
+ "name": "linux-user-chroot",
+ "repo": "upstream:linux-user-chroot",
+ "ref": "master",
+ "build-depends": []
+ },
+ {
+ "name": "lsof",
+ "repo": "upstream:lsof",
+ "ref": "baserock/morph",
+ "build-depends": []
+ },
+ {
+ "name": "pv",
+ "repo": "upstream:pv",
+ "ref": "master",
+ "build-depends": []
+ },
+ {
+ "name": "rsync",
+ "repo": "upstream:rsync",
+ "ref": "baserock/morph",
+ "build-depends": []
+ },
+ {
+ "name": "strace",
+ "repo": "upstream:strace",
+ "ref": "master",
+ "build-depends": []
+ },
+ {
+ "name": "vala",
+ "repo": "upstream:vala",
+ "ref": "baserock/bootstrap",
+ "build-depends": []
+ },
+ {
+ "name": "vim",
+ "repo": "upstream:vim",
+ "ref": "baserock/morph",
+ "build-depends": []
+ }
+ ]
+}