summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2013-03-15 16:27:23 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2013-03-15 16:27:23 +0000
commit22fc9595e15db3545a1fd01a41406ca710f0c817 (patch)
treedfe05ac29d7800cf066ee7b88e32f3b5c02788f1
parent04693fe707b8651ab9c14b4dbcc1f2479cde4aea (diff)
parent1f3c22493494b14760262be4782182ec67a59fa5 (diff)
downloadmorphs-22fc9595e15db3545a1fd01a41406ca710f0c817.tar.gz
Merge branch 'baserock/samthursfield/build-essential-2-rebase'
Baserock no longer requires a staging filler to build. Instead, the tools of the host system are used to bootstrap a compiler which then builds the rest of the system in a staging chroot, as was previously done with the staging filler. There are likely to be errors if you do try to build with a staging filler, because it will interfere with the build-essential bootstrap process. Versions of Morph before the following commit can no longer build Baserock systems: commit 13cded5a796889c748e60ffa17fc92bad592bf39 Merge: 8046bf0 4b5f45f Author: Sam Thursfield <sam.thursfield@codethink.co.uk> Date: Fri Mar 15 11:05:07 2013 +0000 Merge branch 'samthursfield/arch' Reviewed-By: concensus
-rw-r--r--base-system-armv7-highbank.morph8
-rw-r--r--base-system-armv7-versatile.morph8
-rw-r--r--base-system-x86_32-generic.morph8
-rw-r--r--base-system-x86_64-generic.morph8
-rw-r--r--bsp-armv7-highbank.morph2
-rw-r--r--bsp-armv7-versatile.morph2
-rw-r--r--bsp-imx53.morph2
-rw-r--r--bsp-x86_32-generic.morph2
-rw-r--r--bsp-x86_64-generic.morph2
-rw-r--r--build-essential.morph306
-rw-r--r--build-essential.morph.yaml311
-rw-r--r--core.morph14
-rw-r--r--devel-system-armv7-highbank.morph10
-rw-r--r--devel-system-armv7-versatile.morph10
-rw-r--r--devel-system-x86_32-generic.morph10
-rw-r--r--devel-system-x86_64-generic.morph10
-rw-r--r--foundation.morph2
-rw-r--r--tools.morph2
18 files changed, 640 insertions, 77 deletions
diff --git a/base-system-armv7-highbank.morph b/base-system-armv7-highbank.morph
index 22005cb..193ae6e 100644
--- a/base-system-armv7-highbank.morph
+++ b/base-system-armv7-highbank.morph
@@ -9,22 +9,22 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-armv7-highbank",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/base-system-armv7-versatile.morph b/base-system-armv7-versatile.morph
index 04db502..259c3a1 100644
--- a/base-system-armv7-versatile.morph
+++ b/base-system-armv7-versatile.morph
@@ -9,22 +9,22 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-armv7-versatile",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/base-system-x86_32-generic.morph b/base-system-x86_32-generic.morph
index 2e29dbe..dd687d0 100644
--- a/base-system-x86_32-generic.morph
+++ b/base-system-x86_32-generic.morph
@@ -9,22 +9,22 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-x86_32-generic",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/base-system-x86_64-generic.morph b/base-system-x86_64-generic.morph
index 4ae4e71..6340a43 100644
--- a/base-system-x86_64-generic.morph
+++ b/base-system-x86_64-generic.morph
@@ -9,22 +9,22 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-x86_64-generic",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/bsp-armv7-highbank.morph b/bsp-armv7-highbank.morph
index 1a49c68..384189d 100644
--- a/bsp-armv7-highbank.morph
+++ b/bsp-armv7-highbank.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "core"
}
],
diff --git a/bsp-armv7-versatile.morph b/bsp-armv7-versatile.morph
index 6f5e4a1..7c4e30d 100644
--- a/bsp-armv7-versatile.morph
+++ b/bsp-armv7-versatile.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "core"
}
],
diff --git a/bsp-imx53.morph b/bsp-imx53.morph
index d8c668d..4c3aa38 100644
--- a/bsp-imx53.morph
+++ b/bsp-imx53.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "core"
}
],
diff --git a/bsp-x86_32-generic.morph b/bsp-x86_32-generic.morph
index bd52755..02e68fd 100644
--- a/bsp-x86_32-generic.morph
+++ b/bsp-x86_32-generic.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "core"
}
],
diff --git a/bsp-x86_64-generic.morph b/bsp-x86_64-generic.morph
index b984a13..4e6b15b 100644
--- a/bsp-x86_64-generic.morph
+++ b/bsp-x86_64-generic.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "core"
}
],
diff --git a/build-essential.morph b/build-essential.morph
index 5a3fb2c..c8c9413 100644
--- a/build-essential.morph
+++ b/build-essential.morph
@@ -4,58 +4,318 @@
"kind": "stratum",
"chunks": [
{
- "name": "binutils",
+ "name": "stage1-binutils",
"repo": "upstream:binutils-redhat",
- "ref": "baserock/build-essential",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
"build-depends": []
},
{
- "name": "busybox",
- "repo": "upstream:busybox",
- "ref": "baserock/build-essential",
- "build-depends": []
+ "name": "stage1-gcc",
+ "repo": "upstream:gcc-tarball",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils"
+ ]
},
{
- "name": "eglibc",
+ "name": "stage2-linux-api-headers",
+ "repo": "upstream:linux",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc"
+ ]
+ },
+ {
+ "name": "stage2-eglibc",
"repo": "upstream:eglibc2",
- "ref": "baserock/2.15-build-essential",
- "build-depends": []
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc",
+ "stage2-linux-api-headers"
+ ]
},
{
- "name": "fhs-dirs",
- "repo": "baserock:baserock/fhs-dirs",
- "ref": "master",
- "build-depends": []
+ "name": "stage2-zlib",
+ "repo": "upstream:zlib",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc",
+ "stage2-eglibc"
+ ]
},
{
- "name": "gcc",
+ "name": "stage2-binutils",
+ "repo": "upstream:binutils-redhat",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc",
+ "stage2-eglibc",
+ "stage2-zlib"
+ ]
+ },
+ {
+ "name": "stage2-gcc",
"repo": "upstream:gcc-tarball",
- "ref": "baserock/build-essential",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc",
+ "stage2-eglibc",
+ "stage2-zlib"
+ ]
+ },
+ {
+ "name": "stage2-busybox",
+ "repo": "upstream:busybox",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc",
+ "stage2-eglibc"
+ ]
+ },
+ {
+ "name": "stage2-fhs-dirs",
+ "repo": "baserock:baserock/fhs-dirs",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
"build-depends": []
},
{
+ "name": "stage2-gawk",
+ "repo": "upstream:gawk",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc",
+ "stage2-eglibc"
+ ]
+ },
+ {
+ "name": "stage2-make",
+ "repo": "upstream:make",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "bootstrap",
+ "prefix": "/tools",
+ "build-depends": [
+ "stage1-binutils",
+ "stage1-gcc",
+ "stage2-eglibc"
+ ]
+ },
+ {
+ "name": "fhs-dirs",
+ "repo": "baserock:baserock/fhs-dirs",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib"
+ ]
+ },
+ {
"name": "linux-api-headers",
"repo": "upstream:linux",
- "ref": "baserock/build-essential",
- "build-depends": []
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib"
+ ]
+ },
+ {
+ "name": "eglibc",
+ "repo": "upstream:eglibc2",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "linux-api-headers"
+ ]
+ },
+ {
+ "name": "zlib",
+ "repo": "upstream:zlib",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "eglibc"
+ ]
+ },
+ {
+ "name": "binutils",
+ "repo": "upstream:binutils-redhat",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "eglibc",
+ "zlib"
+ ]
+ },
+ {
+ "name": "busybox",
+ "repo": "upstream:busybox",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "eglibc"
+ ]
},
{
"name": "gawk",
"repo": "upstream:gawk",
- "ref": "baserock/build-essential",
- "build-depends": []
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "eglibc"
+ ]
+ },
+ {
+ "name": "gcc",
+ "repo": "upstream:gcc-tarball",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "eglibc",
+ "zlib"
+ ]
},
{
"name": "make",
"repo": "upstream:make",
- "ref": "baserock/build-essential",
- "build-depends": []
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "eglibc"
+ ]
},
{
"name": "ccache",
"repo": "upstream:ccache",
- "ref": "baserock/build-essential",
- "build-depends": []
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
+ "build-mode": "staging",
+ "prefix": "/usr",
+ "build-depends": [
+ "stage2-binutils",
+ "stage2-busybox",
+ "stage2-eglibc",
+ "stage2-fhs-dirs",
+ "stage2-gawk",
+ "stage2-gcc",
+ "stage2-linux-api-headers",
+ "stage2-make",
+ "stage2-zlib",
+ "eglibc",
+ "zlib"
+ ]
}
]
}
diff --git a/build-essential.morph.yaml b/build-essential.morph.yaml
new file mode 100644
index 0000000..79c6974
--- /dev/null
+++ b/build-essential.morph.yaml
@@ -0,0 +1,311 @@
+name: build-essential
+description: Toolchain stratum
+kind: stratum
+
+chunks:
+ # Stage 1: build a minimal cross compiler with the host's tools.
+ #
+ # Starting with a cross compiler ensures that (a) nothing from the host
+ # can leak into the build-essential artifacts, and (b) cross-compiling
+ # build-essential is fully tested and supported, since we always use the
+ # cross code paths.
+
+ - name: stage1-binutils
+ repo: upstream:binutils-redhat
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends: []
+
+ - name: stage1-gcc
+ repo: upstream:gcc-tarball
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+
+ # Stage 2: cross-build the whole of build-essential, using the host's tools
+ # but the cross-compiler toolchain.
+ #
+ # Stage 2 GCC outputs code for the same 'bootstrap' machine as stage 1 GCC,
+ # but because stage 2 GCC is also built to *run* on the bootstrap machine
+ # it can only execute inside the stage 3 chroot (due to being built against
+ # a libc with a non-standard prefix).
+
+ - name: stage2-linux-api-headers
+ repo: upstream:linux
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+
+ - name: stage2-eglibc
+ repo: upstream:eglibc2
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+ - stage2-linux-api-headers
+
+ - name: stage2-zlib
+ repo: upstream:zlib
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+ - stage2-eglibc
+
+ - name: stage2-binutils
+ repo: upstream:binutils-redhat
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+ - stage2-eglibc
+ - stage2-zlib
+
+ - name: stage2-gcc
+ repo: upstream:gcc-tarball
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+ - stage2-eglibc
+ - stage2-zlib
+
+ - name: stage2-busybox
+ repo: upstream:busybox
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+ - stage2-eglibc
+
+ - name: stage2-fhs-dirs
+ repo: baserock:baserock/fhs-dirs
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends: []
+
+ - name: stage2-gawk
+ repo: upstream:gawk
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+ - stage2-eglibc
+
+ - name: stage2-make
+ repo: upstream:make
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: bootstrap
+ prefix: /tools
+ build-depends:
+ - stage1-binutils
+ - stage1-gcc
+ - stage2-eglibc
+
+ # Stage 3: build the whole of build-essential again, this time using a
+ # staging area containing only the output of stage 2. The result of this
+ # build is fully reproducible.
+ #
+ # We do a switch-a-roo between stage 2 and 3: stages 2 chunks are all built
+ # to run on a host *-bootstrap-* while stage 3 chunks are built are native
+ # built for a *-baserock-* machine. This works, because the cross build was
+ # all for show (and cleanliness) and the binaries actually still run on the
+ # the host.
+ #
+ # After build-essential is built we do another trick: stage2-fhs-dirs
+ # symlinks /bin to /tools/bin and /lib to /tools/lib, while the stage 3
+ # chunks actually install things to those directories. FIXME: which breaks
+ # everything!!! This will have to change.
+ #
+
+ - name: fhs-dirs
+ repo: baserock:baserock/fhs-dirs
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+
+ - name: linux-api-headers
+ repo: upstream:linux
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+
+ - name: eglibc
+ repo: upstream:eglibc2
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - linux-api-headers
+
+ - name: zlib
+ repo: upstream:zlib
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - eglibc
+
+ - name: binutils
+ repo: upstream:binutils-redhat
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - eglibc
+ - zlib
+
+ - name: busybox
+ repo: upstream:busybox
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - eglibc
+
+ - name: gawk
+ repo: upstream:gawk
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - eglibc
+
+ - name: gcc
+ repo: upstream:gcc-tarball
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - eglibc
+ - zlib
+
+ - name: make
+ repo: upstream:make
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - eglibc
+
+ # Extras that need to be in build-essential but don't need bootstrapping.
+
+ - name: ccache
+ repo: upstream:ccache
+ ref: baserock/samthursfield/build-essential-2-rebase
+ build-mode: staging
+ prefix: /usr
+ build-depends:
+ - stage2-binutils
+ - stage2-busybox
+ - stage2-eglibc
+ - stage2-fhs-dirs
+ - stage2-gawk
+ - stage2-gcc
+ - stage2-linux-api-headers
+ - stage2-make
+ - stage2-zlib
+ - eglibc
+ - zlib
diff --git a/core.morph b/core.morph
index 56c046b..eb99e69 100644
--- a/core.morph
+++ b/core.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "build-essential"
}
],
@@ -77,12 +77,6 @@
]
},
{
- "name": "zlib",
- "repo": "upstream:zlib",
- "ref": "baserock/morph",
- "build-depends": []
- },
- {
"name": "autoconf",
"repo": "upstream:autoconf",
"ref": "baserock/build-essential",
@@ -139,8 +133,7 @@
"ref": "baserock/morph-2.7",
"build-depends": [
"openssl",
- "readline",
- "zlib"
+ "readline"
]
},
{
@@ -214,8 +207,7 @@
"error-perl-tarball",
"gettext",
"libexpat",
- "openssl",
- "zlib"
+ "openssl"
]
},
{
diff --git a/devel-system-armv7-highbank.morph b/devel-system-armv7-highbank.morph
index ab73541..17666c8 100644
--- a/devel-system-armv7-highbank.morph
+++ b/devel-system-armv7-highbank.morph
@@ -9,27 +9,27 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-armv7-highbank",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "tools",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/devel-system-armv7-versatile.morph b/devel-system-armv7-versatile.morph
index b10a52f..65f882e 100644
--- a/devel-system-armv7-versatile.morph
+++ b/devel-system-armv7-versatile.morph
@@ -9,27 +9,27 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-armv7-versatile",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "tools",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/devel-system-x86_32-generic.morph b/devel-system-x86_32-generic.morph
index c0f4b87..5ec40ec 100644
--- a/devel-system-x86_32-generic.morph
+++ b/devel-system-x86_32-generic.morph
@@ -9,27 +9,27 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-x86_32-generic",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "tools",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/devel-system-x86_64-generic.morph b/devel-system-x86_64-generic.morph
index 4872961..ae1db02 100644
--- a/devel-system-x86_64-generic.morph
+++ b/devel-system-x86_64-generic.morph
@@ -9,27 +9,27 @@
{
"morph": "build-essential",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "core",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "foundation",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "bsp-x86_64-generic",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
},
{
"morph": "tools",
"repo": "baserock:baserock/morphs",
- "ref": "master"
+ "ref": "baserock/samthursfield/build-essential-2-rebase"
}
]
}
diff --git a/foundation.morph b/foundation.morph
index 39e366d..da63c6a 100644
--- a/foundation.morph
+++ b/foundation.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "core"
}
],
diff --git a/tools.morph b/tools.morph
index 7342cd2..7d95987 100644
--- a/tools.morph
+++ b/tools.morph
@@ -5,7 +5,7 @@
"build-depends": [
{
"repo": "baserock:baserock/morphs",
- "ref": "master",
+ "ref": "baserock/samthursfield/build-essential-2-rebase",
"morph": "foundation"
}
],