summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiago Gomes <tiago.gomes@codethink.co.uk>2015-02-12 11:42:13 +0000
committerTiago Gomes <tiago.gomes@codethink.co.uk>2015-02-12 11:42:13 +0000
commit124189b2955f30c383fc47c150ff2123568134a8 (patch)
treec8e571ae499c394881957750a4f05a4d5bf5be1a
parent1319309d3ff4eb85cb0e7e6cb178cb56ff116524 (diff)
parent1b012d96c08bed47579dd79fc91177c566e7162a (diff)
downloaddefinitions-124189b2955f30c383fc47c150ff2123568134a8.tar.gz
Merge branch 'baserock/tiagogomes/armv8l64'
Reviewed by: * Javier Jardón <jjardon@gnome.org> * Sam Thursfield <sam.thursfield@codethink.co.uk>
-rw-r--r--strata/bsp-armv8l64-generic.morph16
-rw-r--r--strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph104
-rw-r--r--strata/build-essential.morph20
-rw-r--r--strata/build-essential/linux-api-headers.morph2
-rw-r--r--strata/build-essential/stage2-linux-api-headers.morph2
-rw-r--r--strata/core.morph34
-rw-r--r--strata/core/flex.morph2
-rw-r--r--strata/core/libexpat.morph7
-rw-r--r--strata/core/nano.morph4
-rw-r--r--strata/core/ncurses.morph38
-rw-r--r--strata/core/readline.morph6
-rw-r--r--strata/cross-bootstrap.morph16
-rw-r--r--strata/cross-bootstrap/groff.morph2
-rw-r--r--strata/foundation.morph37
-rw-r--r--strata/foundation/acl.morph4
-rw-r--r--strata/foundation/btrfs-progs.morph4
-rw-r--r--strata/foundation/e2fsprogs.morph (renamed from strata/tools/e2fsprogs.morph)4
-rw-r--r--strata/foundation/groff.morph2
-rw-r--r--strata/foundation/linux-pam.morph2
-rw-r--r--strata/morph-utils.morph2
-rw-r--r--strata/tools.morph26
-rw-r--r--strata/tools/distcc.morph6
-rw-r--r--strata/tools/gdb.morph2
-rw-r--r--strata/tools/vala-bootstrap.morph2
-rw-r--r--systems/build-system-armv8l64.morph39
-rw-r--r--systems/cross-bootstrap-system-armv8l64-generic.morph11
26 files changed, 323 insertions, 71 deletions
diff --git a/strata/bsp-armv8l64-generic.morph b/strata/bsp-armv8l64-generic.morph
new file mode 100644
index 00000000..702858de
--- /dev/null
+++ b/strata/bsp-armv8l64-generic.morph
@@ -0,0 +1,16 @@
+name: bsp-armv8l64-generic
+kind: stratum
+description:
+- |
+ The set of platform specific components required for booting
+ armv8l64-based systems, like the 64-bit APM XGene ARM based m400
+ Moonshot cartridge.
+build-depends:
+- morph: strata/core.morph
+chunks:
+- name: linux-armv8l64-generic
+ morph: strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph
+ repo: upstream:linux
+ ref: 5f06398ae6a04f414932243de38b5cf3d264ff84
+ unpetrify-ref: baserock/apm-xgene-m400-moonshot-cartridge
+ build-depends: []
diff --git a/strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph b/strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph
new file mode 100644
index 00000000..120239b9
--- /dev/null
+++ b/strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph
@@ -0,0 +1,104 @@
+name: linux-armv8l64-generic
+kind: chunk
+configure-commands:
+- make ARCH=arm64 defconfig
+- scripts/config -e PACKET
+- scripts/config -e SATA_AHCI
+- scripts/config -e ATA_GENERIC
+- scripts/config -e HAVE_IDE
+- scripts/config -d BLK_DEV_IDE_SATA
+- scripts/config -e BTRFS_FS
+- scripts/config -e BTRFS_FS_POSIX_ACL
+- scripts/config -e DEVTMPFS
+- scripts/config -e DEVTMPFS_MOUNT
+- scripts/config -e CONFIG_FHANDLE
+- scripts/config -e CGROUPS
+- scripts/config -e AUTOFS4_FS
+- scripts/config --set-str UEVENT_HELPER_PATH ''
+- scripts/config -e EXT2_FS
+- scripts/config -e EXT2_FS_XATTR
+- scripts/config -e EXT2_FS_POSIX_ACL
+- scripts/config -e EXT2_FS_SECURITY
+- scripts/config -e EXT2_FS_XIP
+- scripts/config -e EXT3_FS
+- scripts/config -d EXT3_DEFAULTS_TO_ORDERED
+- scripts/config -e EXT3_FS_XATTR
+- scripts/config -e EXT3_FS_POSIX_ACL
+- scripts/config -e EXT3_FS_SECURITY
+- scripts/config -e EXT4_FS
+- scripts/config -e EXT4_FS_XATTR
+- scripts/config -e EXT4_FS_POSIX_ACL
+- scripts/config -e EXT4_FS_SECURITY
+- scripts/config -d EXT4_DEBUG
+- scripts/config -d JBD_DEBUG
+- scripts/config -d JBD2_DEBUG
+- scripts/config -e BLK_DEV_LOOP
+- scripts/config -d BLK_DEV_CRYPTOLOOP
+- scripts/config -e CEPH_FS
+- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8
+- scripts/config -e VIRTIO
+- scripts/config -e VIRTIO_RING
+- scripts/config -e VIRTIO_PCI
+- scripts/config -e VIRTIO_BALLOON
+- scripts/config -e VIRTIO_BLK
+- scripts/config -e VIRTIO_NET
+- scripts/config -e VIRTIO_CONSOLE
+- scripts/config -e HW_RANDOM_VIRTIO
+- scripts/config -e 9P_FS
+- scripts/config -e 9P_FSCACHE
+- scripts/config -e 9P_FS_POSIX_ACL
+- scripts/config -e NET_9P
+- scripts/config -e NET_9P_VIRTIO
+- scripts/config -e R8169
+- scripts/config -e 8139TOO
+- scripts/config -e 8139CP
+- scripts/config -e IKCONFIG
+- scripts/config -e IKCONFIG_PROC
+- scripts/config -e SECCOMP
+- scripts/config -d DEBUG_STACK_TRACE
+- scripts/config -e NFSD
+- scripts/config -e NFSD_V3
+- scripts/config -e KVM
+- scripts/config -e TUN
+- scripts/config -e BRIDGE
+- scripts/config -e VHOST_NET
+- scripts/config -e NF_NAT
+- scripts/config -e NF_NAT_IPV4
+- scripts/config -e IP_NF_TARGET_MASQUERADE
+- scripts/config -e FB_VESA
+- scripts/config -e HOTPLUG_PCI
+- scripts/config -e HOTPLUG_PCI_ACPI
+- scripts/config -e VLAN_8021Q
+- scripts/config -e BRIDGE_VLAN_FILTERING
+# Required for M400
+- scripts/config -e SATA_AHCI_PLATFORM
+- scripts/config -e AHCI_XGENE
+- scripts/config -e GENERIC_PHY
+- scripts/config -e PHY_XGENE
+- scripts/config -e NET_VENDOR_MELLANOX
+- scripts/config -e MLX4_EN
+- scripts/config -e MLX4_EN_DCB
+- scripts/config -e MLX4_EN_VXLAN
+- scripts/config -e MLX4_CORE
+- scripts/config -e MLX5_CORE
+- scripts/config -e NET_IP_TUNNEL
+- scripts/config -e VXLAN
+- scripts/config -e UIO
+- scripts/config -e UIO_PDRV_GENIRQ
+- scripts/config -e GPIO_DWAPB
+- scripts/config -e KEYBOARD_GPIO
+- scripts/config -e INPUT_POLLDEV
+- scripts/config -e KEYBOARD_GPIO_POLLED
+- scripts/config -d DMA_CMA
+- scripts/config -e POWER_RESET
+- scripts/config -e POWER_RESET_GPIO
+- scripts/config -e POWER_RESET_SYSCON
+- scripts/config -e POWER_AVS
+- yes '' | make ARCH=arm64 oldconfig
+build-commands:
+# Only generate Image here, uImage generated in deployment
+# due to availability of mkimage build systems
+- make vmlinux dtbs $MAKEFLAGS
+install-commands:
+- mkdir -p "$DESTDIR"/boot
+- make install dtbs_install INSTALL_PATH="$DESTDIR/boot"
diff --git a/strata/build-essential.morph b/strata/build-essential.morph
index ae2d24b6..9884d29d 100644
--- a/strata/build-essential.morph
+++ b/strata/build-essential.morph
@@ -163,8 +163,8 @@ chunks:
- name: stage2-gawk
morph: strata/build-essential/stage2-gawk.morph
repo: upstream:gawk
- ref: 6a0eb04c3d2ac24d80d505b42a8f67799487d133
- unpetrify-ref: baserock/build-essential
+ ref: dc5af665700d9b04fdf9c18930526d28eef5d5d9
+ unpetrify-ref: gawk-4.1.1
build-depends:
- stage1-binutils
- stage1-gcc
@@ -174,9 +174,9 @@ chunks:
- name: stage2-make
morph: strata/build-essential/stage2-make.morph
- repo: upstream:make
- ref: 56968f58301e6e5157cf4c8b6deefbaff2955eba
- unpetrify-ref: baserock/build-essential
+ repo: upstream:make-tarball
+ ref: f75919b038da8a28388a911303fb86ed7a70ea2c
+ unpetrify-ref: make-4.1
build-depends:
- stage1-binutils
- stage1-gcc
@@ -308,8 +308,8 @@ chunks:
- name: gawk
morph: strata/build-essential/gawk.morph
repo: upstream:gawk
- ref: 6a0eb04c3d2ac24d80d505b42a8f67799487d133
- unpetrify-ref: baserock/build-essential
+ ref: dc5af665700d9b04fdf9c18930526d28eef5d5d9
+ unpetrify-ref: gawk-4.1.1
build-depends:
- stage2-binutils
- stage2-busybox
@@ -360,9 +360,9 @@ chunks:
- name: make
morph: strata/build-essential/make.morph
- repo: upstream:make
- ref: 56968f58301e6e5157cf4c8b6deefbaff2955eba
- unpetrify-ref: baserock/build-essential
+ repo: upstream:make-tarball
+ ref: f75919b038da8a28388a911303fb86ed7a70ea2c
+ unpetrify-ref: make-4.1
build-depends:
- stage2-binutils
- stage2-busybox
diff --git a/strata/build-essential/linux-api-headers.morph b/strata/build-essential/linux-api-headers.morph
index 0f7ce171..0cd61ce1 100644
--- a/strata/build-essential/linux-api-headers.morph
+++ b/strata/build-essential/linux-api-headers.morph
@@ -5,6 +5,8 @@ install-commands:
case "$MORPH_ARCH" in
armv7b|armv7l|armv7lhf)
ARCH="arm" ;;
+ armv8l64|armv8b64)
+ ARCH="arm64" ;;
x86_32)
ARCH="i386" ;;
x86_64)
diff --git a/strata/build-essential/stage2-linux-api-headers.morph b/strata/build-essential/stage2-linux-api-headers.morph
index 50e1aaa5..b296408f 100644
--- a/strata/build-essential/stage2-linux-api-headers.morph
+++ b/strata/build-essential/stage2-linux-api-headers.morph
@@ -5,6 +5,8 @@ install-commands:
case "$MORPH_ARCH" in
armv7b|armv7l|armv7lhf)
ARCH="arm" ;;
+ armv8l64|armv8b64)
+ ARCH="arm64" ;;
x86_32)
ARCH="i386" ;;
x86_64)
diff --git a/strata/core.morph b/strata/core.morph
index d60e3baf..0184de51 100644
--- a/strata/core.morph
+++ b/strata/core.morph
@@ -18,9 +18,9 @@ chunks:
build-depends: []
- name: gdbm
morph: strata/core/gdbm.morph
- repo: upstream:gdbm
- ref: 51871d08a48ff781186f7a7b22ec69a1db38eb4c
- unpetrify-ref: baserock/build-essential
+ repo: upstream:gdbm-tarball
+ ref: e5faeaaf75ecfb705a9b643b3e4cb881ebb69f48
+ unpetrify-ref: gdbm-1.11
build-depends: []
- name: gettext-tarball
morph: strata/core/gettext-tarball.morph
@@ -37,8 +37,8 @@ chunks:
- name: ncurses
morph: strata/core/ncurses.morph
repo: upstream:ncurses
- ref: 0fe89dc66ec061b839bea3ab451207e2dee757b9
- unpetrify-ref: baserock/morph
+ ref: f67398afa6a76fbc902cc0cea963d5151fa2a953
+ unpetrify-ref: ncurses-5.9-20150131
build-depends: []
- name: perl
morph: strata/core/perl.morph
@@ -50,10 +50,11 @@ chunks:
- name: texinfo-tarball
morph: strata/core/texinfo-tarball.morph
repo: upstream:texinfo-tarball
- ref: 4843a7f5ff14ac802a56f1cdd49960b25c15702b
- unpetrify-ref: baserock/morph
+ ref: 6a55f074b1f67d02149c13931eb1df9f0e539b15
+ unpetrify-ref: texinfo-5.2
build-depends:
- ncurses
+ - perl
- name: autoconf-tarball
morph: strata/core/autoconf-tarball.morph
repo: upstream:autoconf-tarball
@@ -81,7 +82,9 @@ chunks:
repo: upstream:flex
ref: de10f98e8a2dc2a021796811490d0f30c3cd90bf
unpetrify-ref: baserock/build-essential
- build-depends: []
+ build-depends:
+ - automake
+ - gettext-tarball
- name: openssl-new
morph: strata/core/openssl-new.morph
repo: upstream:openssl-new
@@ -96,10 +99,12 @@ chunks:
unpetrify-ref: baserock/morph
build-depends: []
- name: readline
+ morph: strata/core/readline.morph
repo: upstream:readline
ref: 518937ab89be812ccd45e9b8c1ce4ad721d35ef6
unpetrify-ref: baserock/genivi/baseline
- build-depends: []
+ build-depends:
+ - automake
- name: cpython
morph: strata/core/cpython.morph
repo: upstream:cpython
@@ -167,12 +172,10 @@ chunks:
- name: libexpat
morph: strata/core/libexpat.morph
repo: upstream:libexpat
- ref: 97678ab13f6d29878997256b6ae1ded679ae5c5c
- unpetrify-ref: baserock/morph
+ ref: 7cfc09db3e258129ab05811f2f9e351746ddab9f
+ unpetrify-ref: R_2_1_0
build-depends:
- - autoconf-tarball
- - automake
- - libtool-tarball
+ - cmake
- name: XML-Parser
repo: upstream:XML-Parser
ref: e1a3ec157140a699e3020836475a0df622f70f1b
@@ -252,11 +255,14 @@ chunks:
- libtool-tarball
- pkg-config
- name: nano
+ morph: strata/core/nano.morph
repo: upstream:nano-tarball
ref: 8b74abeb02c01ddc768c465a826360cf33cec063
unpetrify-ref: baserock/morph
build-depends:
- ncurses
+ - automake
+ - gettext-tarball
- name: bc
repo: upstream:bc-tarball
ref: 0956d119432ff6a2e85bae1fa336df799cad70b0
diff --git a/strata/core/flex.morph b/strata/core/flex.morph
index 7ca8f538..615bf79e 100644
--- a/strata/core/flex.morph
+++ b/strata/core/flex.morph
@@ -1,5 +1,7 @@
name: flex
kind: chunk
+pre-configure-commands:
+- autoreconf -ivf
configure-commands:
- ./configure --prefix="$PREFIX"
build-commands:
diff --git a/strata/core/libexpat.morph b/strata/core/libexpat.morph
index 1e0fe696..b36a67aa 100644
--- a/strata/core/libexpat.morph
+++ b/strata/core/libexpat.morph
@@ -1,9 +1,8 @@
name: libexpat
kind: chunk
configure-commands:
-- autoreconf -i
-- ./configure --prefix="${PREFIX-/usr}"
+- mkdir o && cd o && cmake -DCMAKE_INSTALL_PREFIX=/usr ..
build-commands:
-- make
+- cd o && make
install-commands:
-- make DESTDIR="$DESTDIR" install
+- cd o && make DESTDIR="$DESTDIR" install
diff --git a/strata/core/nano.morph b/strata/core/nano.morph
new file mode 100644
index 00000000..6a55dc2d
--- /dev/null
+++ b/strata/core/nano.morph
@@ -0,0 +1,4 @@
+name: nano
+kind: chunk
+pre-configure-commands:
+- autoreconf -ivf
diff --git a/strata/core/ncurses.morph b/strata/core/ncurses.morph
index c75495bc..42acb481 100644
--- a/strata/core/ncurses.morph
+++ b/strata/core/ncurses.morph
@@ -6,4 +6,40 @@ build-commands:
- make
install-commands:
- make DESTDIR="$DESTDIR" install
-- sh ncurses-morph-postinstall.sh
+post-install-commands:
+- |
+ # lfs recommends some alterations for software that looks for
+ # libcurses instead of libncurses
+ # it's more convenient to have this in a separate file than the
+ # morph as less strings have to be escaped and comments are possible
+
+ # some software expects to find libcurses in /lib
+ mkdir -p "$DESTDIR/lib"
+ mv "$DESTDIR"/"$PREFIX"/lib/libncursesw.so.5* "$DESTDIR"/lib
+ ln -sf ../../lib/libncursesw.so.5 "$DESTDIR"/"$PREFIX"/lib/libncursesw.so
+
+ # some linker tricks for libraries that look for non-wide character
+ # versions of ncurses
+ for lib in ncurses form panel menu; do
+ # remove non-wide shared object
+ rm -f "$DESTDIR/${PREFIX}/lib/lib${lib}.so"
+ # use a linker script to find the wide character variant
+ echo "INPUT(-l${lib}w)" >"$DESTDIR/${PREFIX}/lib/lib${lib}.so"
+ # symlink the non-shared library
+ ln -sf "lib${lib}w.a" "$DESTDIR/${PREFIX}/lib/lib${lib}.a"
+ done
+ ln -sf libncurses++w.a "$DESTDIR/${PREFIX}/lib/libncurses++.a"
+
+ # redirect software that looks for libcurses
+ rm -f "$DESTDIR/${PREFIX}/lib/libcursesw.so"
+ echo "INPUT(-lncursesw)" >"$DESTDIR/${PREFIX}/lib/libcursesw.so"
+ ln -sf libncurses.so "$DESTDIR/${PREFIX}/lib/libcurses.so"
+ ln -sf libncursesw.a "$DESTDIR/${PREFIX}/lib/libcursesw.a"
+ ln -sf libncurses.a "$DESTDIR/${PREFIX}/lib/libcurses.a"
+
+ # install documentation
+ mkdir -p "$DESTDIR/${PREFIX}/share/doc/ncurses"
+ cp -R doc/* "$DESTDIR/${PREFIX}/share/doc/ncurses"
+
+ # remove 'clear' and 'reset' executables, busybox provides them
+ rm -f "$DESTDIR/${PREFIX}/bin/clear" "$DESTDIR/${PREFIX}/bin/reset"
diff --git a/strata/core/readline.morph b/strata/core/readline.morph
new file mode 100644
index 00000000..511e124c
--- /dev/null
+++ b/strata/core/readline.morph
@@ -0,0 +1,6 @@
+name: readline
+kind: chunk
+build-system: autotools
+pre-configure-commands:
+- cp /usr/share/automake*/config.guess support
+- cp /usr/share/automake*/config.sub support
diff --git a/strata/cross-bootstrap.morph b/strata/cross-bootstrap.morph
index 9687ac7e..b40eaa5c 100644
--- a/strata/cross-bootstrap.morph
+++ b/strata/cross-bootstrap.morph
@@ -11,14 +11,14 @@ chunks:
build-depends: []
- name: groff
morph: strata/cross-bootstrap/groff.morph
- repo: upstream:groff
- ref: c7017a099f954bb6de60e79c876935b1bf438b9a
- unpetrify-ref: baserock/morph
+ repo: upstream:groff-git
+ ref: 16305a24e67966ace06d55e2a0b98cc0e3127a93
+ unpetrify-ref: 1.22.3
build-depends: []
- name: openssh
morph: strata/cross-bootstrap/openssh.morph
- repo: upstream:openssh
- ref: 233514106dcde5ac61a70f1043de563122e2f1c9
+ repo: upstream:openssh-git
+ ref: 782fe9e725243eeb5ad6ab9a1783b5d6bedfe0d7
unpetrify-ref: baserock/morph
build-depends:
- groff
@@ -74,7 +74,7 @@ chunks:
- six
- name: morph
repo: baserock:baserock/morph
- ref: 67afd098cd297b769b1341a460d160a2902ba4e4
+ ref: 954baf68b9bb7f8bc4fae2447ef16f37928ff01c
unpetrify-ref: master
build-depends:
- cliapp
@@ -84,6 +84,6 @@ chunks:
- name: rsync
morph: strata/cross-bootstrap/rsync.morph
repo: upstream:rsync
- ref: 9faf8e0ccff2755cd019ff64d8322226a214b013
- unpetrify-ref: baserock/morph
+ ref: 7cb0de6326c915a72253fd103dae93308031ec3f
+ unpetrify-ref: v3.1.1
build-depends: []
diff --git a/strata/cross-bootstrap/groff.morph b/strata/cross-bootstrap/groff.morph
index fed35b7d..8380a9cc 100644
--- a/strata/cross-bootstrap/groff.morph
+++ b/strata/cross-bootstrap/groff.morph
@@ -4,6 +4,8 @@ max-jobs: 1
configure-commands:
- PAGE=A4 ./configure --prefix="$PREFIX"
build-commands:
+# hack to avoid a netpbm dependency
+- touch doc/gnu.eps
- make
install-commands:
- make DESTDIR="$DESTDIR" install
diff --git a/strata/foundation.morph b/strata/foundation.morph
index 245f5c2c..23398639 100644
--- a/strata/foundation.morph
+++ b/strata/foundation.morph
@@ -12,9 +12,9 @@ chunks:
build-depends: []
- name: groff
morph: strata/foundation/groff.morph
- repo: upstream:groff
- ref: c7017a099f954bb6de60e79c876935b1bf438b9a
- unpetrify-ref: baserock/morph
+ repo: upstream:groff-git
+ ref: 16305a24e67966ace06d55e2a0b98cc0e3127a93
+ unpetrify-ref: 1.22.3
build-depends: []
- name: kmod
morph: strata/foundation/kmod.morph
@@ -106,23 +106,38 @@ chunks:
- name: lzo
morph: strata/foundation/lzo.morph
repo: upstream:lzo
- ref: 2cdfe9375f1145603d002c12be950062ae54da21
- unpetrify-ref: baserock/morph
+ ref: 5cca83e4d1b0be5825a597ab24ffa6126dc0bc95
+ unpetrify-ref: lzo-2.08
build-depends: []
- name: fuse
morph: strata/foundation/fuse.morph
repo: upstream:fuse
- ref: 4163109fd5bfe67973262610dd95ae60888c92e9
- unpetrify-ref: fuse_2_9_bugfix
+ ref: d69e627e79862e2df4ff9ff1ddb0363c4520d8a8
+ unpetrify-ref: baserock/morph
+ build-depends: []
+- name: acl
+ morph: strata/foundation/acl.morph
+ repo: upstream:acl
+ ref: f13e09bd54fd4a501c4952f002ed2752bdd9f93b
+ unpetrify-ref: v2.2.52
+ build-depends:
+ - attr
+- name: e2fsprogs
+ morph: strata/foundation/e2fsprogs.morph
+ repo: upstream:e2fsprogs
+ ref: 6a3741ad293031447b95b88431eafa77401a8987
+ unpetrify-ref: v1.42.12
build-depends: []
- name: btrfs-progs
morph: strata/foundation/btrfs-progs.morph
repo: upstream:btrfs-progs
- ref: 304f215abb836811e6d78e0a3da53d48aa0e7ca7
- unpetrify-ref: baserock/morph
+ ref: 563ff3b07d85517e3589a1f2e6f45a8265e3f071
+ unpetrify-ref: v3.18.2
build-depends:
- attr
+ - acl
- lzo
+ - e2fsprogs
- name: dbus
morph: strata/foundation/dbus.morph
repo: upstream:dbus
@@ -138,8 +153,8 @@ chunks:
build-depends: []
- name: openssh
morph: strata/foundation/openssh.morph
- repo: upstream:openssh
- ref: 233514106dcde5ac61a70f1043de563122e2f1c9
+ repo: upstream:openssh-git
+ ref: 782fe9e725243eeb5ad6ab9a1783b5d6bedfe0d7
unpetrify-ref: baserock/morph
build-depends:
- groff
diff --git a/strata/foundation/acl.morph b/strata/foundation/acl.morph
new file mode 100644
index 00000000..4489f5d5
--- /dev/null
+++ b/strata/foundation/acl.morph
@@ -0,0 +1,4 @@
+name: acl
+kind: chunk
+install-commands:
+- make DESTDIR="$DESTDIR" install-dev
diff --git a/strata/foundation/btrfs-progs.morph b/strata/foundation/btrfs-progs.morph
index 356c3f06..d5cb83f0 100644
--- a/strata/foundation/btrfs-progs.morph
+++ b/strata/foundation/btrfs-progs.morph
@@ -1,6 +1,6 @@
name: btrfs-progs
kind: chunk
build-commands:
-- make
+- make DISABLE_DOCUMENTATION=1
install-commands:
-- make DESTDIR="$DESTDIR" prefix="$PREFIX" install
+- make DESTDIR="$DESTDIR" prefix="$PREFIX" DISABLE_DOCUMENTATION=1 install
diff --git a/strata/tools/e2fsprogs.morph b/strata/foundation/e2fsprogs.morph
index 801f8abe..a57eb15a 100644
--- a/strata/tools/e2fsprogs.morph
+++ b/strata/foundation/e2fsprogs.morph
@@ -8,14 +8,14 @@ configure-commands:
# install it.
- |
./configure --prefix="$PREFIX" --sysconfdir=/etc \
- --disable-libuuid --disable-uuidd --disable-fsck
+ --disable-libuuid --disable-uuidd --disable-fsck --disable-libblkid
install-commands:
# e2fsprogs also includes tools that are provided by util-linux, so we
# need to selectively exclude them. Removing them directly from DESTDIR
# causes problems, so we need to remove them beforehand.
- |
td="$(mktemp -d)"
- make DESTDIR="$td" install
+ make DESTDIR="$td" install-libs
find "$td" \( -name blkid -o -name findfs -o -name fsck \) -delete
find "$td" \( -name blkid.8 -o -name findfs.8 \) -delete
mv "$td"/* "$DESTDIR"
diff --git a/strata/foundation/groff.morph b/strata/foundation/groff.morph
index fed35b7d..8380a9cc 100644
--- a/strata/foundation/groff.morph
+++ b/strata/foundation/groff.morph
@@ -4,6 +4,8 @@ max-jobs: 1
configure-commands:
- PAGE=A4 ./configure --prefix="$PREFIX"
build-commands:
+# hack to avoid a netpbm dependency
+- touch doc/gnu.eps
- make
install-commands:
- make DESTDIR="$DESTDIR" install
diff --git a/strata/foundation/linux-pam.morph b/strata/foundation/linux-pam.morph
index 27d0a8a3..0dfbe759 100644
--- a/strata/foundation/linux-pam.morph
+++ b/strata/foundation/linux-pam.morph
@@ -1,6 +1,8 @@
name: linux-pam
kind: chunk
build-system: autotools
+pre-configure-commands:
+- autoreconf -ivf
post-install-commands:
# sudo command is expecting this file.
- |
diff --git a/strata/morph-utils.morph b/strata/morph-utils.morph
index 4e28f48a..1645bfed 100644
--- a/strata/morph-utils.morph
+++ b/strata/morph-utils.morph
@@ -72,7 +72,7 @@ chunks:
build-depends: []
- name: morph
repo: baserock:baserock/morph
- ref: f0c5d4c0ef35cc43aa059cd2255e41c60c4cac77
+ ref: 954baf68b9bb7f8bc4fae2447ef16f37928ff01c
unpetrify-ref: master
build-depends:
- cliapp
diff --git a/strata/tools.morph b/strata/tools.morph
index 4d8c3f44..9dcc2c7b 100644
--- a/strata/tools.morph
+++ b/strata/tools.morph
@@ -10,22 +10,16 @@ chunks:
ref: c9691a9604fdf9d6711204999787d332b7141692
unpetrify-ref: baserock/morph
build-depends: []
-- name: e2fsprogs
- morph: strata/tools/e2fsprogs.morph
- repo: upstream:e2fsprogs
- ref: 6a3741ad293031447b95b88431eafa77401a8987
- unpetrify-ref: v1.42.12
- build-depends: []
- name: file
repo: upstream:file
- ref: 3b49db406667ee7189b9ea69b9d9e0bdcc43c5b7
- unpetrify-ref: baserock/morph
+ ref: f69c3fd9bcb108292e7887dd889e8b49f68c4a52
+ unpetrify-ref: file-5.22
build-depends: []
- name: gdb
morph: strata/tools/gdb.morph
- repo: upstream:gdb
- ref: c4bf5268b1a32ec475b61d2fe90e9218780c03c8
- unpetrify-ref: baserock/morph
+ repo: upstream:binutils-gdb
+ ref: 129ee12d013f4a2f09fe40a33072e6e47e949890
+ unpetrify-ref: gdb-7.8-branch
build-depends: []
- name: linux-user-chroot
repo: upstream:linux-user-chroot
@@ -41,13 +35,13 @@ chunks:
- name: rsync
morph: strata/tools/rsync.morph
repo: upstream:rsync
- ref: 9faf8e0ccff2755cd019ff64d8322226a214b013
- unpetrify-ref: baserock/morph
+ ref: 7cb0de6326c915a72253fd103dae93308031ec3f
+ unpetrify-ref: v3.1.1
build-depends: []
- name: strace
repo: upstream:strace
- ref: ad232c6aa0c2a07830d61dc4b9912478634b23b5
- unpetrify-ref: baserock/morph
+ ref: 6d8c0637e8dd0f65c667af33c612230552419db1
+ unpetrify-ref: v4.8
build-depends: []
- name: vala-bootstrap
morph: strata/tools/vala-bootstrap.morph
@@ -70,7 +64,7 @@ chunks:
- name: kexec-tools
morph: strata/tools/kexec-tools.morph
repo: upstream:kexec-tools
- ref: 9359b61ca44980d33c0bee42b9bb2e36e72835dd
+ ref: f4d1d2ad474e882df13418239aa3050673a844d7
unpetrify-ref: baserock/morph
build-depends: []
- name: device-tree-compiler
diff --git a/strata/tools/distcc.morph b/strata/tools/distcc.morph
index 9f42b50e..82adbe50 100644
--- a/strata/tools/distcc.morph
+++ b/strata/tools/distcc.morph
@@ -1,6 +1,10 @@
name: distcc
kind: chunk
build-system: autotools
-configure-commands:
+pre-configure-commands:
- NOCONFIGURE=1 ./autogen.sh
+# distcc doesn't use automake, so we cannot autoreconf it
+- cp /usr/share/automake*/config.guess .
+- cp /usr/share/automake*/config.sub .
+configure-commands:
- ./configure --prefix="$PREFIX" --disable-Werror
diff --git a/strata/tools/gdb.morph b/strata/tools/gdb.morph
index 8b82b9d9..808ff7d7 100644
--- a/strata/tools/gdb.morph
+++ b/strata/tools/gdb.morph
@@ -2,4 +2,4 @@ name: gdb
kind: chunk
build-system: autotools
configure-commands:
-- ./configure --prefix="$PREFIX" --disable-werror
+- ./configure --prefix="$PREFIX" --disable-werror --disable-gas --disable-binutils --disable-ld --disable-gold --disable-gprof
diff --git a/strata/tools/vala-bootstrap.morph b/strata/tools/vala-bootstrap.morph
index c09299f6..e55b1887 100644
--- a/strata/tools/vala-bootstrap.morph
+++ b/strata/tools/vala-bootstrap.morph
@@ -1,5 +1,7 @@
name: vala-bootstrap
kind: chunk
build-system: autotools
+pre-configure-commands:
+- autoreconf -ivf
configure-commands:
- ./configure --prefix="$PREFIX"
diff --git a/systems/build-system-armv8l64.morph b/systems/build-system-armv8l64.morph
new file mode 100644
index 00000000..15b0a52c
--- /dev/null
+++ b/systems/build-system-armv8l64.morph
@@ -0,0 +1,39 @@
+name: build-system-armv8l64
+kind: system
+description:
+- |
+ The system that should be used for building all other Baserock systems
+ for little endian 64-bit ARMv8 computers.
+arch: armv8l64
+strata:
+- name: build-essential
+ morph: strata/build-essential.morph
+- name: core
+ morph: strata/core.morph
+- name: foundation
+ morph: strata/foundation.morph
+- name: bsp-armv8l64-generic
+ morph: strata/bsp-armv8l64-generic.morph
+- name: tools
+ morph: strata/tools.morph
+- name: morph-utils
+ morph: strata/morph-utils.morph
+- name: nfs
+ morph: strata/nfs.morph
+- name: ansible
+ morph: strata/ansible.morph
+- name: cloudinit-support
+ morph: strata/cloudinit-support.morph
+- name: openstack-clients
+ morph: strata/openstack-clients.morph
+- name: devtools
+ morph: strata/devtools.morph
+configuration-extensions:
+- set-hostname
+- add-config-files
+- nfsboot
+- install-files
+- distbuild
+- fstab
+- mason
+- cloud-init
diff --git a/systems/cross-bootstrap-system-armv8l64-generic.morph b/systems/cross-bootstrap-system-armv8l64-generic.morph
new file mode 100644
index 00000000..30094e74
--- /dev/null
+++ b/systems/cross-bootstrap-system-armv8l64-generic.morph
@@ -0,0 +1,11 @@
+name: cross-bootstrap-system-armv8l64-generic
+kind: system
+description: A system that produces the minimum needed to build a devel system
+arch: armv8l64
+strata:
+- name: build-essential
+ morph: strata/build-essential.morph
+- name: core
+ morph: strata/core.morph
+- name: cross-bootstrap
+ morph: strata/cross-bootstrap.morph