summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Dale <richard.dale@codethink.co.uk>2015-03-04 08:37:48 +0000
committerRichard Dale <richard.dale@codethink.co.uk>2015-04-01 10:20:24 +0100
commit4f72c438b5d95da379b1c630bc27434e115dadea (patch)
tree9a62e8950320ed6aa100d960d9ea286ccb950720
parentda2ac95e736f9309d87ecd8bcbf07a36131d6ccd (diff)
downloaddefinitions-4f72c438b5d95da379b1c630bc27434e115dadea.tar.gz
Add chunks for building musl version of core packages
-rw-r--r--strata/build-essential-musl.morph2
-rw-r--r--strata/build-essential-musl/musl.morph3
-rw-r--r--strata/build-essential-musl/stage2-musl.morph1
-rw-r--r--strata/build-essential-musl/zlib.morph9
-rw-r--r--strata/core-musl.morph217
-rw-r--r--strata/core/flex-musl.morph12
-rw-r--r--strata/core/gettext-tiny.morph6
-rw-r--r--strata/core/git-musl.morph11
-rw-r--r--strata/core/openssl-new-musl.morph17
-rw-r--r--strata/core/xz-musl.morph11
10 files changed, 278 insertions, 11 deletions
diff --git a/strata/build-essential-musl.morph b/strata/build-essential-musl.morph
index c9339a0b..63353e5f 100644
--- a/strata/build-essential-musl.morph
+++ b/strata/build-essential-musl.morph
@@ -242,7 +242,7 @@ chunks:
- linux-api-headers-musl
- name: zlib-musl
- morph: strata/build-essential-musl/zlib-musl.morph
+ morph: strata/build-essential-musl/zlib.morph
repo: upstream:zlib
ref: db333af7e9b90a23fd7f9cd8dc128123b34bf698
unpetrify-ref: baserock/build-essential
diff --git a/strata/build-essential-musl/musl.morph b/strata/build-essential-musl/musl.morph
index cb52ac16..b6e11f90 100644
--- a/strata/build-essential-musl/musl.morph
+++ b/strata/build-essential-musl/musl.morph
@@ -6,4 +6,5 @@ build-commands:
- make
install-commands:
- make install
-- install -d "$DESTDIR/etc" ; echo "/lib:/lib64:/usr/lib:/usr/lib64" >> "$DESTDIR/etc/ld-musl-$MORPH_ARCH.path"
+- install -d "$DESTDIR$PREFIX/bin" ; cd "$DESTDIR$PREFIX/bin" ; ln -s ../../lib/ld-musl* ldd
+- install -d "$DESTDIR/etc" ; echo "/lib:/lib64:/usr/lib64:/usr/lib" >> "$DESTDIR/etc/ld-musl-$MORPH_ARCH.path"
diff --git a/strata/build-essential-musl/stage2-musl.morph b/strata/build-essential-musl/stage2-musl.morph
index cd84f3b0..f1850995 100644
--- a/strata/build-essential-musl/stage2-musl.morph
+++ b/strata/build-essential-musl/stage2-musl.morph
@@ -43,5 +43,6 @@ install-commands:
"$DESTDIR/lib64/ld64.so.1" ;;
*)
loader=$(basename $(ls "$DESTDIR$PREFIX"/lib/ld-musl*))
+ [ -z $loader ] && ( echo "Bug in stage2-musl ld.so symlinks" ; exit 1 )
ln -s "$PREFIX/lib/$loader" "$DESTDIR/lib/$loader"
esac
diff --git a/strata/build-essential-musl/zlib.morph b/strata/build-essential-musl/zlib.morph
deleted file mode 100644
index a69eebf3..00000000
--- a/strata/build-essential-musl/zlib.morph
+++ /dev/null
@@ -1,9 +0,0 @@
-name: zlib
-kind: chunk
-max-jobs: 1
-configure-commands:
-- ./configure --prefix="$PREFIX"
-build-commands:
-- make
-install-commands:
-- make DESTDIR="$DESTDIR" install
diff --git a/strata/core-musl.morph b/strata/core-musl.morph
new file mode 100644
index 00000000..c4169b87
--- /dev/null
+++ b/strata/core-musl.morph
@@ -0,0 +1,217 @@
+name: core-musl
+kind: stratum
+description: Core components of a Baserock base system that are build tools required
+ for the BSP and Foundation strata, but a step above build-essential
+build-depends:
+- morph: strata/build-essential-musl.morph
+chunks:
+- name: sqlite3
+ repo: upstream:sqlite3
+ ref: 24adc227bc29cd17e39df097fbca389c7724cd14
+ unpetrify-ref: sqlite-autoconf-3080801
+ build-depends: []
+- name: cmake
+ morph: strata/core/cmake.morph
+ repo: upstream:cmake
+ ref: 0b3781e4c497566acaa504d4106d11c02a642501
+ unpetrify-ref: v2.8.12.2
+ build-depends: []
+- name: gdbm
+ morph: strata/core/gdbm.morph
+ repo: upstream:gdbm-tarball
+ ref: e5faeaaf75ecfb705a9b643b3e4cb881ebb69f48
+ unpetrify-ref: gdbm-1.11
+ build-depends: []
+- name: gettext-tiny
+ morph: strata/core/gettext-tiny.morph
+ repo: file:///src/workspace/gettext-tiny
+ ref: eb8abea562725223ac74555879aae5a023215ba8
+ unpetrify-ref: v0.0.4
+ build-depends: []
+- name: mini-utils
+ morph: strata/core/mini-utils.morph
+ repo: file:///src/workspace/mini-utils
+ ref: 934bfa907d278bc19172938d7c09379fd8d997f9
+ unpetrify-ref: master
+ build-depends: []
+- name: ncurses
+ morph: strata/core/ncurses.morph
+ repo: upstream:ncurses
+ ref: f67398afa6a76fbc902cc0cea963d5151fa2a953
+ unpetrify-ref: ncurses-5.9-20150131
+ build-depends: []
+- name: perl
+ morph: strata/core/perl.morph
+ repo: upstream:perl
+ ref: 78f9a3c880f11578fb9ff9c7d5f7e34b602d2ad1
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - gdbm
+- name: texinfo-tarball
+ morph: strata/core/texinfo-tarball.morph
+ repo: upstream:texinfo-tarball
+ ref: 6a55f074b1f67d02149c13931eb1df9f0e539b15
+ unpetrify-ref: texinfo-5.2
+ build-depends:
+ - ncurses
+ - perl
+- name: autoconf-tarball
+ morph: strata/core/autoconf-tarball.morph
+ repo: upstream:autoconf-tarball
+ ref: 55d1d2c339bc5f935f6d8d702e98b7bd5d968e9d
+ unpetrify-ref: autoconf-2.69
+ build-depends:
+ - perl
+- name: automake
+ morph: strata/core/automake.morph
+ repo: upstream:automake
+ ref: db43dd473361d90d8b00362cfef5bac8e722000d
+ unpetrify-ref: v1.15
+ build-depends:
+ - autoconf-tarball
+ - perl
+ - texinfo-tarball
+- name: bash
+ morph: strata/core/bash.morph
+ repo: upstream:bash
+ ref: 3590145af6f1c9fa321dff231f69ae696e7e740b
+ unpetrify-ref: baserock/bash-4.3-patch-27
+ build-depends: []
+- name: flex
+ morph: strata/core/flex-musl.morph
+ repo: upstream:flex
+ ref: de10f98e8a2dc2a021796811490d0f30c3cd90bf
+ unpetrify-ref: baserock/build-essential
+ build-depends:
+ - automake
+ - gettext-tiny
+- name: openssl-new
+ morph: strata/core/openssl-new-musl.morph
+ repo: upstream:openssl-new
+ ref: 872e681c00a713e840ebed77a4e05fa0e181f16f
+ unpetrify-ref: OpenSSL_1_0_1j
+ build-depends:
+ - perl
+- name: bzip2
+ morph: strata/core/bzip2.morph
+ repo: upstream:bzip2
+ ref: 8deafa68e52b230018c0318dc7959ff9af3ad2a5
+ 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:
+ - automake
+- name: cpython
+ morph: strata/core/cpython.morph
+ repo: upstream:cpython
+ ref: d0188e98ecf02e007d85fc34944f8be8f91b7e94
+ unpetrify-ref: v2.7.9
+ build-depends:
+ - openssl-new
+ - bzip2
+ - sqlite3
+ - ncurses
+ - readline
+- name: libtool-tarball
+ morph: strata/core/libtool-tarball.morph
+ repo: upstream:libtool-tarball
+ ref: c026ca36e37d2643623a75d0d3e9e451023139f3
+ unpetrify-ref: libtool-2.4.6
+ build-depends: []
+- name: gtk-doc-stub
+ repo: upstream:gtk-doc-stub
+ ref: 58ec0d8593541ef7ae522ce42ebec6f98536c4e0
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - bash
+
+- name: ca-certificates
+ morph: strata/core/ca-certificates.morph
+ repo: upstream:ca-certificates
+ ref: e9b06b26d9e57444e74a5cb6beca3f12726fc3c6
+ unpetrify-ref: baserock/debian/20140325
+ build-depends:
+ - automake
+ - cpython
+- name: curl
+ morph: strata/core/curl.morph
+ repo: upstream:curl
+ ref: 202aa9f7758636730299b86715d924f54468a908
+ unpetrify-ref: curl-7_38_0
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - libtool-tarball
+ - openssl-new
+ - ca-certificates
+- name: libexpat
+ morph: strata/core/libexpat.morph
+ repo: upstream:libexpat
+ ref: 7cfc09db3e258129ab05811f2f9e351746ddab9f
+ unpetrify-ref: R_2_1_0
+ build-depends:
+ - cmake
+- name: git
+ morph: strata/core/git-musl.morph
+ repo: upstream:git
+ ref: 9874fca7122563e28d699a911404fc49d2a24f1c
+ unpetrify-ref: v2.3.0
+ build-depends:
+ - autoconf-tarball
+ - cpython
+ - curl
+ - libexpat
+ - openssl-new
+- name: help2man
+ repo: upstream:help2man
+ ref: 83bab7e2e8e24a380266a9a247c029c49b0de666
+ unpetrify-ref: baserock/v1.46.5
+ build-depends:
+ - autoconf-tarball
+ - automake
+- name: gperf
+ morph: strata/core/gperf.morph
+ repo: upstream:gperf
+ ref: 5094e4a539adf845111013f82c2c4fcaec637983
+ unpetrify-ref: baserock/morph
+ build-depends: []
+- name: pkg-config
+ morph: strata/core/pkg-config.morph
+ repo: upstream:pkg-config
+ ref: 74ceac54ef6f9247c00f08eecd8cca811a3c5934
+ unpetrify-ref: pkg-config-0.28
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - libtool-tarball
+- name: util-linux
+ morph: strata/core/util-linux.morph
+ repo: upstream:util-linux
+ ref: b567c9cbc854a36da0a198e4dcc463e134d26a25
+ unpetrify-ref: v2.25.2
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tiny
+ - git
+ - libtool-tarball
+- name: nano
+ morph: strata/core/nano.morph
+ repo: upstream:nano-tarball
+ ref: 8b74abeb02c01ddc768c465a826360cf33cec063
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - ncurses
+ - automake
+ - gettext-tiny
+- name: bc
+ repo: upstream:bc-tarball
+ ref: 0956d119432ff6a2e85bae1fa336df799cad70b0
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - flex
+ - texinfo-tarball
diff --git a/strata/core/flex-musl.morph b/strata/core/flex-musl.morph
new file mode 100644
index 00000000..7ca8f538
--- /dev/null
+++ b/strata/core/flex-musl.morph
@@ -0,0 +1,12 @@
+name: flex
+kind: chunk
+configure-commands:
+- ./configure --prefix="$PREFIX"
+build-commands:
+- make dist_doc_DATA=
+install-commands:
+- make dist_doc_DATA= DESTDIR="$DESTDIR" install
+- ln -s libfl.a "$DESTDIR$PREFIX/lib/libl.a"
+- echo "#!$PREFIX/bin/sh" >"$DESTDIR$PREFIX/bin/lex"
+- echo 'exec '"$PREFIX"'/bin/flex -l "$@"' >>"$DESTDIR$PREFIX/bin/lex"
+- chmod 755 "$DESTDIR$PREFIX/bin/lex"
diff --git a/strata/core/gettext-tiny.morph b/strata/core/gettext-tiny.morph
new file mode 100644
index 00000000..842c35ea
--- /dev/null
+++ b/strata/core/gettext-tiny.morph
@@ -0,0 +1,6 @@
+name: gettext-tiny
+kind: chunk
+build-commands:
+- make prefix=$PREFIX
+install-commands:
+- make prefix=$PREFIX install
diff --git a/strata/core/git-musl.morph b/strata/core/git-musl.morph
new file mode 100644
index 00000000..9880c1e9
--- /dev/null
+++ b/strata/core/git-musl.morph
@@ -0,0 +1,11 @@
+name: git
+kind: chunk
+build-system: autotools
+pre-configure-commands:
+- make configure
+configure-commands:
+- ./configure --prefix=$PREFIX NO_GETTEXT=1 NO_MSGFMT=1 NO_TCLTK=1
+build-commands:
+- make all NO_GETTEXT=1 NO_MSGFMT=1 NO_TCLTK=1
+install-commands:
+- make install PREFIX=$PREFIX DESTDIR=$DESTDIR NO_GETTEXT=1 NO_MSGFMT=1 NO_TCLTK=1
diff --git a/strata/core/openssl-new-musl.morph b/strata/core/openssl-new-musl.morph
new file mode 100644
index 00000000..b1113189
--- /dev/null
+++ b/strata/core/openssl-new-musl.morph
@@ -0,0 +1,17 @@
+name: openssl-new
+kind: chunk
+max-jobs: 1
+configure-commands:
+- sed -i -e 's,^LIBNAMES=\\(.*\\) padlock \\(.*\\),LIBNAMES=\\1 \\2,g' engines/Makefile
+- |
+ if [ "$(uname -m)" = "ppc64" ]; then
+ sh ./Configure linux-ppc64 --openssldir=/etc/ssl --prefix="${PREFIX-/usr}" --libdir=lib shared
+ else
+ sed -i -e 's/DTERMIO /DTERMIOS /' Configure
+ ./config --openssldir=/etc/ssl --prefix="${PREFIX-/usr}" --libdir=lib shared
+ fi
+build-commands:
+- sed -i -e 's/defined(linux)/0/' ./crypto/ui/ui_openssl.c
+- make
+install-commands:
+- make INSTALL_PREFIX="$DESTDIR" install_sw
diff --git a/strata/core/xz-musl.morph b/strata/core/xz-musl.morph
new file mode 100644
index 00000000..43fefd05
--- /dev/null
+++ b/strata/core/xz-musl.morph
@@ -0,0 +1,11 @@
+name: xz
+kind: chunk
+configure-commands:
+- sed -i -e '/AUTOPOINT/d' autogen.sh
+- sed -i -e '/GETTEXT/d' configure.ac
+- ./autogen.sh --prefix=$PREFIX
+- ./configure --prefix=$PREFIX
+build-commands:
+- make
+install-commands:
+- make DESTDIR="$DESTDIR" PREFIX="$PREFIX" install