summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2015-02-20 16:16:06 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2015-02-20 16:16:06 +0000
commit429a4600c9c7755ab3a3338df820a586930eee67 (patch)
tree3e4f0430d59c527573b89e07735ce8081354f713
parent2c3baf2c61da8b7eb286bbc9de862a5d68af189b (diff)
parent96168a6614a567928dd2f244998a9ad3e8f29359 (diff)
downloadinfrastructure-429a4600c9c7755ab3a3338df820a586930eee67.tar.gz
Merge remote-tracking branch 'baserock/master'
-rw-r--r--clusters/sdk-example-cluster.morph4
-rwxr-xr-xsdk.write4
-rw-r--r--strata/apache-httpd-server.morph40
-rw-r--r--strata/apache-httpd-server/apr.morph22
-rw-r--r--strata/apache-httpd-server/httpd-server.morph67
-rw-r--r--strata/apache-httpd-server/mod_wsgi.morph18
-rw-r--r--strata/armv7lhf-cross-toolchain.morph34
-rw-r--r--strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph80
-rw-r--r--strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph45
-rw-r--r--strata/armv7lhf-cross-toolchain/armv7lhf-cross-glibc.morph (renamed from strata/armv7lhf-cross-toolchain/armv7lhf-cross-eglibc.morph)26
-rw-r--r--strata/armv7lhf-cross-toolchain/armv7lhf-cross-libstdc++.morph32
-rw-r--r--strata/audio-bluetooth.morph4
-rw-r--r--strata/bsp-armv7-highbank.morph4
-rw-r--r--strata/bsp-armv7-versatile.morph4
-rw-r--r--strata/bsp-armv7b-highbank.morph4
-rw-r--r--strata/bsp-armv7b-vexpress-tc2.morph4
-rw-r--r--strata/bsp-ppc64-generic.morph4
-rw-r--r--strata/bsp-wandboard.morph4
-rw-r--r--strata/bsp-x86_32-generic.morph4
-rw-r--r--strata/bsp-x86_64-generic.morph4
-rw-r--r--strata/bsp-x86_both-tools.morph4
-rw-r--r--strata/build-essential.morph3
-rw-r--r--strata/build-essential/m4-tarball.morph2
-rw-r--r--strata/coreutils-common.morph14
-rw-r--r--strata/coreutils-common/diff.morph7
-rw-r--r--strata/coreutils-common/sed.morph12
-rw-r--r--strata/databases.morph16
-rw-r--r--strata/databases/memcached.morph8
-rw-r--r--strata/django.morph35
-rw-r--r--strata/enlightenment.morph2
-rw-r--r--strata/erlang.morph15
-rw-r--r--strata/erlang/erlang-sd_notify.morph8
-rw-r--r--strata/erlang/rebar.morph6
-rw-r--r--strata/foundation/systemd.morph~28
-rw-r--r--strata/graphics-common.morph1
-rw-r--r--strata/graphics-common/pixman.morph5
-rw-r--r--strata/input-common.morph4
-rw-r--r--strata/libdrm-common.morph8
-rw-r--r--strata/libdrm-common/drm.morph4
-rw-r--r--strata/lorry.morph32
-rw-r--r--strata/lorry/cvs-tarball.morph3
-rw-r--r--strata/lorry/libapr-util.morph (renamed from strata/lorry/libapr-util-tarball.morph)4
-rw-r--r--strata/lorry/libapr.morph21
-rw-r--r--strata/lorry/libserf.morph6
-rw-r--r--strata/lorry/subversion-tarball.morph2
-rw-r--r--strata/lorry/swig-tarball.morph2
-rw-r--r--strata/morph-utils.morph8
-rw-r--r--strata/multimedia-common.morph17
-rw-r--r--strata/multimedia-gstreamer-0.10.morph1
-rw-r--r--strata/multimedia-gstreamer.morph (renamed from strata/multimedia.morph)6
-rw-r--r--strata/networking-utils.morph29
-rw-r--r--strata/networking-utils/iproute2.morph10
-rw-r--r--strata/networking-utils/ipset.morph6
-rw-r--r--strata/nfs.morph4
-rw-r--r--strata/qt5-tools-qtmultimedia.morph2
-rw-r--r--strata/qt5-tools-qtwebkit.morph2
-rw-r--r--strata/ruby/ruby-1.8.morph10
-rw-r--r--strata/ruby/ruby.morph10
-rw-r--r--strata/virtualization.morph42
-rw-r--r--strata/virtualization/dmidecode.morph7
-rw-r--r--strata/virtualization/ebtables.morph7
-rw-r--r--strata/virtualization/libvirt.morph27
-rw-r--r--strata/virtualization/openvswitch.morph11
-rw-r--r--strata/wayland-generic.morph4
-rw-r--r--strata/weston-common.morph4
-rw-r--r--strata/x-generic.morph22
-rw-r--r--strata/xstatic.morph108
-rw-r--r--systems/armv7lhf-cross-toolchain-system-x86_32-generic.morph18
-rw-r--r--systems/armv7lhf-cross-toolchain-system-x86_64-generic.morph18
-rw-r--r--systems/devel-system-armv8l64.morph43
-rw-r--r--systems/genivi-baseline-system-armv7lhf-jetson.morph6
-rw-r--r--systems/genivi-baseline-system-armv7lhf-versatile.morph6
-rw-r--r--systems/genivi-baseline-system-x86_64-generic.morph6
-rw-r--r--systems/gitlab-ci-runner.morph6
-rw-r--r--systems/qt4-devel-system-x86_64-generic.morph2
-rw-r--r--systems/qt5-devel-system-x86_64-generic.morph6
-rw-r--r--systems/weston-system-armv7lhf-jetson.morph12
-rw-r--r--systems/weston-system-x86_64-generic.morph8
-rw-r--r--systems/xfce-system.morph6
79 files changed, 897 insertions, 237 deletions
diff --git a/clusters/sdk-example-cluster.morph b/clusters/sdk-example-cluster.morph
index f71d093d..92e4a413 100644
--- a/clusters/sdk-example-cluster.morph
+++ b/clusters/sdk-example-cluster.morph
@@ -31,11 +31,11 @@ description: |
See the documentation of the sdk.write extension for more information.
systems:
-- morph: systems/armv7lhf-cross-toolchain-system-x86_32-generic.morph
+- morph: systems/armv7lhf-cross-toolchain-system-x86_64.morph
deploy:
sdk:
type: sdk
- location: armv7lhf-cross-toolchain-system-x86_32-generic.sh
+ location: armv7lhf-cross-toolchain-system-x86_64.sh
PREFIX: /usr
TARGET: armv7lhf-baserock-linux-gnueabi
subsystems:
diff --git a/sdk.write b/sdk.write
index 3b07ea9d..8d3d2a63 100755
--- a/sdk.write
+++ b/sdk.write
@@ -148,7 +148,7 @@ if [ "$#" != 1 ]; then
exit 1
fi
-TOOLCHAIN_PATH="$1"
+TOOLCHAIN_PATH="$(readlink -f \"$1\")"
sedescape(){
# Escape the passed in string so it can be safely interpolated into
@@ -227,7 +227,7 @@ patch_elves(){
local linker="$4"
local lib_path="$5"
find "$root" \( -path "$inner_sysroot" -prune \) -o -type f \
- -type f -perm +111 \
+ -type f -perm +u=x \
-exec sh -c 'file "$1" | grep -q "ELF"' - {} \; \
-exec "$linker" --library-path "$lib_path" \
"$patchelf" --set-interpreter "$linker" \
diff --git a/strata/apache-httpd-server.morph b/strata/apache-httpd-server.morph
new file mode 100644
index 00000000..1692c61c
--- /dev/null
+++ b/strata/apache-httpd-server.morph
@@ -0,0 +1,40 @@
+name: apache-httpd-server
+kind: stratum
+description: apache http web server and some utilities related to it
+build-depends:
+- morph: strata/tools.morph
+- morph: strata/pcre-utils.morph
+chunks:
+- name: apr
+ morph: strata/apache-httpd-server/apr.morph
+ repo: upstream:apache/apr
+ ref: 3c818c6d7351f0130282d212a69035642f5fecad
+ unpetrify-ref: trunk
+ build-depends: []
+- name: httpd
+ morph: strata/apache-httpd-server/httpd-server.morph
+ repo: upstream:apache/httpd
+ ref: 6d8e0b2fd95268fcba96326ba9dce7bb8f712c19
+ unpetrify-ref: 2.4.10
+ build-depends:
+ - apr
+- name: psutil
+ repo: upstream:python-packages/psutil
+ ref: 2bc8555f0428af81c2d067aa76168ed7bc5e0179
+ unpetrify-ref: release-2.2.0
+ build-depends: []
+- name: mod_wsgi-metrics
+ repo: upstream:python-packages/mod_wsgi-metrics
+ ref: ec715eb593255229f9f45f3f323edbb845c691d8
+ unpetrify-ref: 1.1.1
+ build-depends:
+ - psutil
+- name: mod_wsgi
+ morph: strata/apache-httpd-server/mod_wsgi.morph
+ repo: upstream:python-packages/mod_wsgi
+ ref: 1be8b37aaf07d8cb3083da99d6fda12375221b07
+ unpetrify-ref: 4.4.5
+ build-depends:
+ - apr
+ - httpd
+ - mod_wsgi-metrics
diff --git a/strata/apache-httpd-server/apr.morph b/strata/apache-httpd-server/apr.morph
new file mode 100644
index 00000000..aaba1954
--- /dev/null
+++ b/strata/apache-httpd-server/apr.morph
@@ -0,0 +1,22 @@
+name: apr
+kind: chunk
+build-system: autotools
+configure-commands:
+- ./buildconf
+- |
+ ./configure --prefix="$PREFIX" \
+ --disable-static \
+ --enable-threads \
+ --with-installbuilddir="$PREFIX"/share/apr-1/build
+post-install-commands:
+# Install files required for apr-util and httpd
+- |
+ for file in find_apr.m4 apr_common.m4 install.sh gen-build.py get-version.sh \
+ config.guess config.sub; do
+ cp build/"$file" "$DESTDIR$PREFIX"/share/apr-1/build/"$file";
+ done
+# Create a symlink in the build directory to the include directory (this is needed for httpd)
+- ln -sf /usr/include/apr-2 "$DESTDIR$PREFIX"/share/apr-1/build/
+# Copy apr headers needed for mod_wsgi
+- cp include/private/apr_support.h "$DESTDIR$PREFIX"/include/apr-2
+- cp include/arch/unix/apr_private.h "$DESTDIR$PREFIX"/include/apr-2
diff --git a/strata/apache-httpd-server/httpd-server.morph b/strata/apache-httpd-server/httpd-server.morph
new file mode 100644
index 00000000..f7662912
--- /dev/null
+++ b/strata/apache-httpd-server/httpd-server.morph
@@ -0,0 +1,67 @@
+name: httpd-server
+kind: chunk
+build-system: autotools
+configure-commands:
+- ./buildconf --with-apr=/usr/share/apr-1
+# We override --libexecdir with the same value as --enable-layout=RPM
+# ought to provide, because otherwise there is a bug where when mod_wsgi
+# calls apxs, it fails as follows because the variable is empty.
+#
+#/usr/share/apr-1/build/libtool --silent --mode=link gcc -std=gnu99
+# -o src/server/mod_wsgi.la -rpath # -module -avoid-version
+# src/server/wsgi_validate.lo src/server/wsgi_stream.lo
+# src/server/wsgi_server.lo src/server/wsgi_restrict.lo
+# src/server/wsgi_metrics.lo src/server/wsgi_logger.lo
+# src/server/wsgi_interp.lo src/server/wsgi_daemon.lo
+# src/server/wsgi_convert.lo src/server/wsgi_buckets.lo
+# src/server/wsgi_apache.lo src/server/mod_wsgi.lo
+# -L/usr/lib -L/usr/lib/python2.7/config -lpython2.7 -lpthread -ldl -lutil -lm
+# libtool: error: only absolute run-paths are allowed
+# apxs:Error: Command failed with rc=65536
+#
+- |
+ ./configure --prefix="$PREFIX" \
+ --libexecdir="$PREFIX"/lib/httpd/modules \
+ --enable-layout=RPM \
+ --enable-mpms-shared=all \
+ --with-apr="$PREFIX"/bin/apr-2-config \
+ --enable-suexec --with-suexec \
+ --with-suexec-caller=apache \
+ --with-suexec-docroot=/var/www \
+ --with-suexec-logfile=/var/log/httpd/suexec.log \
+ --with-suexec-bin="$PREFIX"/lib/httpd/suexec \
+ --with-suexec-uidmin=500 --with-suexec-gidmin=100\
+ --with-suexec-userdir=public_html \
+ --enable-pie \
+ --with-pcre \
+ --enable-mods-shared=all \
+ --enable-ssl --with-ssl \
+ --enable-case-filter --enable-case-filter-in \
+ --enable-cgid --enable-cgi\
+ --enable-so
+post-install-commands:
+# Add perl interpreter path to apxs script, required for loading mod_wsgi.
+- |
+ sed -i 's|#!/replace/with/path/to/perl/interpreter -w|#!/usr/bin/perl -w|g' \
+ "$DESTDIR$PREFIX"/bin/apxs
+# Add conf.d directory where apache will look for other configurations to load.
+- mkdir -p "$DESTDIR"/etc/httpd/conf.d
+- echo 'Include /etc/httpd/conf.d/*.conf' >> "$DESTDIR"/etc/httpd/conf/httpd.conf
+####################################################################################
+# This chunk should add an apache user and an apache group, create the apache home
+# directory and move suexec to /usr/lib/httpd/suexec as system-integration time.
+# This is not possible because linux-user-chroot drops all capabilities for security so
+# it does not allow to change the owners of directories or files.
+# So for now you should create a script which includes the following commands:
+# - mkdir -p /var/www
+# - groupadd -r apache
+# - |
+# useradd -c "Apache Server" -d /var/www -g apache \
+# -s /bin/false apache
+#
+# - mkdir -p /usr/lib/httpd
+# - mv -v /usr/bin/suexec /usr/lib/httpd/suexec
+# - chgrp apache /usr/lib/httpd/suexec
+# - chmod 4754 /usr/lib/httpd/suexec
+# - chown -R apache:apache /var/www
+####################################################################################
diff --git a/strata/apache-httpd-server/mod_wsgi.morph b/strata/apache-httpd-server/mod_wsgi.morph
new file mode 100644
index 00000000..86004ad3
--- /dev/null
+++ b/strata/apache-httpd-server/mod_wsgi.morph
@@ -0,0 +1,18 @@
+name: mod_wsgi
+kind: chunk
+build-system: autotools
+configure-commands:
+- |
+ ./configure --prefix="$PREFIX" \
+ --with-apxs=/usr/bin/apxs
+post-install-commands:
+- |
+ install -D -m 644 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/httpd/conf.d/wsgi.conf
+ # NOTE: mod_wsgi can not coexist in the same apache process as
+ # mod_wsgi_python3. Only load if mod_wsgi_python3 is not
+ # already loaded.
+
+ <IfModule !wsgi_module>
+ LoadModule wsgi_module /usr/lib/httpd/modules/mod_wsgi.so
+ </IfModule>
+ EOF
diff --git a/strata/armv7lhf-cross-toolchain.morph b/strata/armv7lhf-cross-toolchain.morph
index c76ae537..a3539d65 100644
--- a/strata/armv7lhf-cross-toolchain.morph
+++ b/strata/armv7lhf-cross-toolchain.morph
@@ -7,36 +7,50 @@ chunks:
- name: armv7lhf-cross-binutils
morph: strata/armv7lhf-cross-toolchain/armv7lhf-cross-binutils.morph
repo: upstream:binutils-redhat
- ref: 987eb543a034cddc4eeb103f08f566f24a5f964a
+ ref: b1d3b01332ae49a60ff5d6bf53d3a5b1805769c8
unpetrify-ref: baserock/build-essential
build-depends: []
+
- name: armv7lhf-cross-linux-api-headers
morph: strata/armv7lhf-cross-toolchain/armv7lhf-cross-linux-api-headers.morph
repo: upstream:linux
ref: df2e1b9168a7ab5dd8149e38b5ac70cdef86d1fa
unpetrify-ref: baserock/v3.8
build-depends: []
+
- name: armv7lhf-cross-gcc-nolibc
morph: strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph
repo: upstream:gcc-tarball
- ref: 0a1a077d3466cd99a4ed5590db2146b3fec6fff1
+ ref: b3c9b176c1f10ebeff5700eb3760e9511f23fa06
unpetrify-ref: baserock/build-essential
build-depends:
- armv7lhf-cross-binutils
-- name: armv7lhf-cross-eglibc
- morph: strata/armv7lhf-cross-toolchain/armv7lhf-cross-eglibc.morph
- repo: upstream:eglibc2
- ref: 43ee5d250ad47d2bee8ec17954efb7f22d2b804c
- unpetrify-ref: baserock/2.15-build-essential
+
+- name: armv7lhf-cross-glibc
+ morph: strata/armv7lhf-cross-toolchain/armv7lhf-cross-glibc.morph
+ repo: upstream:glibc
+ ref: 52cf9a0153c14df4f6ae3bd0e1e6cc5d171e586c
+ unpetrify-ref: baserock/glibc-2.20
build-depends:
- armv7lhf-cross-binutils
- armv7lhf-cross-gcc-nolibc
- armv7lhf-cross-linux-api-headers
+
- name: armv7lhf-cross-gcc
morph: strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph
repo: upstream:gcc-tarball
- ref: b0254026149b13782eae26d38435a4c62a002cf0
- unpetrify-ref: baserock/build-essential-4.7
+ ref: b3c9b176c1f10ebeff5700eb3760e9511f23fa06
+ unpetrify-ref: baserock/build-essential
+ build-depends:
+ - armv7lhf-cross-binutils
+ - armv7lhf-cross-glibc
+
+- name: armv7lhf-cross-libstdc++
+ morph: strata/armv7lhf-cross-toolchain/armv7lhf-cross-libstdc++.morph
+ repo: upstream:gcc-tarball
+ ref: b3c9b176c1f10ebeff5700eb3760e9511f23fa06
+ unpetrify-ref: baserock/build-essential
build-depends:
- armv7lhf-cross-binutils
- - armv7lhf-cross-eglibc
+ - armv7lhf-cross-gcc
+ - armv7lhf-cross-glibc
diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph
index d164a60b..b5a8c338 100644
--- a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph
+++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph
@@ -6,49 +6,69 @@ configure-commands:
# Configure flag notes:
# 1. Standard flags. See gcc.morph.
-# 2. Our binutils is for the final $TARGET, rather than the intermediate
+# 2. See stage1-gcc.morph.
+# 3. Our binutils is for the final $TARGET, rather than the intermediate
# target our GCC is being built for, so we need to set
# with-build-time-tools to get it to find our binutils at
# build-time and with-as and with-ld so our temporary GCC uses
# the appropriate tools when it compiles our libc, rather than
# trying to use $TARGET_STAGE1-as when producing binaries.
-# 3. Disable stuff that doesn't work when building a cross compiler
+# 4. Disable stuff that doesn't work when building a cross compiler
# without an existing libc, and generally try to keep this build as
# simple as possible.
- |
export MORPH_ARCH=armv7lhf
export TARGET=armv7lhf-baserock-linux-gnueabi
export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
- cd o &&
- ../configure \
- $(../morph-arch-config) \
- --build=$(sh ../config.guess) --host=$(sh ../config.guess) \
- --target="$TARGET_STAGE1" \
- --prefix="$PREFIX" \
- --disable-bootstrap --disable-nls \
- `# [1]` --libdir="$PREFIX/lib" --disable-multilib --disable-libgomp \
- --without-cloog --without-ppl \
- --with-mpfr-include="$(pwd)/../mpfr/src" \
- --with-mpfr-lib="$(pwd)/mpfr/src/.libs" \
- `# [2]` --with-build-time-tools="$PREFIX/$TARGET/bin" \
- --with-as="$PREFIX/$TARGET/bin/as" \
- --with-ld="$PREFIX/$TARGET/bin/ld" \
- `# [3]` --enable-languages=c --disable-decimal-float \
- --disable-libmudflap --disable-libquadmath --disable-libssp \
- --disable-shared --disable-threads --disable-target-libiberty \
- --disable-target-zlib --without-headers --with-newlib \
- --with-system-zlib
+
+ case "$MORPH_ARCH" in
+ armv7lhf) ARCH_FLAGS="--with-arch=armv7-a \
+ --with-cpu=cortex-a9 \
+ --with-tune=cortex-a9 \
+ --with-fpu=vfpv3-d16 \
+ --with-float=hard" ;;
+ armv7*) ARCH_FLAGS="--with-arch=armv7-a" ;;
+ esac
+
+ cd o && ../configure \
+ $ARCH_FLAGS \
+ --build=$(sh ../config.guess) \
+ --host=$(sh ../config.guess) \
+ --target="$TARGET_STAGE1" \
+ --prefix="$PREFIX" \
+ `# [1]` --libdir="$PREFIX/lib" \
+ `# [2]` --with-sysroot=/nonexistentdir \
+ --with-newlib \
+ `# [2]` --with-local-prefix="$PREFIX" \
+ `# [2]` --with-native-system-header-dir="$PREFIX/include" \
+ `# [3]` --with-build-time-tools="$PREFIX/$TARGET/bin" \
+ `# [3]` --with-as="$PREFIX/$TARGET/bin/as" \
+ `# [3]` --with-ld="$PREFIX/$TARGET/bin/ld" \
+ --without-headers \
+ --disable-nls \
+ --disable-shared \
+ `# [4]` --disable-multilib \
+ `# [4]` --disable-decimal-float \
+ `# [4]` --disable-threads \
+ `# [4]` --disable-libatomic \
+ `# [4]` --disable-libgomp \
+ `# [4]` --disable-libitm \
+ `# [4]` --disable-libquadmath \
+ `# [4]` --disable-libsanitizer \
+ `# [4]` --disable-libssp \
+ `# [4]` --disable-libvtv \
+ `# [4]` --disable-libcilkrts \
+ `# [4]` --disable-libstdc++-v3 \
+ --enable-languages=c,c++
build-commands:
-- cd o && make
+- |
+ # See stage1-gcc.morph.
+ case "$MORPH_ARCH" in
+ armv7*) sed -i "s/--host=none/--host=armv7a/" o/Makefile
+ sed -i "s/--target=none/--target=armv7a/" o/Makefile ;;
+ esac
+ cd o && make
install-commands:
- cd o && make DESTDIR="$DESTDIR" install
-
-# The file libgcc_eh is required during eglibc's build, but is not created
-# because we built GCC with --disable-shared. This is a workaround for
-# eglibc's build system being slightly broken.
-- |
- export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
- libgcc_filename="$("$DESTDIR$PREFIX/bin/$TARGET_STAGE1-gcc" -print-libgcc-file-name)"
- ln -sv libgcc.a "$(echo "$libgcc_filename" | sed 's/libgcc/&_eh/')"
diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph
index 50c338e5..140a29b1 100644
--- a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph
+++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph
@@ -6,37 +6,40 @@ configure-commands:
# Configure flag notes:
# 1. Use the default sysroot path to install to and locate headers
-# 2. Recommended by Linux From Scratch; required for C++ ABI
-# compatibility with other Linux distributions.
+# 2. Avoid having more than one copy of ZLib in use on the system
# 3. Standard flags. See gcc.morph.
-# 4. Avoid having more than one copy of ZLib in use on the system
- |
export MORPH_ARCH=armv7lhf
export TARGET=armv7lhf-baserock-linux-gnueabi
- export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
- cd o && ../configure \
- $(../morph-arch-config) \
- --build=$(sh ../config.guess) \
- --host=$(sh ../config.guess) \
- --target="$TARGET" \
- `# [1]` --with-sysroot \
- --prefix="$PREFIX" \
- --disable-bootstrap \
- --enable-shared --enable-threads=posix \
- `# [2]` --enable-__cxa_atexit \
- --enable-languages=c,c++,fortran \
- `# [3]` --libdir="$PREFIX/lib" \
- --disable-libgomp --disable-multilib \
- --without-cloog --without-ppl \
- --with-mpfr-include="$(pwd)/../mpfr/src" \
- --with-mpfr-lib="$(pwd)/mpfr/src/.libs" \
- `# [4]` --with-system-zlib
+
+ case "$MORPH_ARCH" in
+ armv7lhf) ARCH_FLAGS="--with-arch=armv7-a \
+ --with-cpu=cortex-a9 \
+ --with-tune=cortex-a9 \
+ --with-fpu=vfpv3-d16 \
+ --with-float=hard" ;;
+ armv7*) ARCH_FLAGS="--with-arch=armv7-a" ;;
+ esac
+
+ cd o && ../configure \
+ $ARCH_FLAGS \
+ --build=$(sh ../config.guess) \
+ --host=$(sh ../config.guess) \
+ --target="$TARGET" \
+ --prefix="$PREFIX" \
+ `# [1]` --with-sysroot \
+ --disable-bootstrap \
+ `# [2]` --with-system-zlib \
+ `# [3]` --libdir="$PREFIX/lib" \
+ `# [3]` --disable-multilib \
+ `# [3]` --enable-languages=c,c++,fortran
build-commands:
- cd o && make
install-commands:
- cd o && make DESTDIR="$DESTDIR" install
+- ln -s gcc "$DESTDIR/$PREFIX/bin/cc"
- |
export TARGET=armv7lhf-baserock-linux-gnueabi
for fortran_alias in f77 f90 f95; do
diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-eglibc.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-glibc.morph
index ee28c9dd..2a692c38 100644
--- a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-eglibc.morph
+++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-glibc.morph
@@ -1,37 +1,41 @@
-name: armv7lhf-cross-eglibc
+name: armv7lhf-cross-glibc
kind: chunk
configure-commands:
- mkdir o
-# Necessary for ARM port
-- cd libc && ln -s ../ports ports
-
# Configure flag notes:
-# 1. Location of linux-api-headers, needed since eglibc doesn't
+# 1. Location of linux-api-headers, needed since glibc doesn't
# support being given a sysroot.
# 2. Location of binutils, since we build binutils for the final
# target triplet, but our gcc of our stage 1 target triplet.
-# 3. Normal flags. See eglibc.morph.
+# 3. Normal flags. See strata/build-essential/glibc.morph.
# 4. Force configuration values of certain things that can't be detected
# in a cross-compile.
- |
export MORPH_ARCH=armv7lhf
export TARGET=armv7lhf-baserock-linux-gnueabi
export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
+
export CFLAGS="-O2 $CFLAGS"
- # eglibc looks for $TARGET-gcc, but not $TARGET_STAGE1-gcc even
+
+ # glibc looks for $TARGET-gcc, but not $TARGET_STAGE1-gcc even
# though --build is specified, so we have to override what gcc to
# use here.
export CC="$TARGET_STAGE1-gcc"
- cd o && ../libc/configure \
- $(../morph-arch-config) \
+
+ case "$MORPH_ARCH" in
+ armv7*)
+ ARCH_FLAGS="--without-fp" ;;
+ esac
+
+ cd o && ../configure \
+ $ARCH_FLAGS \
--build=$TARGET_STAGE1 --host=$TARGET \
--prefix="$PREFIX" \
`# [1]` --with-headers="$PREFIX/$TARGET/sys-root/$PREFIX/include" \
`# [2]` --with-binutils="$PREFIX/$TARGET/bin" \
`# [3]` --disable-profile --enable-kernel=2.6.25 \
- --enable-add-ons=nptl,ports --without-cvs --without-selinux \
`# [4]` libc_cv_c_cleanup=yes libc_cv_ctors_header=yes \
libc_cv_forced_unwind=yes libc_cv_ssp=no
@@ -40,7 +44,7 @@ build-commands:
install-commands:
- |
- # eglibc doesn't help with sysroots, so we need to spell out the
+ # glibc doesn't help with sysroots, so we need to spell out the
# full path ourselves.
export TARGET=armv7lhf-baserock-linux-gnueabi
cd o && make install_root="$DESTDIR/$PREFIX/$TARGET/sys-root/" \
diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-libstdc++.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-libstdc++.morph
new file mode 100644
index 00000000..7743bb5b
--- /dev/null
+++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-libstdc++.morph
@@ -0,0 +1,32 @@
+name: armv7lhf-cross-libstdc++
+kind: chunk
+configure-commands:
+- mkdir o
+
+# Configure flag notes:
+# 1. Use the default sysroot path to install to and locate headers
+# 2. From LFS: the header location of C++ needs to be explicitly given
+# as we are running the configure script from the top-level
+# directory.
+- |
+ export MORPH_ARCH=armv7lhf
+ export TARGET=armv7lhf-baserock-linux-gnueabi
+
+ # -fPIC must be given, otherwise it will not be possible to create
+ # shared libraries linked to libstdc++
+ export CPPFLAGS="-fPIC"
+ cd o && ../libstdc++-v3/configure \
+ --build=$(sh ../config.guess) \
+ --host=$(sh ../config.guess) \
+ --target="$TARGET" \
+ --prefix="$PREFIX" \
+ --disable-nls \
+ --disable-shared \
+ --disable-multilib \
+ `# [1]` --with-sysroot
+
+build-commands:
+- cd o && make
+
+install-commands:
+- cd o && make DESTDIR="$DESTDIR" install
diff --git a/strata/audio-bluetooth.morph b/strata/audio-bluetooth.morph
index e4dc0e68..829cf6f8 100644
--- a/strata/audio-bluetooth.morph
+++ b/strata/audio-bluetooth.morph
@@ -89,8 +89,8 @@ chunks:
- name: pulseaudio
morph: strata/audio-bluetooth/pulseaudio.morph
repo: upstream:pulseaudio
- ref: 34862dbd43079d19faff31fa9ba996acc874d586
- unpetrify-ref: v5.99.3
+ ref: 53ad8aa7caa33caac52e35f71253e29d5a15f6e7
+ unpetrify-ref: v6.0
build-depends:
- libsndfile
- libatomic_ops
diff --git a/strata/bsp-armv7-highbank.morph b/strata/bsp-armv7-highbank.morph
index d5ff1264..bdf047cf 100644
--- a/strata/bsp-armv7-highbank.morph
+++ b/strata/bsp-armv7-highbank.morph
@@ -7,6 +7,6 @@ chunks:
- name: linux-armv7-highbank
morph: strata/bsp-armv7-highbank/linux-armv7-highbank.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends: []
diff --git a/strata/bsp-armv7-versatile.morph b/strata/bsp-armv7-versatile.morph
index 63d79667..529b563c 100644
--- a/strata/bsp-armv7-versatile.morph
+++ b/strata/bsp-armv7-versatile.morph
@@ -8,6 +8,6 @@ chunks:
- name: linux-armv7-versatile
morph: strata/bsp-armv7-versatile/linux-armv7-versatile.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends: []
diff --git a/strata/bsp-armv7b-highbank.morph b/strata/bsp-armv7b-highbank.morph
index 16dd9a17..97ccfe3c 100644
--- a/strata/bsp-armv7b-highbank.morph
+++ b/strata/bsp-armv7b-highbank.morph
@@ -7,6 +7,6 @@ chunks:
- name: linux-armv7b-highbank
morph: strata/bsp-armv7b-highbank/linux-armv7b-highbank.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends: []
diff --git a/strata/bsp-armv7b-vexpress-tc2.morph b/strata/bsp-armv7b-vexpress-tc2.morph
index 440271de..f8a7ff00 100644
--- a/strata/bsp-armv7b-vexpress-tc2.morph
+++ b/strata/bsp-armv7b-vexpress-tc2.morph
@@ -7,6 +7,6 @@ chunks:
- name: linux-armv7b-vexpress-tc2
morph: strata/bsp-armv7b-vexpress-tc2/linux-armv7b-vexpress-tc2.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends: []
diff --git a/strata/bsp-ppc64-generic.morph b/strata/bsp-ppc64-generic.morph
index f109ecf2..002c00be 100644
--- a/strata/bsp-ppc64-generic.morph
+++ b/strata/bsp-ppc64-generic.morph
@@ -7,6 +7,6 @@ chunks:
- name: linux-ppc64
morph: strata/bsp-ppc64-generic/linux-ppc64.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends: []
diff --git a/strata/bsp-wandboard.morph b/strata/bsp-wandboard.morph
index 6f829802..4ffd2e0e 100644
--- a/strata/bsp-wandboard.morph
+++ b/strata/bsp-wandboard.morph
@@ -13,7 +13,7 @@ chunks:
- name: linux-armv7-wandboard
morph: strata/bsp-wandboard/linux-armv7-wandboard.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends:
- u-boot@wandboard
diff --git a/strata/bsp-x86_32-generic.morph b/strata/bsp-x86_32-generic.morph
index ad318db9..244745bf 100644
--- a/strata/bsp-x86_32-generic.morph
+++ b/strata/bsp-x86_32-generic.morph
@@ -8,8 +8,8 @@ chunks:
- name: linux-x86-32-generic
morph: strata/bsp-x86_32-generic/linux-x86-32-generic.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends: []
- name: nasm
morph: strata/bsp-x86_32-generic/nasm.morph
diff --git a/strata/bsp-x86_64-generic.morph b/strata/bsp-x86_64-generic.morph
index 624b31a4..04be0dcd 100644
--- a/strata/bsp-x86_64-generic.morph
+++ b/strata/bsp-x86_64-generic.morph
@@ -8,8 +8,8 @@ chunks:
- name: linux-x86-64-generic
morph: strata/bsp-x86_64-generic/linux-x86-64-generic.morph
repo: upstream:linux
- ref: b2776bf7149bddd1f4161f14f79520f17fc1d71d
- unpetrify-ref: v3.18
+ ref: bfa76d49576599a4b9f9b7a71f23d73d6dcff735
+ unpetrify-ref: v3.19
build-depends: []
- name: nasm
morph: strata/bsp-x86_64-generic/nasm.morph
diff --git a/strata/bsp-x86_both-tools.morph b/strata/bsp-x86_both-tools.morph
index 008ddf3f..b5bee9cb 100644
--- a/strata/bsp-x86_both-tools.morph
+++ b/strata/bsp-x86_both-tools.morph
@@ -14,7 +14,7 @@ chunks:
- name: syslinux
morph: strata/bsp-x86_both-tools/syslinux.morph
repo: upstream:syslinux
- ref: baserock/morph
- unpetrify-ref: 2f6d21d2a560cb5581694fef42ee9a350d5f302f
+ ref: d715b39c0801ecea5e52f9029cea7c76320f93cf
+ unpetrify-ref: baserock/morph
build-depends:
- nasm
diff --git a/strata/build-essential.morph b/strata/build-essential.morph
index 9884d29d..832d6118 100644
--- a/strata/build-essential.morph
+++ b/strata/build-essential.morph
@@ -31,6 +31,9 @@ description: |
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.
+
+ PLEASE KEEP THE REFS IN 'armv7lhf-cross-toolchain' STRATUM UP TO DATE WITH
+ THIS ONE!
products:
- artifact: build-essential-minimal
include:
diff --git a/strata/build-essential/m4-tarball.morph b/strata/build-essential/m4-tarball.morph
index e460a9dc..eb16726a 100644
--- a/strata/build-essential/m4-tarball.morph
+++ b/strata/build-essential/m4-tarball.morph
@@ -2,4 +2,4 @@ name: m4-tarball
kind: chunk
build-system: autotools
configure-commands:
-- ./configure --prefix="$PREFIX"
+- ./configure --prefix="$PREFIX" --disable-gcc-warnings
diff --git a/strata/coreutils-common.morph b/strata/coreutils-common.morph
index 9c5c38fe..2051cf50 100644
--- a/strata/coreutils-common.morph
+++ b/strata/coreutils-common.morph
@@ -13,3 +13,17 @@ chunks:
ref: 9df9643842e4b4d8ece710fe6105f32fa38a0d22
unpetrify-ref: baserock/8.23
build-depends: []
+- name: sed
+ morph: strata/coreutils-common/sed.morph
+ repo: upstream:sed
+ ref: ed4b1d7c04f92b330b940d4f0d02cd51d2473ce9
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - coreutils
+- name: diff
+ morph: strata/coreutils-common/diff.morph
+ repo: upstream:diffutils
+ ref: bd86eb1a1e87ab85a7c8dbb658fa829ce69c252e
+ unpetrify-ref: baserock/v3.3
+ build-depends:
+ - coreutils
diff --git a/strata/coreutils-common/diff.morph b/strata/coreutils-common/diff.morph
new file mode 100644
index 00000000..3a05af2d
--- /dev/null
+++ b/strata/coreutils-common/diff.morph
@@ -0,0 +1,7 @@
+name: diff
+kind: chunk
+build-system: autotools
+configure-commands:
+- sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf
+- ./bootstrap --skip-po
+- ./configure --prefix="$PREFIX"
diff --git a/strata/coreutils-common/sed.morph b/strata/coreutils-common/sed.morph
new file mode 100644
index 00000000..92f6fa51
--- /dev/null
+++ b/strata/coreutils-common/sed.morph
@@ -0,0 +1,12 @@
+name: sed
+kind: chunk
+build-system: autotools
+configure-commands:
+- sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf
+- ./bootstrap --skip-po
+- ./configure --prefix="$PREFIX" --disable-gcc-warnings
+post-install-commands:
+# This hack is to use GNU sed instead the busybox one.
+# This will dissappear when we merge /usr/bin and /bin.
+- mkdir -p "$DESTDIR"/bin/
+- ln -sf ../usr/bin/sed "$DESTDIR"/bin/
diff --git a/strata/databases.morph b/strata/databases.morph
index cb09c5a3..4b06edf3 100644
--- a/strata/databases.morph
+++ b/strata/databases.morph
@@ -1,6 +1,6 @@
name: databases
kind: stratum
-description: some popular databases
+description: some popular databases and some utils related to databases
build-depends:
- morph: strata/tools.morph
- morph: strata/nfs.morph
@@ -17,7 +17,19 @@ chunks:
unpetrify-ref: baserock/3.0
build-depends: []
- name: memcached
+ morph: strata/databases/memcached.morph
repo: upstream:memcached
- ref: d8b1047620a54443f6bdca7f0dc5ee3b4d99378e
+ ref: c5530027c8ea28674358327ab8212ebaf014c848
+ unpetrify-ref: 1.4.22
+ build-depends: []
+- name: psycopg2
+ repo: upstream:python-packages/psycopg2
+ ref: 00cafbe85bb82d85cbfe0f062a73c562433b5bc8
+ unpetrify-ref: 2.5.4
+ build-depends:
+ - postgresql
+- name: python-memcached
+ repo: upstream:python-packages/python-memcached
+ ref: 156ee975ff6e5c69e1d6c58b09bedf03c182c5db
unpetrify-ref: master
build-depends: []
diff --git a/strata/databases/memcached.morph b/strata/databases/memcached.morph
new file mode 100644
index 00000000..28e01362
--- /dev/null
+++ b/strata/databases/memcached.morph
@@ -0,0 +1,8 @@
+name: memcached
+kind: chunk
+build-system: autotools
+configure-commands:
+- perl version.pl
+- touch README
+- autoreconf -fvi
+- ./configure --prefix="$PREFIX"
diff --git a/strata/django.morph b/strata/django.morph
new file mode 100644
index 00000000..7659593c
--- /dev/null
+++ b/strata/django.morph
@@ -0,0 +1,35 @@
+name: django
+kind: stratum
+description: Stratum with Django and its plugins and dependencies.
+build-depends:
+- morph: strata/foundation.morph
+- morph: strata/python-core.morph
+chunks:
+- name: django
+ repo: upstream:python-packages/django
+ ref: 811508b0512d3fa6b2328f8647fbf9eace68eceb
+ unpetrify-ref: 1.6.8
+ build-depends: []
+- name: django-appconf
+ repo: upstream:python-packages/django-appconf
+ ref: 0c9835f95b44db1b3eb1a9409f95a3ecd63b8ff5
+ unpetrify-ref: 0.6
+ build-depends: []
+- name: django-compressor
+ repo: upstream:python-packages/django-compressor
+ ref: e747dce3d7e04fe595bbfed54f9554c2725eb757
+ unpetrify-ref: 1.4
+ build-depends:
+ - django-appconf
+- name: pyscss
+ repo: upstream:python-packages/pyscss
+ ref: 85e8806e39e840c4402ee813c3e38fefaf9212b4
+ unpetrify-ref: 1.2.1
+ build-depends: []
+- name: django-pyscss
+ repo: upstream:python-packages/django-pyscss
+ ref: 665270b54eea5de5aca379a78673b411ed6b1f04
+ unpetrify-ref: v1.0.6
+ build-depends:
+ - django
+ - pyscss
diff --git a/strata/enlightenment.morph b/strata/enlightenment.morph
index 541b4f7a..25eafce2 100644
--- a/strata/enlightenment.morph
+++ b/strata/enlightenment.morph
@@ -6,7 +6,7 @@ build-depends:
- morph: strata/x-generic.morph
- morph: strata/lua.morph
- morph: strata/audio-bluetooth.morph
-- morph: strata/multimedia.morph
+- morph: strata/multimedia-gstreamer.morph
- morph: strata/connman-common.morph
chunks:
- name: fribidi
diff --git a/strata/erlang.morph b/strata/erlang.morph
index 657b07be..bea09d61 100644
--- a/strata/erlang.morph
+++ b/strata/erlang.morph
@@ -10,3 +10,18 @@ chunks:
ref: 9417f044ee3c291c2ea343c203aebdcc40597226
unpetrify-ref: OTP-17.3.4
build-depends: []
+- name: rebar
+ morph: strata/erlang/rebar.morph
+ repo: upstream:erlang-modules/rebar
+ ref: d42ed4683576d995f60e3222f076e99f0b081f79
+ unpretrify-ref: master
+ build-depends:
+ - erlang
+- name: erlang-sd_notify
+ morph: strata/erlang/erlang-sd_notify.morph
+ repo: upstream:erlang-modules/erlang-sd_notify
+ ref: 99f4689c2c18570680329f822591f95f9341ca10
+ unpretrify-ref: master
+ build-depends:
+ - erlang
+ - rebar
diff --git a/strata/erlang/erlang-sd_notify.morph b/strata/erlang/erlang-sd_notify.morph
new file mode 100644
index 00000000..dd3f66ca
--- /dev/null
+++ b/strata/erlang/erlang-sd_notify.morph
@@ -0,0 +1,8 @@
+name: erlang-sd_notify
+kind: chunk
+build-commands:
+- LDFLAGS=-lsystemd REBAR_FLAGS="--verbose 2" make
+install-commands:
+- install -D -m 644 -p ebin/sd_notify.app "$DESTDIR$PREFIX"/lib/erlang/lib/sd_notify-0.1/ebin/sd_notify.app
+- install -D -m 644 -p ebin/sd_notify.beam "$DESTDIR$PREFIX"/lib/erlang/lib/sd_notify-0.1/ebin/sd_notify.beam
+- install -D -m 755 -p priv/sd_notify_drv.so "$DESTDIR$PREFIX"/lib/erlang/lib/sd_notify-0.1/priv/sd_notify_drv.so
diff --git a/strata/erlang/rebar.morph b/strata/erlang/rebar.morph
new file mode 100644
index 00000000..fa5fd64f
--- /dev/null
+++ b/strata/erlang/rebar.morph
@@ -0,0 +1,6 @@
+name: rebar
+kind: chunk
+build-commands:
+- ./bootstrap
+install-commands:
+- install -D -m 755 rebar "$DESTDIR$PREFIX"/bin/rebar
diff --git a/strata/foundation/systemd.morph~ b/strata/foundation/systemd.morph~
deleted file mode 100644
index 1ee23cb8..00000000
--- a/strata/foundation/systemd.morph~
+++ /dev/null
@@ -1,28 +0,0 @@
-name: systemd
-kind: chunk
-max-jobs: 1
-build-system: autotools
-configure-commands:
-- sh autogen.sh
-- ./configure --prefix="$PREFIX" --enable-xz --disable-manpages --sysconfdir=/etc
- --localstatedir=/var --libdir="$PREFIX/lib" --libexecdir="$PREFIX/libexec" --with-rootprefix=
- --with-rootlibdir=/lib
-install-commands:
-- make DESTDIR="$DESTDIR" install
-- mkdir -p "$DESTDIR"/sbin
-- ln -s /lib/systemd/systemd "$DESTDIR"/sbin/init
-- for f in telinit runlevel shutdown poweroff reboot halt; do ln -s /bin/systemctl
- "$DESTDIR/sbin/$f"; done
-- sed -e 's|@sushell@|/bin/sh|g' units/debug-shell.service.in >"$DESTDIR/etc/systemd/system/debug-shell.service"
-- sed -r -e '/Options=/s/,?strictatime//' "$DESTDIR/lib/systemd/system/tmp.mount"
- >"$DESTDIR/etc/systemd/system/tmp.mount"
-- touch "$DESTDIR/etc/machine-id"
-post-install-commands:
-- |
- cat > "$DESTDIR/etc/systemd/network/10-dhcp.network" << "EOF"
- [Match]
- Name=en*
-
- [Network]
- DHCP=yes
- EOF
diff --git a/strata/graphics-common.morph b/strata/graphics-common.morph
index 9fc05b7c..baa935f5 100644
--- a/strata/graphics-common.morph
+++ b/strata/graphics-common.morph
@@ -5,6 +5,7 @@ build-depends:
- morph: strata/x-common.morph
chunks:
- name: pixman
+ morph: strata/graphics-common/pixman.morph
repo: upstream:pixman
ref: 87eea99e443b389c978cf37efc52788bf03a0ee0
unpetrify-ref: pixman-0.32.6
diff --git a/strata/graphics-common/pixman.morph b/strata/graphics-common/pixman.morph
new file mode 100644
index 00000000..d09b3df3
--- /dev/null
+++ b/strata/graphics-common/pixman.morph
@@ -0,0 +1,5 @@
+name: pixman
+kind: chunk
+build-system: autotools
+configure-commands:
+- ./autogen.sh --prefix="$PREFIX" --disable-arm-iwmmxt --disable-arm-iwmmxt2
diff --git a/strata/input-common.morph b/strata/input-common.morph
index dad71041..dab05826 100644
--- a/strata/input-common.morph
+++ b/strata/input-common.morph
@@ -22,8 +22,8 @@ chunks:
build-depends: []
- name: libinput
repo: upstream:libinput
- ref: fd8a29fb692404ace405631012d0b708362b1fa0
- unpetrify-ref: 0.9.0
+ ref: ca4e03fb11429b6a3704206124fbff2f57d121f9
+ unpetrify-ref: 0.10.0
build-depends:
- mtdev
- libevdev
diff --git a/strata/libdrm-common.morph b/strata/libdrm-common.morph
index e364bab2..316bf483 100644
--- a/strata/libdrm-common.morph
+++ b/strata/libdrm-common.morph
@@ -5,13 +5,13 @@ build-depends:
chunks:
- name: xorg-lib-libpciaccess
repo: upstream:xorg-lib-libpciaccess
- ref: 3e17f069682a226c14bb29c802e776c6e39f7e8f
- unpetrify-ref: baserock/morph
+ ref: f99c2e4199ce37f6f94428df504427f67c3ec543
+ unpetrify-ref: libpciaccess-0.13.3
build-depends: []
- name: drm
repo: upstream:drm
morph: strata/libdrm-common/drm.morph
- ref: 83b2c40922ce451f5844aae0707ae9783a78d74f
- unpetrify-ref: baserock/drm_2.4.58/jetson
+ ref: d2e0f552467ca11162fe04dfed55de4590280f23
+ unpetrify-ref: libdrm-2.4.59
build-depends:
- xorg-lib-libpciaccess
diff --git a/strata/libdrm-common/drm.morph b/strata/libdrm-common/drm.morph
index d3d06fd8..d1a5381b 100644
--- a/strata/libdrm-common/drm.morph
+++ b/strata/libdrm-common/drm.morph
@@ -4,7 +4,3 @@ build-system: autotools
configure-commands:
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix="$PREFIX" --enable-tegra-experimental-api --enable-freedreno-experimental-api
-install-commands:
- - make install DESTDIR="$DESTDIR"
- - mkdir -p "$DESTDIR"/usr/lib/pkgconfig
- - /usr/bin/install -c -m 644 tegra/libdrm_tegra.pc "$DESTDIR"/usr/lib/pkgconfig
diff --git a/strata/lorry.morph b/strata/lorry.morph
index 17f845cf..8a813d58 100644
--- a/strata/lorry.morph
+++ b/strata/lorry.morph
@@ -38,18 +38,19 @@ chunks:
ref: ca4cd317a75ef4349563b5a9a734561beb4a4f98
unpetrify-ref: baserock/morph
build-depends: []
-- name: libapr-tarball
- repo: upstream:libapr-tarball
- ref: dea1efeb7f60fc6848e1e72b3fc973d0057565db
- unpetrify-ref: baserock/morph
+- name: libapr
+ morph: strata/lorry/libapr.morph
+ repo: upstream:libapr
+ ref: 10835ec9a2d8bb9f7b867d15f29984d29744f028
+ unpetrify-ref: 1.5.1
build-depends: []
-- name: libapr-util-tarball
- morph: strata/lorry/libapr-util-tarball.morph
- repo: upstream:libapr-util-tarball
- ref: daba269ee5a262cc23621b3ee37ed368d2a2b69b
- unpetrify-ref: baserock/morph
+- name: libapr-util
+ morph: strata/lorry/libapr-util.morph
+ repo: upstream:libapr-util
+ ref: 718a507e2e33d87ab15ff80cfe80aea8ae6c7163
+ unpetrify-ref: 1.5.4
build-depends:
- - libapr-tarball
+ - libapr
- name: perl-dbi-tarball
morph: strata/lorry/perl-dbi-tarball.morph
repo: upstream:perl-dbi-tarball
@@ -63,12 +64,13 @@ chunks:
build-depends:
- perl-dbi-tarball
- name: libserf-tarball
+ morph: strata/lorry/libserf.morph
repo: upstream:libserf-tarball
ref: 6f61a1acd01dc2ad1d2f5c1f7458702c77c69f9c
unpetrify-ref: baserock/morph
build-depends:
- - libapr-tarball
- - libapr-util-tarball
+ - libapr
+ - libapr-util
- name: swig-tarball
morph: strata/lorry/swig-tarball.morph
repo: upstream:swig-tarball
@@ -84,12 +86,12 @@ chunks:
- name: subversion-tarball
morph: strata/lorry/subversion-tarball.morph
repo: upstream:subversion-tarball
- ref: 351e074672d9aa6446d5829938b697a3d6b23266
+ ref: 2d02ea6f31311bf1b72f28c48d784b8d851ff2e0
unpetrify-ref: baserock/morph
build-depends:
- swig-tarball
- - libapr-tarball
- - libapr-util-tarball
+ - libapr
+ - libapr-util
- libserf-tarball
- neon
- name: mercurial-tarball
diff --git a/strata/lorry/cvs-tarball.morph b/strata/lorry/cvs-tarball.morph
index e8322017..5f34bc57 100644
--- a/strata/lorry/cvs-tarball.morph
+++ b/strata/lorry/cvs-tarball.morph
@@ -1,6 +1,9 @@
name: cvs-tarball
kind: chunk
build-system: autotools
+pre-configure-commands:
+- cp /usr/share/automake*/config.guess build-aux
+- cp /usr/share/automake*/config.sub build-aux
configure-commands:
- YACC='bison -y' ./configure --prefix "$PREFIX" --with-external-zlib --without-gssapi
--without-krb4 --disable-dependency-tracking --disable-nls --disable-rpath
diff --git a/strata/lorry/libapr-util-tarball.morph b/strata/lorry/libapr-util.morph
index e34e3610..26db03ba 100644
--- a/strata/lorry/libapr-util-tarball.morph
+++ b/strata/lorry/libapr-util.morph
@@ -1,5 +1,7 @@
-name: libapr-util-tarball
+name: libapr-util
kind: chunk
build-system: autotools
+pre-configure-commands:
+- ./buildconf --with-apr=/usr/share/apr-1
configure-commands:
- ./configure --prefix "$PREFIX" --with-apr=/usr/bin/apr-1-config
diff --git a/strata/lorry/libapr.morph b/strata/lorry/libapr.morph
new file mode 100644
index 00000000..57d35b84
--- /dev/null
+++ b/strata/lorry/libapr.morph
@@ -0,0 +1,21 @@
+name: libapr
+kind: chunk
+build-system: autotools
+pre-configure-commands:
+- ./buildconf
+configure-commands:
+- |
+ ./configure \
+ --prefix "$PREFIX" \
+ --disable-static \
+ --with-installbuilddir=/usr/share/apr-1/build
+post-install-commands:
+- |
+ # Install files required for apr-util
+ for file in find_apr.m4 apr_common.m4 install.sh gen-build.py \
+ get-version.sh config.guess config.sub
+ do
+ cp build/$file "$DESTDIR/$PREFIX"/share/apr-1/build/"$file"
+ done
+ # Create a symlink in the build directory to the include directory
+ ln -sf /usr/include/apr-1 "$DESTDIR/$PREFIX"/share/apr-1/build/
diff --git a/strata/lorry/libserf.morph b/strata/lorry/libserf.morph
new file mode 100644
index 00000000..d4bb415d
--- /dev/null
+++ b/strata/lorry/libserf.morph
@@ -0,0 +1,6 @@
+name: libserf
+kind: chunk
+build-system: autotools
+pre-configure-commands:
+- cp /usr/share/automake*/config.guess build
+- cp /usr/share/automake*/config.sub build
diff --git a/strata/lorry/subversion-tarball.morph b/strata/lorry/subversion-tarball.morph
index cb416d53..8fd1bc08 100644
--- a/strata/lorry/subversion-tarball.morph
+++ b/strata/lorry/subversion-tarball.morph
@@ -1,6 +1,8 @@
name: subversion-tarball
kind: chunk
build-system: autotools
+pre-configure-commands:
+- LIBTOOL_CONFIG=/usr/share/libtool/build-aux/ ./autogen.sh
configure-commands:
- python gen-make.py build.conf
- ./configure --prefix="$PREFIX" --without-berkeley-db
diff --git a/strata/lorry/swig-tarball.morph b/strata/lorry/swig-tarball.morph
index 61f154a4..7d16d85b 100644
--- a/strata/lorry/swig-tarball.morph
+++ b/strata/lorry/swig-tarball.morph
@@ -1,5 +1,7 @@
name: swig-tarball
kind: chunk
build-system: autotools
+pre-configure-commands:
+- ./autogen.sh
configure-commands:
- ./configure --prefix="$PREFIX" --disable-ccache
diff --git a/strata/morph-utils.morph b/strata/morph-utils.morph
index ad039894..aecf2a1d 100644
--- a/strata/morph-utils.morph
+++ b/strata/morph-utils.morph
@@ -64,9 +64,14 @@ chunks:
ref: 0f97c5e0ab7d9827506120efc22af3a9c21d1d70
unpetrify-ref: baserock/morph
build-depends: []
+- name: pylru
+ repo: upstream:python-packages/pylru
+ ref: 221dd259f5c34562c835611d1cf62384b9019da4
+ unpetrify-ref: master
+ build-depends: []
- name: morph
repo: baserock:baserock/morph
- ref: 954baf68b9bb7f8bc4fae2447ef16f37928ff01c
+ ref: 74f60a7ed286dd88e24539d46b9a86147a8e78b5
unpetrify-ref: master
build-depends:
- cliapp
@@ -75,3 +80,4 @@ chunks:
- pyfilesystem
- bottle
- flup
+ - pylru
diff --git a/strata/multimedia-common.morph b/strata/multimedia-common.morph
new file mode 100644
index 00000000..f10dd2b3
--- /dev/null
+++ b/strata/multimedia-common.morph
@@ -0,0 +1,17 @@
+name: multimedia-common
+kind: stratum
+description: Mutimedia Libraries
+build-depends:
+- morph: strata/core.morph
+chunks:
+- name: ogg
+ repo: upstream:ogg
+ ref: 0deb6226917e32a71f15d5279d0bc76d8b97c13f
+ unpetrify-ref: master
+ build-depends: []
+- name: libvorbis
+ repo: upstream:libvorbis
+ ref: 2ae58009cbc655a6031280f92fb1e7b324318ae8
+ unpetrify-ref: libvorbis-1.3.3
+ build-depends:
+ - ogg
diff --git a/strata/multimedia-gstreamer-0.10.morph b/strata/multimedia-gstreamer-0.10.morph
index 50917372..e87c4050 100644
--- a/strata/multimedia-gstreamer-0.10.morph
+++ b/strata/multimedia-gstreamer-0.10.morph
@@ -5,6 +5,7 @@ build-depends:
- morph: strata/core.morph
- morph: strata/foundation.morph
- morph: strata/audio-bluetooth.morph
+- morph: strata/multimedia-common.morph
chunks:
- name: orc
repo: upstream:orc
diff --git a/strata/multimedia.morph b/strata/multimedia-gstreamer.morph
index 6acab0f7..cee7df71 100644
--- a/strata/multimedia.morph
+++ b/strata/multimedia-gstreamer.morph
@@ -1,8 +1,10 @@
-name: multimedia
+name: multimedia-gstreamer
kind: stratum
-description: Codecs
+description: GStreamer multimedia components
build-depends:
- morph: strata/audio-bluetooth.morph
+- morph: strata/multimedia-common.morph
+- morph: strata/mesa-common.morph
chunks:
- name: orc
repo: upstream:orc
diff --git a/strata/networking-utils.morph b/strata/networking-utils.morph
new file mode 100644
index 00000000..5af03abb
--- /dev/null
+++ b/strata/networking-utils.morph
@@ -0,0 +1,29 @@
+name: networking-utils
+kind: stratum
+description: |
+ Stratum which contains utils to works with networks: create, enable, filter...
+
+ This stratum requires kernel config flags which are not enabled in the default
+ Baserock kernel found in the BSP strata. See the Openstack BSP stratum to get
+ an idea of what is needed.
+build-depends:
+- morph: strata/foundation.morph
+chunks:
+- name: iproute2
+ morph: strata/networking-utils/iproute2.morph
+ repo: upstream:iproute2
+ ref: 50231ad2a554fcb02462bed6405c970833c1baee
+ unpetrify-ref: v3.17.0
+ build-depends: []
+- name: libmnl
+ repo: upstream:libmnl
+ ref: c9f19b98cd8e108617e825e071091df14f78c53a
+ unpetrify-ref: master
+ build-depends: []
+- name: ipset
+ morph: strata/networking-utils/ipset.morph
+ repo: upstream:ipset
+ ref: cf25c4c50e9996af30499e5b1c3354ab53be7237
+ unpetrify-ref: v6.24
+ build-depends:
+ - libmnl
diff --git a/strata/networking-utils/iproute2.morph b/strata/networking-utils/iproute2.morph
new file mode 100644
index 00000000..7ba04db6
--- /dev/null
+++ b/strata/networking-utils/iproute2.morph
@@ -0,0 +1,10 @@
+name: iproute2
+kind: chunk
+build-commands:
+# arpd binary is dependent on Berkeley DB, which is licensed by Oracle
+# as arpd is not needed for Openstack systems, arpd will not be compiled
+# or installed.
+- sed -i '/^TARGETS/s@arpd@@g' misc/Makefile
+- make
+install-commands:
+- DESTDIR="$DESTDIR" PREFIX="$PREFIX" make install
diff --git a/strata/networking-utils/ipset.morph b/strata/networking-utils/ipset.morph
new file mode 100644
index 00000000..7fe8c6dc
--- /dev/null
+++ b/strata/networking-utils/ipset.morph
@@ -0,0 +1,6 @@
+name: ipset
+kind: chunk
+build-system: autotools
+configure-commands:
+- ./autogen.sh
+- ./configure --prefix="$PREFIX" --enable-static=no --with-kmod=no
diff --git a/strata/nfs.morph b/strata/nfs.morph
index 68988d54..3dbead9d 100644
--- a/strata/nfs.morph
+++ b/strata/nfs.morph
@@ -6,8 +6,8 @@ build-depends:
chunks:
- name: libevent
repo: upstream:libevent
- ref: 9364dff5c20e9e8c18f7f20ee1c92463e9e9c8a7
- unpetrify-ref: baserock/release-2.0.21-stable
+ ref: 0b49ae34594533daa82c06a506078de9e336a013
+ unpetrify-ref: release-2.1.5-beta
build-depends: []
- name: ti-rpc
morph: strata/nfs/ti-rpc.morph
diff --git a/strata/qt5-tools-qtmultimedia.morph b/strata/qt5-tools-qtmultimedia.morph
index 6482db62..df36ccad 100644
--- a/strata/qt5-tools-qtmultimedia.morph
+++ b/strata/qt5-tools-qtmultimedia.morph
@@ -6,7 +6,7 @@ build-depends:
- morph: strata/multimedia-gstreamer-0.10.morph
chunks:
- name: qtmultimedia
- morph: strata/qt5-tools/qtmultimedia.morph
+ morph: strata/qt5-tools/qtmultimedia-gstreamer.morph
repo: upstream:qt5/qtmultimedia
ref: b3c2dca466042cf362ffb8d803bf05c9b8a0f95f
unpetrify-ref: v5.3.2
diff --git a/strata/qt5-tools-qtwebkit.morph b/strata/qt5-tools-qtwebkit.morph
index 1d746949..4441e46b 100644
--- a/strata/qt5-tools-qtwebkit.morph
+++ b/strata/qt5-tools-qtwebkit.morph
@@ -2,7 +2,7 @@ name: qt5-tools-qtwebkit
kind: stratum
description: Qt5 WebKit Development Libraries and Tools
build-depends:
-- morph: strata/multimedia.morph
+- morph: strata/multimedia-gstreamer.morph
- morph: strata/qt5-tools.morph
- morph: strata/ruby.morph
chunks:
diff --git a/strata/ruby/ruby-1.8.morph b/strata/ruby/ruby-1.8.morph
index cee282c0..4554e441 100644
--- a/strata/ruby/ruby-1.8.morph
+++ b/strata/ruby/ruby-1.8.morph
@@ -1,9 +1,9 @@
name: ruby-1.8
kind: chunk
-configure-commands:
+build-system: autotools
+pre-configure-commands:
+- cp /usr/share/automake*/config.guess .
+- cp /usr/share/automake*/config.sub .
- autoconf
+configure-commands:
- ./configure --prefix=/usr --program-suffix=-1.8
-build-commands:
-- make
-install-commands:
-- make DESTDIR="$DESTDIR" install
diff --git a/strata/ruby/ruby.morph b/strata/ruby/ruby.morph
index c5d4afe1..f9f0ae7c 100644
--- a/strata/ruby/ruby.morph
+++ b/strata/ruby/ruby.morph
@@ -1,9 +1,9 @@
name: ruby
kind: chunk
-configure-commands:
+build-system: autotools
+pre-configure-commands:
+- cp /usr/share/automake*/config.guess tool
+- cp /usr/share/automake*/config.sub tool
- autoconf
+configure-commands:
- ./configure --prefix=/usr --enable-shared --with-baseruby=/usr/bin/ruby-1.8
-build-commands:
-- make
-install-commands:
-- make DESTDIR=$DESTDIR install
diff --git a/strata/virtualization.morph b/strata/virtualization.morph
index 7aa8f6af..881b53de 100644
--- a/strata/virtualization.morph
+++ b/strata/virtualization.morph
@@ -1,8 +1,13 @@
name: virtualization
kind: stratum
-description: virtualization for baserock
+description: |
+ Virtualization for baserock
+ NOTE: this stratum requires kernel support, please see openstack bsp
+ kernel history to check which config are needed for openvswitch, libvirt,
+ or ebtables, for example.
build-depends:
- morph: strata/connman-common.morph
+- morph: strata/lvm.morph
chunks:
- name: yajl
morph: strata/virtualization/yajl.morph
@@ -25,8 +30,8 @@ chunks:
- name: qemu
morph: strata/virtualization/qemu.morph
repo: upstream:qemu
- ref: f8d1fb61e65575011a67d7ba97b690feb5630c91
- unpetrify-ref: baserock/morph
+ ref: c5691f7ecb32cbe7a95b491314ce070e211fd97d
+ unpetrify-ref: baserock/v2.2.0
build-depends: []
- name: xorg-util-macros
repo: upstream:xorg-util-macros
@@ -39,17 +44,24 @@ chunks:
unpetrify-ref: master
build-depends:
- xorg-util-macros
+- name: dmidecode
+ morph: strata/virtualization/dmidecode.morph
+ repo: upstream:dmidecode
+ ref: 47a0aa5d6696a83922ee70279b7253a4e55947d5
+ unpetrify-ref: master
+ build-depends: []
- name: libvirt
morph: strata/virtualization/libvirt.morph
repo: upstream:libvirt
- ref: 13b7bb4acba9b70e015b7faa020b08018885aad8
- unpetrify-ref: baserock/morph
+ ref: 7b1ceec1e2f141d36ed9b7ef3a660ff8bb34fc53
+ unpetrify-ref: baserock/v1.2.10
build-depends:
- libpciaccess
- dnsmasq
- qemu
- xml-catalog
- yajl
+ - dmidecode
- name: pycurl
repo: upstream:pycurl
ref: 5ca370827d88817eeca3c56cbb37e4ddccc16c6e
@@ -74,16 +86,16 @@ chunks:
- cython
- name: libvirt-python
repo: upstream:libvirt-python
- ref: 4382fc518cbd11d9af5727fb403e175818c25db5
- unpetrify-ref: v1.2.2
+ ref: 8e09c79a07b097a6ba9af83be4916fb9c9538500
+ unpetrify-ref: v1.2.10
build-depends:
- libvirt
- python-lxml
- urlgrabber
- name: gnome-common
repo: upstream:gnome-common
- ref: 766c35359ef924ceb2288c14c2d6239fcc0618f8
- unpetrify-ref: 3.7.4
+ ref: d213283fcb5228d05eb2c796579f18240e8467e8
+ unpetrify-ref: 3.12.0
build-depends: []
- name: pygobject
morph: strata/virtualization/pygobject.morph
@@ -114,3 +126,15 @@ chunks:
build-depends:
- libvirt-python
- libosinfo
+- name: ebtables
+ morph: strata/virtualization/ebtables.morph
+ repo: upstream:ebtables
+ ref: 09792f0107a9318da809908db31f0b826017de7b
+ unpetrify-ref: master
+ build-depends: []
+- name: openvswitch
+ morph: strata/virtualization/openvswitch.morph
+ repo: upstream:openvswitch
+ ref: a52b0492a4d0398a24ed2a3566ff55ac53fea31f
+ unpretrify-ref: master
+ build-depends: []
diff --git a/strata/virtualization/dmidecode.morph b/strata/virtualization/dmidecode.morph
new file mode 100644
index 00000000..d9ab0fa3
--- /dev/null
+++ b/strata/virtualization/dmidecode.morph
@@ -0,0 +1,7 @@
+name: dmidecode
+kind: chunk
+build-system: manual
+build-commands:
+- make
+install-commands:
+- make install DESTDIR="$DESTDIR" prefix="$PREFIX"
diff --git a/strata/virtualization/ebtables.morph b/strata/virtualization/ebtables.morph
new file mode 100644
index 00000000..8be1b4f2
--- /dev/null
+++ b/strata/virtualization/ebtables.morph
@@ -0,0 +1,7 @@
+name: ebtables
+kind: chunk
+build-system: manual
+build-commands:
+- make
+install-commands:
+- make install DESTDIR="$DESTDIR" BINDIR="$DESDIR"/sbin
diff --git a/strata/virtualization/libvirt.morph b/strata/virtualization/libvirt.morph
index 63b5d768..bdc99ddf 100644
--- a/strata/virtualization/libvirt.morph
+++ b/strata/virtualization/libvirt.morph
@@ -3,4 +3,29 @@ kind: chunk
build-system: autotools
configure-commands:
- |
- GNULIB_SRCDIR=gnulib-src ./autogen.sh --without-apparmor --with-attr --without-audit --without-avahi --with-blkid --without-capng --with-curl --with-dbus --with-fuse --without-glusterfs --without-hal --without-netcf --without-numactl --without-openwsman --with-pciaccess --without-readline --without-sanlock --without-sasl --without-selinux --without-ssh2 --with-systemd-daemon --with-udev --with-yajl --without-xen --with-qemu --without-uml --without-openvz --without-vmware --without-phyp --without-xenapi --without-libxl --without-vbox --without-lxc --without-esx --without-hyperv --without-parallels --with-test --with-remote --with-libvirtd --with-init-script=systemd --without-bhyve --without-gnutls --without-polkit --without-firewalld --without-dtrace --without-numad --with-network --with-secrets --with-storage-dir --with-storage-fs --with-storage-lvm --without-storage-iscsi --without-storage-scsi --without-storage-mpath --without-storage-disk --with-storage-rbd --without-storage-sheepdog --without-storage-gluster --without-wireshark-dissector --with-python --prefix="$PREFIX"
+ GNULIB_SRCDIR=.gnulib \
+ ./autogen.sh \
+ --without-apparmor --with-attr --without-audit --without-avahi --with-blkid \
+ --without-capng --with-curl --with-dbus --with-fuse --without-glusterfs \
+ --without-hal --without-netcf --without-numactl --without-openwsman \
+ --with-pciaccess --without-readline --without-sanlock --without-sasl \
+ --without-selinux --without-ssh2 --with-systemd-daemon --with-udev \
+ --with-yajl --without-xen --with-qemu --without-uml --without-openvz \
+ --without-vmware --without-phyp --without-xenapi --without-libxl \
+ --without-vbox --without-lxc --without-esx --without-hyperv \
+ --without-parallels --with-test --with-remote --with-libvirtd \
+ --with-init-script=systemd --without-bhyve --without-gnutls --without-polkit \
+ --without-firewalld --without-dtrace --without-numad --with-network \
+ --with-secrets --with-storage-dir --with-storage-fs --with-storage-lvm \
+ --without-storage-iscsi --without-storage-scsi --without-storage-mpath \
+ --without-storage-disk --with-storage-rbd --without-storage-sheepdog \
+ --without-storage-gluster --without-wireshark-dissector --disable-werror \
+ --prefix="$PREFIX"
+system-integration:
+ libvirt-misc:
+ 01-addgroup:
+ - groupadd libvirt
+ 02-setup_libvirtconf:
+ - sed -i 's/#unix_sock_group = "libvirt"/unix_sock_group = "libvirt"/' /etc/libvirt/libvirtd.conf
+ - sed -i 's/#unix_sock_rw_perms = "0770"/unix_sock_rw_perms = "0770"/' /etc/libvirt/libvirtd.conf
+ - sed -i 's/#unix_sock_ro_perms = "0777"/unix_sock_ro_perms = "0777"/' /etc/libvirt/libvirtd.conf
diff --git a/strata/virtualization/openvswitch.morph b/strata/virtualization/openvswitch.morph
new file mode 100644
index 00000000..1b5cdd86
--- /dev/null
+++ b/strata/virtualization/openvswitch.morph
@@ -0,0 +1,11 @@
+name: openvswitch
+kind: chunk
+build-system: manual
+pre-configure-commands:
+- ./boot.sh
+configure-commands:
+- ./configure --enable-ssl
+build-commands:
+- make
+install-commands:
+- make install DESTDIR="$DESTDIR" prefix="$PREFIX"
diff --git a/strata/wayland-generic.morph b/strata/wayland-generic.morph
index 164db34b..58eefbbd 100644
--- a/strata/wayland-generic.morph
+++ b/strata/wayland-generic.morph
@@ -13,7 +13,7 @@ chunks:
- name: wayland
morph: strata/wayland-generic/wayland.morph
repo: upstream:wayland
- ref: 52d971c924d0147d6949096c9cf001d75828a054
- unpetrify-ref: 1.6.93
+ ref: 8e9d5a108476b3435a8286613b9a63b69afd92b7
+ unpetrify-ref: 1.7.0
build-depends:
- libxkbcommon
diff --git a/strata/weston-common.morph b/strata/weston-common.morph
index f79510c8..13106ea5 100644
--- a/strata/weston-common.morph
+++ b/strata/weston-common.morph
@@ -10,6 +10,6 @@ chunks:
- name: weston
morph: strata/weston-common/weston.morph
repo: upstream:weston
- ref: 06315ce5b9569e02ec4e7d322d933bc247620aff
- unpetrify-ref: baserock/weston-1.6.93/tegra
+ ref: 322383ed469d69401b502618718a97a4e85c97d8
+ unpetrify-ref: baserock/weston-1.7.0/tegra
build-depends: []
diff --git a/strata/x-generic.morph b/strata/x-generic.morph
index 572932b4..644d47c2 100644
--- a/strata/x-generic.morph
+++ b/strata/x-generic.morph
@@ -50,3 +50,25 @@ chunks:
unpetrify-ref: baserock/morph
build-depends:
- xorg-lib-libxkbfile
+- name: xcb-util
+ repo: upstream:xcb-util
+ ref: 45215e6f56bf57efdf5469567c00eba7a991d3a3
+ unpetrify-ref: baserock/morph
+ build-depends: []
+- name: util-wm
+ repo: upstream:util-wm
+ ref: 18bde07dc7cb44617c0d159ccd9ef640804296e3
+ unpetrify-ref: baserock/morph
+ build-depends: []
+- name: util-keysyms
+ morph: strata/x-generic/util-keysyms.morph
+ repo: upstream:util-keysyms
+ ref: 0be179eff4eadb99ee303891d1c29c4e4dd6fbab
+ unpetrify-ref: baserock/morph
+ build-depends: []
+- name: util-image
+ repo: upstream:util-image
+ ref: 66b0caa72eb5011d89d0346424ea40b9e8e93816
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - xcb-util
diff --git a/strata/xstatic.morph b/strata/xstatic.morph
new file mode 100644
index 00000000..a632d4df
--- /dev/null
+++ b/strata/xstatic.morph
@@ -0,0 +1,108 @@
+name: xstatic
+kind: stratum
+description: |
+ Stratum with Xstatic and some xstatic libraries.
+
+ XStatic is a packaging standard to package external static files as
+ a python package, so they are easily usable on all OSes.
+
+ This conflicts with the 'everything from Git' policy of Baserock,
+ but it is required right now for the Openstack system to work.
+build-depends:
+- morph: strata/foundation.morph
+chunks:
+- name: xstatic
+ repo: upstream:xstatic
+ ref: 6c8604a422ba7f176ce6b372a8e182c293d06fb2
+ unpetrify-ref: 1.0.1
+ build-depends: []
+- name: xstatic-angular
+ repo: upstream:xstatic-packages/xstatic-angular
+ ref: dac047df05da5bb20de4e78876bc03820d0c6671
+ unpetrify-ref: 1.3.7.0
+ build-depends: []
+- name: xstatic-angular-cookies
+ repo: upstream:xstatic-packages/xstatic-angular-cookies
+ ref: 66141a33ae7ad84b82ba9384a8101ae15ccd6da5
+ unpetrify-ref: 1.2.1.1
+ build-depends: []
+- name: xstatic-angular-mock
+ repo: upstream:xstatic-packages/xstatic-angular-mock
+ ref: 20fdada109b167bcdcacec22986b43fdb42866f3
+ unpetrify-ref: 1.2.1.1
+ build-depends: []
+- name: xstatic-bootstrap-datepicker
+ repo: upstream:xstatic-packages/xstatic-bootstrap-datepicker
+ ref: 60caf41e32d49f9bc715c39570f01449ebfbd37a
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-bootstrap-scss
+ repo: upstream:xstatic-packages/xstatic-bootstrap-scss
+ ref: e8ca8e38e464691268faec8cd6ae59777ee7ee9e
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-d3
+ repo: upstream:xstatic-packages/xstatic-d3
+ ref: 1e754e73c801fb9315995ffeb95ae51233c4fcaf
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-hogan
+ repo: upstream:xstatic-packages/xstatic-hogan
+ ref: 9e39977f6a6744810b08fa0323147e9f31dbd363
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-font-awesome
+ repo: upstream:xstatic-packages/xstatic-font-awesome
+ ref: c13aad1b95b1d84e73f2565a18a5a8e2bd2194a7
+ unpetrify-ref: 4.2.0.0
+ build-depends: []
+- name: xstatic-jasmine
+ repo: upstream:xstatic-packages/xstatic-jasmine
+ ref: a55f5db1dbe59b23c7d6284250bf4eac1d0143c3
+ unpetrify-ref: 2.1.2.0
+ build-depends: []
+- name: xstatic-jquery
+ repo: upstream:xstatic-packages/xstatic-jquery
+ ref: e91c5bf82535a62c1cfac61b5efb6b5c0157c1f5
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-jquery-migrate
+ repo: upstream:xstatic-packages/xstatic-jquery-migrate
+ ref: 989b3b31106727542dd83810c3b952f90d8cdb8f
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-jquery-quicksearch
+ repo: upstream:xstatic-packages/xstatic-jquery-quicksearch
+ ref: f5221c8c30507340846d97d6db41a782e7c63316
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-jquery-tablesorter
+ repo: upstream:xstatic-packages/xstatic-jquery-tablesorter
+ ref: eb78328391f44a9a88033e1aede1a605902c5551
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-jquery-ui
+ repo: upstream:xstatic-packages/xstatic-jquery-ui
+ ref: b494369430dafd8ac4ddbe90efb9f8ad20a6e6d1
+ unpetrify-ref: 1.11.0.1
+ build-depends: []
+- name: xstatic-jsencrypt
+ repo: upstream:xstatic-packages/xstatic-jsencrypt
+ ref: 5c0f088310ecd602e3aaf5e683385b0d27258409
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-qunit
+ repo: upstream:xstatic-packages/xstatic-qunit
+ ref: c3189eaa77c68c149a40b8c0afc8722cf394bd1f
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-rickshaw
+ repo: upstream:xstatic-packages/xstatic-rickshaw
+ ref: 6427ca5406852bc779d6918f487bb0fe3f063e77
+ unpetrify-ref: master
+ build-depends: []
+- name: xstatic-spin
+ repo: upstream:xstatic-packages/xstatic-spin
+ ref: 74b4c0d0ff12db1f84787246857d5e925ff6883f
+ unpetrify-ref: master
+ build-depends: []
diff --git a/systems/armv7lhf-cross-toolchain-system-x86_32-generic.morph b/systems/armv7lhf-cross-toolchain-system-x86_32-generic.morph
deleted file mode 100644
index e983ba7a..00000000
--- a/systems/armv7lhf-cross-toolchain-system-x86_32-generic.morph
+++ /dev/null
@@ -1,18 +0,0 @@
-name: armv7lhf-cross-toolchain-system-x86_32-generic
-kind: system
-description: A system that contains an ARM cross compiler, intended to be used as
- a sysroot.
-arch: x86_32
-strata:
-- name: build-essential
- morph: strata/build-essential.morph
-- name: armv7lhf-cross-toolchain
- morph: strata/armv7lhf-cross-toolchain.morph
-- name: cross-tools
- morph: strata/cross-tools.morph
-configuration-extensions:
-- set-hostname
-- add-config-files
-- simple-network
-- nfsboot
-- install-files
diff --git a/systems/armv7lhf-cross-toolchain-system-x86_64-generic.morph b/systems/armv7lhf-cross-toolchain-system-x86_64-generic.morph
deleted file mode 100644
index 1a8c20bb..00000000
--- a/systems/armv7lhf-cross-toolchain-system-x86_64-generic.morph
+++ /dev/null
@@ -1,18 +0,0 @@
-name: armv7lhf-cross-toolchain-system-x86_64-generic
-kind: system
-description: A system that contains an ARM cross compiler, intended to be used as
- a sysroot.
-arch: x86_64
-strata:
-- name: build-essential
- morph: strata/build-essential.morph
-- name: armv7lhf-cross-toolchain
- morph: strata/armv7lhf-cross-toolchain.morph
-- name: cross-tools
- morph: strata/cross-tools.morph
-configuration-extensions:
-- set-hostname
-- add-config-files
-- simple-network
-- nfsboot
-- install-files
diff --git a/systems/devel-system-armv8l64.morph b/systems/devel-system-armv8l64.morph
new file mode 100644
index 00000000..27080535
--- /dev/null
+++ b/systems/devel-system-armv8l64.morph
@@ -0,0 +1,43 @@
+name: devel-system-armv8l64
+kind: system
+description: |
+ A system with useful tools for doing Baserock development.
+
+ For use on 64-bit ARMv8 computers using little-endian word.
+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: openstack-clients
+ morph: strata/openstack-clients.morph
+- name: cloudinit-support
+ morph: strata/cloudinit-support.morph
+- name: ruby
+ morph: strata/ruby.morph
+- name: lorry
+ morph: strata/lorry.morph
+- name: baserock-import
+ morph: strata/baserock-import.morph
+- name: nfs
+ morph: strata/nfs.morph
+- name: python-tools
+ morph: strata/python-tools.morph
+- name: devtools
+ morph: strata/devtools.morph
+configuration-extensions:
+- set-hostname
+- add-config-files
+- simple-network
+- nfsboot
+- install-files
+- cloud-init
diff --git a/systems/genivi-baseline-system-armv7lhf-jetson.morph b/systems/genivi-baseline-system-armv7lhf-jetson.morph
index 5cbfddbe..50581561 100644
--- a/systems/genivi-baseline-system-armv7lhf-jetson.morph
+++ b/systems/genivi-baseline-system-armv7lhf-jetson.morph
@@ -19,8 +19,10 @@ strata:
morph: strata/audio-bluetooth.morph
- name: libdrm-common
morph: strata/libdrm-common.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: genivi
morph: strata/genivi.morph
- name: wayland-generic
diff --git a/systems/genivi-baseline-system-armv7lhf-versatile.morph b/systems/genivi-baseline-system-armv7lhf-versatile.morph
index a5f07750..16bed197 100644
--- a/systems/genivi-baseline-system-armv7lhf-versatile.morph
+++ b/systems/genivi-baseline-system-armv7lhf-versatile.morph
@@ -19,8 +19,10 @@ strata:
morph: strata/audio-bluetooth.morph
- name: libdrm-common
morph: strata/libdrm-common.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: genivi
morph: strata/genivi.morph
- name: wayland-generic
diff --git a/systems/genivi-baseline-system-x86_64-generic.morph b/systems/genivi-baseline-system-x86_64-generic.morph
index f5fb571e..f4828688 100644
--- a/systems/genivi-baseline-system-x86_64-generic.morph
+++ b/systems/genivi-baseline-system-x86_64-generic.morph
@@ -19,8 +19,10 @@ strata:
morph: strata/audio-bluetooth.morph
- name: libdrm-common
morph: strata/libdrm-common.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: genivi
morph: strata/genivi.morph
- name: wayland-generic
diff --git a/systems/gitlab-ci-runner.morph b/systems/gitlab-ci-runner.morph
index b4e20ec7..979b73b0 100644
--- a/systems/gitlab-ci-runner.morph
+++ b/systems/gitlab-ci-runner.morph
@@ -21,8 +21,10 @@ strata:
morph: strata/x-common.morph
- name: x-generic
morph: strata/x-generic.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: genivi
morph: strata/genivi.morph
- name: tools
diff --git a/systems/qt4-devel-system-x86_64-generic.morph b/systems/qt4-devel-system-x86_64-generic.morph
index 9a23bdeb..0a98f205 100644
--- a/systems/qt4-devel-system-x86_64-generic.morph
+++ b/systems/qt4-devel-system-x86_64-generic.morph
@@ -12,6 +12,8 @@ strata:
morph: strata/foundation.morph
- name: audio-bluetooth
morph: strata/audio-bluetooth.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
- name: multimedia-gstreamer-0.10
morph: strata/multimedia-gstreamer-0.10.morph
- name: bsp-x86_64-generic
diff --git a/systems/qt5-devel-system-x86_64-generic.morph b/systems/qt5-devel-system-x86_64-generic.morph
index 1a78ff4f..0f768536 100644
--- a/systems/qt5-devel-system-x86_64-generic.morph
+++ b/systems/qt5-devel-system-x86_64-generic.morph
@@ -12,8 +12,10 @@ strata:
morph: strata/foundation.morph
- name: audio-bluetooth
morph: strata/audio-bluetooth.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: bsp-x86_64-generic
morph: strata/bsp-x86_64-generic.morph
- name: tools
diff --git a/systems/weston-system-armv7lhf-jetson.morph b/systems/weston-system-armv7lhf-jetson.morph
index a51bd810..e1979d44 100644
--- a/systems/weston-system-armv7lhf-jetson.morph
+++ b/systems/weston-system-armv7lhf-jetson.morph
@@ -19,8 +19,10 @@ strata:
morph: strata/audio-bluetooth.morph
- name: libdrm-common
morph: strata/libdrm-common.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: wayland-generic
morph: strata/wayland-generic.morph
- name: graphics-common
@@ -33,6 +35,12 @@ strata:
morph: strata/mesa-common.morph
- name: weston-common
morph: strata/weston-common.morph
+- name: x-common
+ morph: strata/x-common.morph
+- name: x-generic
+ morph: strata/x-generic.morph
+- name: tools
+ morph: strata/tools.morph
configuration-extensions:
- set-hostname
- add-config-files
diff --git a/systems/weston-system-x86_64-generic.morph b/systems/weston-system-x86_64-generic.morph
index b84eaeb5..dfa5c3df 100644
--- a/systems/weston-system-x86_64-generic.morph
+++ b/systems/weston-system-x86_64-generic.morph
@@ -19,8 +19,10 @@ strata:
morph: strata/audio-bluetooth.morph
- name: libdrm-common
morph: strata/libdrm-common.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: wayland-generic
morph: strata/wayland-generic.morph
- name: graphics-common
@@ -37,6 +39,8 @@ strata:
morph: strata/x-common.morph
- name: x-generic
morph: strata/x-generic.morph
+- name: tools
+ morph: strata/tools.morph
configuration-extensions:
- set-hostname
- add-config-files
diff --git a/systems/xfce-system.morph b/systems/xfce-system.morph
index 697ea52d..5aea4f7b 100644
--- a/systems/xfce-system.morph
+++ b/systems/xfce-system.morph
@@ -23,8 +23,10 @@ strata:
morph: strata/x-common.morph
- name: x-generic
morph: strata/x-generic.morph
-- name: multimedia
- morph: strata/multimedia.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
- name: genivi
morph: strata/genivi.morph
- name: gtk2