summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/0001-Always-enable-trivial-httpd-for-tests.patch59
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/0001-build-create-tests-directory-for-split-builds.patch43
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/0001-tests-Handle-EPIPE-failures-when-head-terminates.patch51
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch42
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/0002-Gate-ostree-trivial-httpd-on-BUILDOPT_TRIVIAL_HTTPD.patch51
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch40
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/0003-tests-Avoid-musl-failure-with-cp-a.patch52
-rw-r--r--meta-oe/recipes-extended/ostree/ostree/run-ptest3
-rw-r--r--meta-oe/recipes-extended/ostree/ostree_2019.4.bb45
9 files changed, 271 insertions, 115 deletions
diff --git a/meta-oe/recipes-extended/ostree/ostree/0001-Always-enable-trivial-httpd-for-tests.patch b/meta-oe/recipes-extended/ostree/ostree/0001-Always-enable-trivial-httpd-for-tests.patch
deleted file mode 100644
index c9e1306afd..0000000000
--- a/meta-oe/recipes-extended/ostree/ostree/0001-Always-enable-trivial-httpd-for-tests.patch
+++ /dev/null
@@ -1,59 +0,0 @@
1From 44e0647230b22cd136ae2fb252ce90eed4751970 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Wed, 4 Sep 2019 17:29:15 +0100
4Subject: [PATCH 1/2] Always enable trivial-httpd for tests
5
6When running tests we always need ostree-trivial-httpd, so enable it
7unconditionally
8
9Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
10Upstream-Status: Submitted [https://github.com/ostreedev/ostree/pull/1912]
11---
12 Makefile.am | 1 +
13 ci/build.sh | 5 +++++
14 ci/travis-build.sh | 1 +
15 3 files changed, 7 insertions(+)
16
17diff --git a/Makefile.am b/Makefile.am
18index cd04a055045a..673dbf88de55 100644
19--- a/Makefile.am
20+++ b/Makefile.am
21@@ -39,6 +39,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS += \
22 --enable-gtk-doc \
23 --enable-man \
24 --disable-maintainer-mode \
25+ --enable-trivial-httpd-cmdline \
26 $(NULL)
27
28 GITIGNOREFILES = aclocal.m4 build-aux/ buildutil/*.m4 config.h.in gtk-doc.make
29diff --git a/ci/build.sh b/ci/build.sh
30index 0901507498f2..806af050b780 100755
31--- a/ci/build.sh
32+++ b/ci/build.sh
33@@ -22,6 +22,11 @@ case "${CONFIGOPTS:-}" in
34 fi
35 ;;
36 esac
37+# unless libsoup is disabled, enable trivial-httpd for the tests
38+case "${CONFIGOPTS:-}" in
39+ *--without-soup*) ;;
40+ *) CONFIGOPTS="${CONFIGOPTS:-} --enable-trivial-httpd-cmdline" ;;
41+esac
42
43 # always fail on warnings; https://github.com/ostreedev/ostree/pull/971
44 # NB: this disables the default set of flags from configure.ac
45diff --git a/ci/travis-build.sh b/ci/travis-build.sh
46index 3fd969bdced6..7c85313a2d32 100755
47--- a/ci/travis-build.sh
48+++ b/ci/travis-build.sh
49@@ -85,6 +85,7 @@ make="make -j${ci_parallel} V=1 VERBOSE=1"
50
51 ../configure \
52 --enable-always-build-tests \
53+ --enable-trivial-httpd-cmdline \
54 ${ci_configopts}
55 "$@"
56
57--
582.17.1
59
diff --git a/meta-oe/recipes-extended/ostree/ostree/0001-build-create-tests-directory-for-split-builds.patch b/meta-oe/recipes-extended/ostree/ostree/0001-build-create-tests-directory-for-split-builds.patch
new file mode 100644
index 0000000000..d94b3ded9b
--- /dev/null
+++ b/meta-oe/recipes-extended/ostree/ostree/0001-build-create-tests-directory-for-split-builds.patch
@@ -0,0 +1,43 @@
1From 114fe5067b58a2434b44855eee48f865186fe0fa Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Tue, 5 Nov 2019 22:26:23 +0000
4Subject: [PATCH] build: create tests directory for split builds
5
6When `--disable-dependency-tracking` is in effect with separate build
7directory, the tests directory isn't created as a result of the
8dependency generation, which leads to a build race for the tests
9directory being created and failures:
10
11 Making all in .
12 make[2]: Entering directory 'TOPDIR/build/tmp/work/riscv64-yoe-linux-musl/ostree/2019.5-r0/build'
13 (echo '[Test]' > tests/test-local-pull-depth.sh.test.tmp; \
14 echo 'Type=session' >> tests/test-local-pull-depth.sh.test.tmp; \
15 echo 'Exec=env G_TEST_SRCDIR=/usr/libexec/installed-tests/libostree G_TEST_BUILDDIR=/usr/libexec/installed-tests/libostree /usr/libexec/installed-tests/libostree/test-local-pull-depth.sh' >> tests/test-local-pull-depth.sh.test.tmp; \
16 mv tests/test-local-pull-depth.sh.test.tmp tests/test-local-pull-depth.sh.test)
17 /bin/sh: tests/test-local-pull-depth.sh.test.tmp: No such file or directory
18 /bin/sh: line 1: tests/test-local-pull-depth.sh.test.tmp: No such file or directory
19 /bin/sh: line 2: tests/test-local-pull-depth.sh.test.tmp: No such file or directory
20 mv: cannot stat 'tests/test-local-pull-depth.sh.test.tmp': No such file or directory
21 make[2]: *** [Makefile:9282: tests/test-local-pull-depth.sh.test] Error 1
22
23Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
24Upstream-Status: Pending
25---
26 buildutil/glib-tap.mk | 1 +
27 1 file changed, 1 insertion(+)
28
29diff --git a/buildutil/glib-tap.mk b/buildutil/glib-tap.mk
30index 34b8f21ea26a..9a944a0acc88 100644
31--- a/buildutil/glib-tap.mk
32+++ b/buildutil/glib-tap.mk
33@@ -116,6 +116,7 @@ installed_testcases = $(test_programs) $(installed_test_programs) \
34 installed_test_meta_DATA = $(installed_testcases:=.test)
35
36 %.test: %$(EXEEXT) Makefile
37+ @$(MKDIR_P) $(dir $@)
38 $(AM_V_GEN) (echo '[Test]' > $@.tmp; \
39 echo 'Type=session' >> $@.tmp; \
40 echo 'Exec=env G_TEST_SRCDIR=$(installed_testdir) G_TEST_BUILDDIR=$(installed_testdir) $(installed_testdir)/$(notdir $<)' >> $@.tmp; \
41--
422.17.1
43
diff --git a/meta-oe/recipes-extended/ostree/ostree/0001-tests-Handle-EPIPE-failures-when-head-terminates.patch b/meta-oe/recipes-extended/ostree/ostree/0001-tests-Handle-EPIPE-failures-when-head-terminates.patch
new file mode 100644
index 0000000000..fdb733ebe4
--- /dev/null
+++ b/meta-oe/recipes-extended/ostree/ostree/0001-tests-Handle-EPIPE-failures-when-head-terminates.patch
@@ -0,0 +1,51 @@
1From fb519f0361565cad0d340095263a1e8866ec4f89 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Thu, 31 Oct 2019 11:30:00 +0000
4Subject: [PATCH 1/3] tests: Handle EPIPE failures when head terminates
5
6When using musl, it appears that the default is line buffered output, so
7when `head -1` reads from a pipe we have to handle the source end of the
8pipe getting EPIPE.
9
10Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
11Upstream-Status: Accepted [v2019.6]
12---
13 tests/pull-test.sh | 2 +-
14 tests/test-pull-mirrorlist.sh | 4 ++--
15 2 files changed, 3 insertions(+), 3 deletions(-)
16
17diff --git a/tests/pull-test.sh b/tests/pull-test.sh
18index 0a97a1195582..2cfd8e02f790 100644
19--- a/tests/pull-test.sh
20+++ b/tests/pull-test.sh
21@@ -177,7 +177,7 @@ if ! skip_one_without_user_xattrs; then
22 ${CMD_PREFIX} ostree --repo=cacherepo pull-local ostree-srv/gnomerepo main
23 rev=$(ostree --repo=cacherepo rev-parse main)
24 ${CMD_PREFIX} ostree --repo=cacherepo ls -R -C main > ls.txt
25- regfile_hash=$(grep -E -e '^-0' ls.txt | head -1 | awk '{ print $5 }')
26+ regfile_hash=$((grep -E -e '^-0' ls.txt || true) | head -1 | awk '{ print $5 }')
27 ${CMD_PREFIX} ostree --repo=repo remote add --set=gpg-verify=false corruptrepo $(cat httpd-address)/ostree/corruptrepo
28 # Make this a loop so in the future we can add more object types like commit etc.
29 for object in ${regfile_hash}.file; do
30diff --git a/tests/test-pull-mirrorlist.sh b/tests/test-pull-mirrorlist.sh
31index 4e44852d3971..85ff66e99f8e 100755
32--- a/tests/test-pull-mirrorlist.sh
33+++ b/tests/test-pull-mirrorlist.sh
34@@ -47,12 +47,12 @@ setup_mirror content_mirror3
35
36 # Let's delete a file from 1 so that it falls back on 2
37 cd ${test_tmpdir}/content_mirror1/ostree/gnomerepo
38-filez=$(find objects/ -name '*.filez' | head -n 1)
39+filez=$((find objects/ -name '*.filez' || true) | head -n 1)
40 rm ${filez}
41
42 # Let's delete a file from 1 and 2 so that it falls back on 3
43 cd ${test_tmpdir}/content_mirror1/ostree/gnomerepo
44-filez=$(find objects/ -name '*.filez' | head -n 1)
45+filez=$((find objects/ -name '*.filez' || true) | head -n 1)
46 rm ${filez}
47 cd ${test_tmpdir}/content_mirror2/ostree/gnomerepo
48 rm ${filez}
49--
502.17.1
51
diff --git a/meta-oe/recipes-extended/ostree/ostree/0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch b/meta-oe/recipes-extended/ostree/ostree/0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch
new file mode 100644
index 0000000000..dcafb09957
--- /dev/null
+++ b/meta-oe/recipes-extended/ostree/ostree/0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch
@@ -0,0 +1,42 @@
1From 4d17cd917fe4fb67d2f9e4881b6693ac7289f423 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Wed, 30 Oct 2019 07:55:41 +0000
4Subject: [PATCH 1/4] tests/core: Fallback to en_US.UTF-8 locale
5
6A number of tests expect explicit left/right single quotes in their
7messages, which will never happen in the C locale. Change so we pick a
8likely UTF-8 locale, or fail if we can't find one.
9
10Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
11Upstream-Status: Accepted [v2019.6]
12---
13 tests/libtest-core.sh | 12 ++++--------
14 1 file changed, 4 insertions(+), 8 deletions(-)
15
16diff --git a/tests/libtest-core.sh b/tests/libtest-core.sh
17index f6f94288fc61..bc191332c916 100644
18--- a/tests/libtest-core.sh
19+++ b/tests/libtest-core.sh
20@@ -35,15 +35,11 @@ assert_not_reached () {
21 }
22
23 # Some tests look for specific English strings. Use a UTF-8 version
24-# of the C (POSIX) locale if we have one, or fall back to POSIX
25+# of the C (POSIX) locale if we have one, or fall back to en_US.UTF-8
26 # (https://sourceware.org/glibc/wiki/Proposals/C.UTF-8)
27-if locale -a | grep '^C.UTF-8$' >/dev/null; then
28- export LC_ALL=C.UTF-8
29-elif locale -a | grep '^C.utf8$' >/dev/null; then
30- export LC_ALL=C.utf8
31-else
32- export LC_ALL=C
33-fi
34+export LC_ALL=$(locale -a | grep -Ee '\.(UTF-8|utf8)' | grep -iEe '^(C|en_US)' | head -1 || true)
35+if [ -z "${LC_ALL}" ]; then fatal "Can't find suitable UTF-8 locale"; fi
36+
37 # A GNU extension, used whenever LC_ALL is not C
38 unset LANGUAGE
39
40--
412.17.1
42
diff --git a/meta-oe/recipes-extended/ostree/ostree/0002-Gate-ostree-trivial-httpd-on-BUILDOPT_TRIVIAL_HTTPD.patch b/meta-oe/recipes-extended/ostree/ostree/0002-Gate-ostree-trivial-httpd-on-BUILDOPT_TRIVIAL_HTTPD.patch
deleted file mode 100644
index 362b2f36ab..0000000000
--- a/meta-oe/recipes-extended/ostree/ostree/0002-Gate-ostree-trivial-httpd-on-BUILDOPT_TRIVIAL_HTTPD.patch
+++ /dev/null
@@ -1,51 +0,0 @@
1From 2629328b39ae117876f4854409c2231220a30b9c Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Thu, 5 Sep 2019 13:22:15 +0100
4Subject: [PATCH 2/2] Gate ostree-trivial-httpd on BUILDOPT_TRIVIAL_HTTPD
5
6When building without --enable-trivial-httpd-cmdline, don't build or install
7the ostree-trivial-httpd binary.
8
9Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
10Upstream-Status: Submitted [https://github.com/ostreedev/ostree/pull/1912]
11---
12 Makefile-ostree.am | 3 ++-
13 configure.ac | 3 +++
14 2 files changed, 5 insertions(+), 1 deletion(-)
15
16diff --git a/Makefile-ostree.am b/Makefile-ostree.am
17index 76f39cad4b74..7b53cb148960 100644
18--- a/Makefile-ostree.am
19+++ b/Makefile-ostree.am
20@@ -143,12 +143,13 @@ ostree_SOURCES += src/ostree/ot-builtin-pull.c
21 endif
22
23 if USE_LIBSOUP
24-# Eventually once we stop things from using this, we should support disabling this
25+if BUILDOPT_TRIVIAL_HTTPD
26 ostree_SOURCES += src/ostree/ot-builtin-trivial-httpd.c
27 pkglibexec_PROGRAMS += ostree-trivial-httpd
28 ostree_trivial_httpd_SOURCES = src/ostree/ostree-trivial-httpd.c
29 ostree_trivial_httpd_CFLAGS = $(ostree_bin_shared_cflags) $(OT_INTERNAL_SOUP_CFLAGS)
30 ostree_trivial_httpd_LDADD = $(ostree_bin_shared_ldadd) $(OT_INTERNAL_SOUP_LIBS)
31+endif
32
33 if !USE_CURL
34 # This is necessary for the cookie jar bits
35diff --git a/configure.ac b/configure.ac
36index 069bab01752e..ffc67980d507 100644
37--- a/configure.ac
38+++ b/configure.ac
39@@ -192,6 +192,9 @@ AC_ARG_ENABLE(trivial-httpd-cmdline,
40 [Continue to support "ostree trivial-httpd" [default=no]])],,
41 enable_trivial_httpd_cmdline=no)
42 AM_CONDITIONAL(BUILDOPT_TRIVIAL_HTTPD, test x$enable_trivial_httpd_cmdline = xyes)
43+AS_IF([test x$with_soup = xno && test x$enable_trivial_httpd_cmdline = xyes], [
44+ AC_MSG_ERROR([trivial-httpd enabled, but libsoup is not; libsoup is needed for trivial-httpd])
45+])
46 AM_COND_IF(BUILDOPT_TRIVIAL_HTTPD,
47 [AC_DEFINE([BUILDOPT_ENABLE_TRIVIAL_HTTPD_CMDLINE], 1, [Define if we are enabling ostree trivial-httpd entrypoint])]
48 )
49--
502.17.1
51
diff --git a/meta-oe/recipes-extended/ostree/ostree/0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch b/meta-oe/recipes-extended/ostree/ostree/0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch
new file mode 100644
index 0000000000..5ab9c8f6d7
--- /dev/null
+++ b/meta-oe/recipes-extended/ostree/ostree/0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch
@@ -0,0 +1,40 @@
1From 3d48021fb0892721fab8359b49470e521aaed493 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Thu, 31 Oct 2019 11:28:07 +0000
4Subject: [PATCH 2/3] tests/core: Assume C.UTF-8 if locale isn't found
5
6When building with musl there's no locale command, also its default
7locale is C.UTF-8, so just get C.UTF-8 if we can't find locale.
8
9Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
10Upstream-Status: Accepted [v2019.6]
11---
12 tests/libtest-core.sh | 12 +++++++++---
13 1 file changed, 9 insertions(+), 3 deletions(-)
14
15diff --git a/tests/libtest-core.sh b/tests/libtest-core.sh
16index bc191332c916..46aafab03cc8 100644
17--- a/tests/libtest-core.sh
18+++ b/tests/libtest-core.sh
19@@ -37,9 +37,15 @@ assert_not_reached () {
20 # Some tests look for specific English strings. Use a UTF-8 version
21 # of the C (POSIX) locale if we have one, or fall back to en_US.UTF-8
22 # (https://sourceware.org/glibc/wiki/Proposals/C.UTF-8)
23-export LC_ALL=$(locale -a | grep -Ee '\.(UTF-8|utf8)' | grep -iEe '^(C|en_US)' | head -1 || true)
24-if [ -z "${LC_ALL}" ]; then fatal "Can't find suitable UTF-8 locale"; fi
25-
26+#
27+# If we can't find the locale command assume we have support for C.UTF-8
28+# (e.g. musl based systems)
29+if type -p locale >/dev/null; then
30+ export LC_ALL=$(locale -a | grep -Ee '\.(UTF-8|utf8)' | grep -iEe '^(C|en_US)' | head -1 || true)
31+ if [ -z "${LC_ALL}" ]; then fatal "Can't find suitable UTF-8 locale"; fi
32+else
33+ export LC_ALL=C.UTF-8
34+fi
35 # A GNU extension, used whenever LC_ALL is not C
36 unset LANGUAGE
37
38--
392.17.1
40
diff --git a/meta-oe/recipes-extended/ostree/ostree/0003-tests-Avoid-musl-failure-with-cp-a.patch b/meta-oe/recipes-extended/ostree/ostree/0003-tests-Avoid-musl-failure-with-cp-a.patch
new file mode 100644
index 0000000000..834617c12d
--- /dev/null
+++ b/meta-oe/recipes-extended/ostree/ostree/0003-tests-Avoid-musl-failure-with-cp-a.patch
@@ -0,0 +1,52 @@
1From abf1a7392b2fa1945286a39a35190d74fe141e52 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Thu, 31 Oct 2019 17:09:36 +0000
4Subject: [PATCH 3/3] tests: Avoid musl failure with `cp -a`
5
6When copying the tree, using musl and GNU coreutils, something gets confused
7when setting the ownership of symlinks and the copy fails with:
8
9 cp: failed to preserve ownership for osdata-devel/bin: Not supported
10
11Rework using tar to avoid the problem.
12
13Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
14Upstream-Status: Accepted [v2019.6]
15---
16 tests/libtest.sh | 4 +++-
17 tests/test-admin-gpg.sh | 4 +++-
18 2 files changed, 6 insertions(+), 2 deletions(-)
19
20diff --git a/tests/libtest.sh b/tests/libtest.sh
21index ba00073a10a7..3f5fd931bc1e 100755
22--- a/tests/libtest.sh
23+++ b/tests/libtest.sh
24@@ -440,7 +440,9 @@ EOF
25 ${CMD_PREFIX} ostree --repo=${test_tmpdir}/testos-repo commit --add-metadata-string version=1.0.10 -b testos/buildmaster/x86_64-runtime -s "Build"
26
27 cd ${test_tmpdir}
28- cp -a osdata osdata-devel
29+ rm -rf osdata-devel
30+ mkdir osdata-devel
31+ tar -C osdata -cf - . | tar -C osdata-devel -xf -
32 cd osdata-devel
33 mkdir -p usr/include
34 echo "a development header" > usr/include/foo.h
35diff --git a/tests/test-admin-gpg.sh b/tests/test-admin-gpg.sh
36index 1f50c8a9a508..dc776743776c 100755
37--- a/tests/test-admin-gpg.sh
38+++ b/tests/test-admin-gpg.sh
39@@ -90,7 +90,9 @@ EOF
40 ${CMD_PREFIX} ostree --repo=${test_tmpdir}/testos-repo commit --add-metadata-string version=1.0.10 -b testos/buildmaster/x86_64-runtime -s "Build" --gpg-sign=$keyid --gpg-homedir=${test_tmpdir}/gpghome
41
42 cd ${test_tmpdir}
43- cp -a osdata osdata-devel
44+ rm -rf osdata-devel
45+ mkdir osdata-devel
46+ tar -C osdata -cf - . | tar -C osdata-devel -xf -
47 cd osdata-devel
48 mkdir -p usr/include
49 echo "a development header" > usr/include/foo.h
50--
512.17.1
52
diff --git a/meta-oe/recipes-extended/ostree/ostree/run-ptest b/meta-oe/recipes-extended/ostree/ostree/run-ptest
new file mode 100644
index 0000000000..963d1f6928
--- /dev/null
+++ b/meta-oe/recipes-extended/ostree/ostree/run-ptest
@@ -0,0 +1,3 @@
1#! /bin/sh
2
3gnome-desktop-testing-runner libostree
diff --git a/meta-oe/recipes-extended/ostree/ostree_2019.4.bb b/meta-oe/recipes-extended/ostree/ostree_2019.4.bb
index 505c9fcccc..f438b35ebe 100644
--- a/meta-oe/recipes-extended/ostree/ostree_2019.4.bb
+++ b/meta-oe/recipes-extended/ostree/ostree_2019.4.bb
@@ -25,8 +25,12 @@ PREMIRRORS = ""
25SRC_URI = " \ 25SRC_URI = " \
26 gitsm://github.com/ostreedev/ostree \ 26 gitsm://github.com/ostreedev/ostree \
27 file://0001-macros-Add-TEMP_FAILURE_RETRY-for-musl.patch \ 27 file://0001-macros-Add-TEMP_FAILURE_RETRY-for-musl.patch \
28 file://0001-Always-enable-trivial-httpd-for-tests.patch \ 28 file://run-ptest \
29 file://0002-Gate-ostree-trivial-httpd-on-BUILDOPT_TRIVIAL_HTTPD.patch \ 29 file://0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch \
30 file://0001-tests-Handle-EPIPE-failures-when-head-terminates.patch \
31 file://0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch \
32 file://0003-tests-Avoid-musl-failure-with-cp-a.patch \
33 file://0001-build-create-tests-directory-for-split-builds.patch \
30" 34"
31SRCREV = "9d39e7d91e8497987cad69a3fbed5c5fc91eebdc" 35SRCREV = "9d39e7d91e8497987cad69a3fbed5c5fc91eebdc"
32 36
@@ -34,9 +38,9 @@ UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+\.\d+)"
34 38
35S = "${WORKDIR}/git" 39S = "${WORKDIR}/git"
36 40
37inherit autotools bash-completion gobject-introspection gtk-doc pkgconfig systemd 41inherit autotools bash-completion gobject-introspection gtk-doc pkgconfig ptest-gnome systemd
38 42
39# package configuration - match ostree defaults, but without rofiles-fuse 43# Package configuration - match ostree defaults, but without rofiles-fuse
40# otherwise we introduce a dependendency on meta-filesystems 44# otherwise we introduce a dependendency on meta-filesystems
41PACKAGECONFIG ??= " \ 45PACKAGECONFIG ??= " \
42 ${@bb.utils.filter('DISTRO_FEATURES', 'selinux smack', d)} \ 46 ${@bb.utils.filter('DISTRO_FEATURES', 'selinux smack', d)} \
@@ -107,6 +111,7 @@ PACKAGES += " \
107 ${PN}-grub \ 111 ${PN}-grub \
108 ${PN}-mkinitcpio \ 112 ${PN}-mkinitcpio \
109 ${PN}-switchroot \ 113 ${PN}-switchroot \
114 ${PN}-trivial-httpd \
110" 115"
111 116
112FILES_${PN} = " \ 117FILES_${PN} = " \
@@ -118,7 +123,6 @@ FILES_${PN} = " \
118 ${libdir}/girepository-1.0 \ 123 ${libdir}/girepository-1.0 \
119 ${libdir}/lib*${SOLIBS} \ 124 ${libdir}/lib*${SOLIBS} \
120 ${libdir}/tmpfiles.d/ostree-tmpfiles.conf \ 125 ${libdir}/tmpfiles.d/ostree-tmpfiles.conf \
121 ${libexecdir}/libostree/ostree-trivial-httpd \
122 ${sysconfdir}/ostree/remotes.d \ 126 ${sysconfdir}/ostree/remotes.d \
123 ${systemd_unitdir}/system-generators/ostree-system-generator \ 127 ${systemd_unitdir}/system-generators/ostree-system-generator \
124 ${systemd_unitdir}/system/ostree-finalize-staged.path \ 128 ${systemd_unitdir}/system/ostree-finalize-staged.path \
@@ -141,17 +145,48 @@ FILES_${PN}-switchroot = " \
141 ${libdir}/ostree/ostree-prepare-root \ 145 ${libdir}/ostree/ostree-prepare-root \
142 ${systemd_unitdir}/system/ostree-prepare-root.service \ 146 ${systemd_unitdir}/system/ostree-prepare-root.service \
143" 147"
148FILES_${PN}-trivial-httpd = " \
149 ${libexecdir}/libostree/ostree-trivial-httpd \
150"
144 151
152RDEPENDS_${PN} = " \
153 ${@bb.utils.contains('PACKAGECONFIG', 'trivial-httpd-cmdline', '${PN}-trivial-httpd', '', d)} \
154"
145RDEPENDS_${PN}-dracut = "bash" 155RDEPENDS_${PN}-dracut = "bash"
146RDEPENDS_${PN}-mkinitcpio = "bash" 156RDEPENDS_${PN}-mkinitcpio = "bash"
147RDEPENDS_${PN}_class-target = " \ 157RDEPENDS_${PN}_class-target = " \
148 gnupg \ 158 gnupg \
149 ${PN}-switchroot \ 159 ${PN}-switchroot \
150" 160"
161RDEPENDS_${PN}-ptest += " \
162 attr \
163 bash \
164 coreutils \
165 cpio \
166 diffutils \
167 findutils \
168 grep \
169 python3-core \
170 python3-multiprocessing \
171 python3-pyyaml \
172 ${PN}-trivial-httpd \
173"
174RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils glibc-localedata-en-us"
151 175
152RRECOMMENDS_${PN} += "kernel-module-overlay" 176RRECOMMENDS_${PN} += "kernel-module-overlay"
177RRECOMMENDS_${PN}-ptest += "strace"
153 178
154SYSTEMD_SERVICE_${PN} = "ostree-remount.service ostree-finalize-staged.path" 179SYSTEMD_SERVICE_${PN} = "ostree-remount.service ostree-finalize-staged.path"
155SYSTEMD_SERVICE_${PN}-switchroot = "ostree-prepare-root.service" 180SYSTEMD_SERVICE_${PN}-switchroot = "ostree-prepare-root.service"
156 181
157BBCLASSEXTEND = "native" 182BBCLASSEXTEND = "native"
183
184python __anonymous() {
185 if bb.utils.contains('PTEST_ENABLED', '1', 'True', 'False', d):
186 if 'meta-python' not in d.getVar('BBFILE_COLLECTIONS').split():
187 raise bb.parse.SkipRecipe('ptest requires meta-python to be present.')
188 elif 'soup' not in d.getVar('PACKAGECONFIG').split():
189 raise bb.parse.SkipRecipe('ptest requires soup enabled in PACKAGECONFIG.')
190 elif not oe.utils.any_distro_features(d, "xattr"):
191 raise bb.parse.SkipRecipe('ptest requires xattr enabled in DISTRO_FEATURES.')
192}