summaryrefslogtreecommitdiff
path: root/build-essential.morph
diff options
context:
space:
mode:
authorRichard Maw <richard.maw@codethink.co.uk>2014-08-18 17:05:22 +0000
committerRichard Maw <richard.maw@codethink.co.uk>2014-08-18 17:05:22 +0000
commit2b10a9677817377618e33d2b07ab7caefe316633 (patch)
tree843ba74b9480f36da273cba79182e3c38b28881b /build-essential.morph
parente424935744d9faf27327ee40987620412c41716f (diff)
downloaddefinitions-GENIVI-I0.1.tar.gz
Re-organise definitions with scripts/organise-morphologies.pyGENIVI-I0.1baserock/release/GENIVI-I0.1
Diffstat (limited to 'build-essential.morph')
-rw-r--r--build-essential.morph332
1 files changed, 0 insertions, 332 deletions
diff --git a/build-essential.morph b/build-essential.morph
deleted file mode 100644
index 2f8d798b..00000000
--- a/build-essential.morph
+++ /dev/null
@@ -1,332 +0,0 @@
-name: build-essential
-kind: stratum
-description: |
- Toolchain stratum
-
- 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.
-
- 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).
-
- 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 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 host.
-
- After build-essential is built we do another trick. See
- stage2-fhs-dirs.morph for details. Basically, /bin is a symlink to
- /tools/bin during stage 2 but in stage 3 it becomes a real directory
- again.
-products:
-- artifact: build-essential-minimal
- include:
- - fhs-dirs-.*
- - busybox-.*
- - eglibc-nss
-chunks:
-- name: stage1-binutils
- repo: upstream:binutils-redhat
- ref: 987eb543a034cddc4eeb103f08f566f24a5f964a
- unpetrify-ref: baserock/build-essential
- build-depends: []
- build-mode: bootstrap
- prefix: /tools
-- name: stage1-gcc
- repo: upstream:gcc-tarball
- ref: 0a1a077d3466cd99a4ed5590db2146b3fec6fff1
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-linux-api-headers
- repo: upstream:linux
- ref: eff825d6e284eb0fb04b434429a3e3b2e10cabf8
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-eglibc
- repo: upstream:eglibc2
- ref: 43ee5d250ad47d2bee8ec17954efb7f22d2b804c
- unpetrify-ref: baserock/2.15-build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-linux-api-headers
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-binutils
- repo: upstream:binutils-redhat
- ref: 987eb543a034cddc4eeb103f08f566f24a5f964a
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-eglibc
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-gcc-fixed-headers
- repo: upstream:gcc-tarball
- ref: 0a1a077d3466cd99a4ed5590db2146b3fec6fff1
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-eglibc
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-gcc
- repo: upstream:gcc-tarball
- ref: 0a1a077d3466cd99a4ed5590db2146b3fec6fff1
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-eglibc
- - stage2-gcc-fixed-headers
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-busybox
- repo: upstream:busybox
- ref: eeb9014f28e3aa00673a0fad127e7420da4392db
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-eglibc
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-fhs-dirs
- repo: baserock:baserock/fhs-dirs
- ref: 41bbb474cd4647ee715bc94c21c161d12a20deb4
- unpetrify-ref: master
- build-depends: []
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-gawk
- repo: upstream:gawk
- ref: 6a0eb04c3d2ac24d80d505b42a8f67799487d133
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-eglibc
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-make
- repo: upstream:make
- ref: 56968f58301e6e5157cf4c8b6deefbaff2955eba
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-eglibc
- build-mode: bootstrap
- prefix: /tools
-- name: stage2-reset-specs
- repo: upstream:eglibc2
- ref: 43ee5d250ad47d2bee8ec17954efb7f22d2b804c
- unpetrify-ref: baserock/2.15-build-essential
- build-depends:
- - stage1-binutils
- - stage1-gcc
- - stage2-linux-api-headers
- - stage2-eglibc
- build-mode: bootstrap
- prefix: /tools
-- name: fhs-dirs
- repo: baserock:baserock/fhs-dirs
- ref: 41bbb474cd4647ee715bc94c21c161d12a20deb4
- unpetrify-ref: master
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- build-mode: staging
- prefix: /usr
-- name: linux-api-headers
- repo: upstream:linux
- ref: eff825d6e284eb0fb04b434429a3e3b2e10cabf8
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- build-mode: staging
- prefix: /usr
-- name: eglibc
- repo: upstream:eglibc2
- ref: df0258044f321990eadd647e03095a48ad04c1a8
- unpetrify-ref: baserock/2.15-build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - linux-api-headers
- build-mode: staging
- artifacts:
- eglibc-gconv: build-essential-runtime
- eglibc-libs: build-essential-minimal
- eglibc-nss: build-essential-runtime
- prefix: /usr
-- name: zlib
- repo: upstream:zlib
- ref: db333af7e9b90a23fd7f9cd8dc128123b34bf698
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - eglibc
- build-mode: staging
- artifacts:
- zlib-libs: build-essential-minimal
- prefix: /usr
-- name: binutils
- repo: upstream:binutils-redhat
- ref: 987eb543a034cddc4eeb103f08f566f24a5f964a
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - eglibc
- - zlib
- build-mode: staging
- prefix: /usr
-- name: busybox
- repo: upstream:busybox
- ref: bf06394ab87ff22662084c82c1821847c25b7f21
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - eglibc
- build-mode: staging
- prefix: /usr
-- name: gawk
- repo: upstream:gawk
- ref: 6a0eb04c3d2ac24d80d505b42a8f67799487d133
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - eglibc
- build-mode: staging
- prefix: /usr
-- name: gcc
- repo: upstream:gcc-tarball
- ref: b0254026149b13782eae26d38435a4c62a002cf0
- unpetrify-ref: baserock/build-essential-4.7
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - eglibc
- - zlib
- build-mode: staging
- artifacts:
- gcc-libs: build-essential-minimal
- prefix: /usr
-- name: make
- repo: upstream:make
- ref: 56968f58301e6e5157cf4c8b6deefbaff2955eba
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - eglibc
- build-mode: staging
- prefix: /usr
-- name: ccache
- repo: upstream:ccache
- ref: 567631456f0899cdf0c382f898d38aadc8901d32
- unpetrify-ref: baserock/build-essential
- build-depends:
- - stage2-binutils
- - stage2-busybox
- - stage2-eglibc
- - stage2-fhs-dirs
- - stage2-gawk
- - stage2-gcc
- - stage2-linux-api-headers
- - stage2-make
- - stage2-reset-specs
- - eglibc
- - zlib
- build-mode: staging
- prefix: /usr