diff options
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-extended/ostree')
7 files changed, 18 insertions, 305 deletions
diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-build-create-tests-directory-for-split-builds.patch b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-build-create-tests-directory-for-split-builds.patch deleted file mode 100644 index d94b3ded9b..0000000000 --- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-build-create-tests-directory-for-split-builds.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 114fe5067b58a2434b44855eee48f865186fe0fa Mon Sep 17 00:00:00 2001 -From: Alex Kiernan <alex.kiernan@gmail.com> -Date: Tue, 5 Nov 2019 22:26:23 +0000 -Subject: [PATCH] build: create tests directory for split builds - -When `--disable-dependency-tracking` is in effect with separate build -directory, the tests directory isn't created as a result of the -dependency generation, which leads to a build race for the tests -directory being created and failures: - - Making all in . - make[2]: Entering directory 'TOPDIR/build/tmp/work/riscv64-yoe-linux-musl/ostree/2019.5-r0/build' - (echo '[Test]' > tests/test-local-pull-depth.sh.test.tmp; \ - echo 'Type=session' >> tests/test-local-pull-depth.sh.test.tmp; \ - 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; \ - mv tests/test-local-pull-depth.sh.test.tmp tests/test-local-pull-depth.sh.test) - /bin/sh: tests/test-local-pull-depth.sh.test.tmp: No such file or directory - /bin/sh: line 1: tests/test-local-pull-depth.sh.test.tmp: No such file or directory - /bin/sh: line 2: tests/test-local-pull-depth.sh.test.tmp: No such file or directory - mv: cannot stat 'tests/test-local-pull-depth.sh.test.tmp': No such file or directory - make[2]: *** [Makefile:9282: tests/test-local-pull-depth.sh.test] Error 1 - -Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> -Upstream-Status: Pending ---- - buildutil/glib-tap.mk | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/buildutil/glib-tap.mk b/buildutil/glib-tap.mk -index 34b8f21ea26a..9a944a0acc88 100644 ---- a/buildutil/glib-tap.mk -+++ b/buildutil/glib-tap.mk -@@ -116,6 +116,7 @@ installed_testcases = $(test_programs) $(installed_test_programs) \ - installed_test_meta_DATA = $(installed_testcases:=.test) - - %.test: %$(EXEEXT) Makefile -+ @$(MKDIR_P) $(dir $@) - $(AM_V_GEN) (echo '[Test]' > $@.tmp; \ - echo 'Type=session' >> $@.tmp; \ - echo 'Exec=env G_TEST_SRCDIR=$(installed_testdir) G_TEST_BUILDDIR=$(installed_testdir) $(installed_testdir)/$(notdir $<)' >> $@.tmp; \ --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-macros-Add-TEMP_FAILURE_RETRY-for-musl.patch b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-macros-Add-TEMP_FAILURE_RETRY-for-musl.patch deleted file mode 100644 index d8c044cb92..0000000000 --- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-macros-Add-TEMP_FAILURE_RETRY-for-musl.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 5a4f2ddb0a6c656b425a3caa41f5af766ed5f44b Mon Sep 17 00:00:00 2001 -From: Alex Kiernan <alex.kiernan@gmail.com> -Date: Mon, 9 Sep 2019 14:19:18 +0100 -Subject: [PATCH] macros: Add TEMP_FAILURE_RETRY for musl - -TEMP_FAILURE_RETRY is glibc specific, add a definition for musl. - -See https://github.com/ostreedev/ostree/issues/731 - -Signed-off-by: Leon Woestenberg <leon@sidebranch.com> -Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> -Upstream-Status: Accepted [https://gitlab.gnome.org/GNOME/libglnx/commit/15c06468804014fc49f6f340132930703f919b19] ---- - glnx-macros.h | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/libglnx.glnx-macros.h b/libglnx/glnx-macros.h -index 6d8aca93f8a3..700fc75ceed0 100644 ---- a/libglnx.glnx-macros.h -+++ b/libglnx/glnx-macros.h -@@ -31,6 +31,16 @@ G_BEGIN_DECLS - /* All of these are for C only. */ - #ifndef __GI_SCANNER__ - -+/* fixes builds against musl, taken from glibc unistd.h */ -+#ifndef TEMP_FAILURE_RETRY -+#define TEMP_FAILURE_RETRY(expression) \ -+ (__extension__ \ -+ ({ long int __result; \ -+ do __result = (long int) (expression); \ -+ while (__result == -1L && errno == EINTR); \ -+ __result; })) -+#endif -+ - /* Taken from https://github.com/systemd/systemd/src/basic/string-util.h - * at revision v228-666-gcf6c8c4 - */ --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-tests-Handle-EPIPE-failures-when-head-terminates.patch b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-tests-Handle-EPIPE-failures-when-head-terminates.patch deleted file mode 100644 index fdb733ebe4..0000000000 --- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-tests-Handle-EPIPE-failures-when-head-terminates.patch +++ /dev/null @@ -1,51 +0,0 @@ -From fb519f0361565cad0d340095263a1e8866ec4f89 Mon Sep 17 00:00:00 2001 -From: Alex Kiernan <alex.kiernan@gmail.com> -Date: Thu, 31 Oct 2019 11:30:00 +0000 -Subject: [PATCH 1/3] tests: Handle EPIPE failures when head terminates - -When using musl, it appears that the default is line buffered output, so -when `head -1` reads from a pipe we have to handle the source end of the -pipe getting EPIPE. - -Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> -Upstream-Status: Accepted [v2019.6] ---- - tests/pull-test.sh | 2 +- - tests/test-pull-mirrorlist.sh | 4 ++-- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/tests/pull-test.sh b/tests/pull-test.sh -index 0a97a1195582..2cfd8e02f790 100644 ---- a/tests/pull-test.sh -+++ b/tests/pull-test.sh -@@ -177,7 +177,7 @@ if ! skip_one_without_user_xattrs; then - ${CMD_PREFIX} ostree --repo=cacherepo pull-local ostree-srv/gnomerepo main - rev=$(ostree --repo=cacherepo rev-parse main) - ${CMD_PREFIX} ostree --repo=cacherepo ls -R -C main > ls.txt -- regfile_hash=$(grep -E -e '^-0' ls.txt | head -1 | awk '{ print $5 }') -+ regfile_hash=$((grep -E -e '^-0' ls.txt || true) | head -1 | awk '{ print $5 }') - ${CMD_PREFIX} ostree --repo=repo remote add --set=gpg-verify=false corruptrepo $(cat httpd-address)/ostree/corruptrepo - # Make this a loop so in the future we can add more object types like commit etc. - for object in ${regfile_hash}.file; do -diff --git a/tests/test-pull-mirrorlist.sh b/tests/test-pull-mirrorlist.sh -index 4e44852d3971..85ff66e99f8e 100755 ---- a/tests/test-pull-mirrorlist.sh -+++ b/tests/test-pull-mirrorlist.sh -@@ -47,12 +47,12 @@ setup_mirror content_mirror3 - - # Let's delete a file from 1 so that it falls back on 2 - cd ${test_tmpdir}/content_mirror1/ostree/gnomerepo --filez=$(find objects/ -name '*.filez' | head -n 1) -+filez=$((find objects/ -name '*.filez' || true) | head -n 1) - rm ${filez} - - # Let's delete a file from 1 and 2 so that it falls back on 3 - cd ${test_tmpdir}/content_mirror1/ostree/gnomerepo --filez=$(find objects/ -name '*.filez' | head -n 1) -+filez=$((find objects/ -name '*.filez' || true) | head -n 1) - rm ${filez} - cd ${test_tmpdir}/content_mirror2/ostree/gnomerepo - rm ${filez} --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch deleted file mode 100644 index dcafb09957..0000000000 --- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 4d17cd917fe4fb67d2f9e4881b6693ac7289f423 Mon Sep 17 00:00:00 2001 -From: Alex Kiernan <alex.kiernan@gmail.com> -Date: Wed, 30 Oct 2019 07:55:41 +0000 -Subject: [PATCH 1/4] tests/core: Fallback to en_US.UTF-8 locale - -A number of tests expect explicit left/right single quotes in their -messages, which will never happen in the C locale. Change so we pick a -likely UTF-8 locale, or fail if we can't find one. - -Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> -Upstream-Status: Accepted [v2019.6] ---- - tests/libtest-core.sh | 12 ++++-------- - 1 file changed, 4 insertions(+), 8 deletions(-) - -diff --git a/tests/libtest-core.sh b/tests/libtest-core.sh -index f6f94288fc61..bc191332c916 100644 ---- a/tests/libtest-core.sh -+++ b/tests/libtest-core.sh -@@ -35,15 +35,11 @@ assert_not_reached () { - } - - # Some tests look for specific English strings. Use a UTF-8 version --# of the C (POSIX) locale if we have one, or fall back to POSIX -+# of the C (POSIX) locale if we have one, or fall back to en_US.UTF-8 - # (https://sourceware.org/glibc/wiki/Proposals/C.UTF-8) --if locale -a | grep '^C.UTF-8$' >/dev/null; then -- export LC_ALL=C.UTF-8 --elif locale -a | grep '^C.utf8$' >/dev/null; then -- export LC_ALL=C.utf8 --else -- export LC_ALL=C --fi -+export LC_ALL=$(locale -a | grep -Ee '\.(UTF-8|utf8)' | grep -iEe '^(C|en_US)' | head -1 || true) -+if [ -z "${LC_ALL}" ]; then fatal "Can't find suitable UTF-8 locale"; fi -+ - # A GNU extension, used whenever LC_ALL is not C - unset LANGUAGE - --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch deleted file mode 100644 index 5ab9c8f6d7..0000000000 --- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 3d48021fb0892721fab8359b49470e521aaed493 Mon Sep 17 00:00:00 2001 -From: Alex Kiernan <alex.kiernan@gmail.com> -Date: Thu, 31 Oct 2019 11:28:07 +0000 -Subject: [PATCH 2/3] tests/core: Assume C.UTF-8 if locale isn't found - -When building with musl there's no locale command, also its default -locale is C.UTF-8, so just get C.UTF-8 if we can't find locale. - -Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> -Upstream-Status: Accepted [v2019.6] ---- - tests/libtest-core.sh | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - -diff --git a/tests/libtest-core.sh b/tests/libtest-core.sh -index bc191332c916..46aafab03cc8 100644 ---- a/tests/libtest-core.sh -+++ b/tests/libtest-core.sh -@@ -37,9 +37,15 @@ assert_not_reached () { - # Some tests look for specific English strings. Use a UTF-8 version - # of the C (POSIX) locale if we have one, or fall back to en_US.UTF-8 - # (https://sourceware.org/glibc/wiki/Proposals/C.UTF-8) --export LC_ALL=$(locale -a | grep -Ee '\.(UTF-8|utf8)' | grep -iEe '^(C|en_US)' | head -1 || true) --if [ -z "${LC_ALL}" ]; then fatal "Can't find suitable UTF-8 locale"; fi -- -+# -+# If we can't find the locale command assume we have support for C.UTF-8 -+# (e.g. musl based systems) -+if type -p locale >/dev/null; then -+ export LC_ALL=$(locale -a | grep -Ee '\.(UTF-8|utf8)' | grep -iEe '^(C|en_US)' | head -1 || true) -+ if [ -z "${LC_ALL}" ]; then fatal "Can't find suitable UTF-8 locale"; fi -+else -+ export LC_ALL=C.UTF-8 -+fi - # A GNU extension, used whenever LC_ALL is not C - unset LANGUAGE - --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0003-tests-Avoid-musl-failure-with-cp-a.patch b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0003-tests-Avoid-musl-failure-with-cp-a.patch deleted file mode 100644 index 834617c12d..0000000000 --- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree/0003-tests-Avoid-musl-failure-with-cp-a.patch +++ /dev/null @@ -1,52 +0,0 @@ -From abf1a7392b2fa1945286a39a35190d74fe141e52 Mon Sep 17 00:00:00 2001 -From: Alex Kiernan <alex.kiernan@gmail.com> -Date: Thu, 31 Oct 2019 17:09:36 +0000 -Subject: [PATCH 3/3] tests: Avoid musl failure with `cp -a` - -When copying the tree, using musl and GNU coreutils, something gets confused -when setting the ownership of symlinks and the copy fails with: - - cp: failed to preserve ownership for osdata-devel/bin: Not supported - -Rework using tar to avoid the problem. - -Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> -Upstream-Status: Accepted [v2019.6] ---- - tests/libtest.sh | 4 +++- - tests/test-admin-gpg.sh | 4 +++- - 2 files changed, 6 insertions(+), 2 deletions(-) - -diff --git a/tests/libtest.sh b/tests/libtest.sh -index ba00073a10a7..3f5fd931bc1e 100755 ---- a/tests/libtest.sh -+++ b/tests/libtest.sh -@@ -440,7 +440,9 @@ EOF - ${CMD_PREFIX} ostree --repo=${test_tmpdir}/testos-repo commit --add-metadata-string version=1.0.10 -b testos/buildmaster/x86_64-runtime -s "Build" - - cd ${test_tmpdir} -- cp -a osdata osdata-devel -+ rm -rf osdata-devel -+ mkdir osdata-devel -+ tar -C osdata -cf - . | tar -C osdata-devel -xf - - cd osdata-devel - mkdir -p usr/include - echo "a development header" > usr/include/foo.h -diff --git a/tests/test-admin-gpg.sh b/tests/test-admin-gpg.sh -index 1f50c8a9a508..dc776743776c 100755 ---- a/tests/test-admin-gpg.sh -+++ b/tests/test-admin-gpg.sh -@@ -90,7 +90,9 @@ EOF - ${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 - - cd ${test_tmpdir} -- cp -a osdata osdata-devel -+ rm -rf osdata-devel -+ mkdir osdata-devel -+ tar -C osdata -cf - . | tar -C osdata-devel -xf - - cd osdata-devel - mkdir -p usr/include - echo "a development header" > usr/include/foo.h --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2019.5.bb b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2019.6.bb index b3b34a15e6..bcf511b902 100644 --- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2019.5.bb +++ b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2019.6.bb @@ -24,24 +24,20 @@ PREMIRRORS = "" SRC_URI = " \ gitsm://github.com/ostreedev/ostree \ - file://0001-macros-Add-TEMP_FAILURE_RETRY-for-musl.patch \ file://run-ptest \ - file://0001-tests-core-Fallback-to-en_US.UTF-8-locale.patch \ - file://0001-tests-Handle-EPIPE-failures-when-head-terminates.patch \ - file://0002-tests-core-Assume-C.UTF-8-if-locale-isn-t-found.patch \ - file://0003-tests-Avoid-musl-failure-with-cp-a.patch \ - file://0001-build-create-tests-directory-for-split-builds.patch \ " -SRCREV = "980ca07b03b3aa7e0012729dd6c84b0878775d93" +SRCREV = "43706202f7de2ce0c829a46caab350ae1656f6ad" UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+\.\d+)" S = "${WORKDIR}/git" -inherit autotools bash-completion gobject-introspection gtk-doc pkgconfig ptest-gnome systemd +inherit autotools bash-completion gobject-introspection gtk-doc manpages pkgconfig ptest-gnome systemd # Package configuration - match ostree defaults, but without rofiles-fuse # otherwise we introduce a dependendency on meta-filesystems +# +# If running with ptest, both soup (for trivial-httpd) and xattr are required PACKAGECONFIG ??= " \ ${@bb.utils.filter('DISTRO_FEATURES', 'selinux smack', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd libmount', '', d)} \ @@ -52,16 +48,19 @@ PACKAGECONFIG ??= " \ # soup or curl - https://github.com/ostreedev/ostree/issues/1897 PACKAGECONFIG_class-native ??= " \ ${@bb.utils.filter('DISTRO_FEATURES', 'selinux smack', d)} \ + builtin-grub2-mkconfig \ soup \ " PACKAGECONFIG[avahi] = "--with-avahi, --without-avahi, avahi" +PACKAGECONFIG[builtin-grub2-mkconfig] = "--with-builtin-grub2-mkconfig, --without-builtin-grub2-mkconfig" PACKAGECONFIG[curl] = "--with-curl, --without-curl, curl" PACKAGECONFIG[dracut] = "--with-dracut, --without-dracut" +PACKAGECONFIG[gjs] = "ac_cv_path_GJS=${bindir}/gjs" PACKAGECONFIG[gnutls] = "--with-crypto=gnutls, , gnutls" PACKAGECONFIG[libarchive] = "--with-libarchive, --without-libarchive, libarchive" PACKAGECONFIG[libmount] = "--with-libmount, --without-libmount, util-linux" -PACKAGECONFIG[man] = "--enable-man, --disable-man, libxslt-native docbook-xsl-stylesheets-native" +PACKAGECONFIG[manpages] = "--enable-man, --disable-man, libxslt-native docbook-xsl-stylesheets-native" PACKAGECONFIG[mkinitcpio] = "--with-mkinitcpio, --without-mkinitcpio" PACKAGECONFIG[no-http2] = "--disable-http2, --enable-http2" PACKAGECONFIG[openssl] = "--with-crypto=openssl, , openssl" @@ -84,7 +83,6 @@ EXTRA_OEMAKE = " \ " EXTRA_OECONF_class-native = " \ - --with-builtin-grub2-mkconfig \ --enable-wrpseudo-compat \ --disable-otmpfile \ " @@ -106,7 +104,7 @@ do_install_append_class-native() { create_wrapper ${D}${bindir}/ostree OSTREE_GRUB2_EXEC="${STAGING_LIBDIR_NATIVE}/ostree/ostree-grub-generator" } -PACKAGES += " \ +PACKAGE_BEFORE_PN = " \ ${PN}-dracut \ ${PN}-grub \ ${PN}-mkinitcpio \ @@ -114,20 +112,11 @@ PACKAGES += " \ ${PN}-trivial-httpd \ " -FILES_${PN} = " \ - ${bindir}/ostree \ - ${bindir}/rofiles-fuse \ - ${datadir}/${BPN} \ - ${datadir}/gir-1.0 \ - ${libdir}/${BPN}/ostree-remount \ - ${libdir}/girepository-1.0 \ - ${libdir}/lib*${SOLIBS} \ - ${libdir}/tmpfiles.d/ostree-tmpfiles.conf \ - ${sysconfdir}/ostree/remotes.d \ - ${systemd_unitdir}/system-generators/ostree-system-generator \ - ${systemd_unitdir}/system/ostree-finalize-staged.path \ - ${systemd_unitdir}/system/ostree-finalize-staged.service \ - ${systemd_unitdir}/system/ostree-remount.service \ +FILES_${PN} += " \ + ${nonarch_libdir}/${BPN} \ + ${nonarch_libdir}/tmpfiles.d \ + ${systemd_unitdir}/system \ + ${systemd_unitdir}/system-generators \ " FILES_${PN}-dracut = " \ ${sysconfdir}/dracut.conf.d \ @@ -142,7 +131,7 @@ FILES_${PN}-mkinitcpio = " \ ${libdir}/initcpio \ " FILES_${PN}-switchroot = " \ - ${libdir}/ostree/ostree-prepare-root \ + ${nonarch_libdir}/${BPN}/ostree-prepare-root \ ${systemd_unitdir}/system/ostree-prepare-root.service \ " FILES_${PN}-trivial-httpd = " \ @@ -168,8 +157,10 @@ RDEPENDS_${PN}-ptest += " \ grep \ python3-core \ python3-multiprocessing \ - python3-pyyaml \ + tar \ ${PN}-trivial-httpd \ + ${@bb.utils.contains('BBFILE_COLLECTIONS', 'meta-python', 'python3-pyyaml', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'gjs', 'gjs', '', d)} \ " RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils glibc-localedata-en-us" @@ -180,13 +171,3 @@ SYSTEMD_SERVICE_${PN} = "ostree-remount.service ostree-finalize-staged.path" SYSTEMD_SERVICE_${PN}-switchroot = "ostree-prepare-root.service" BBCLASSEXTEND = "native" - -python __anonymous() { - if not bb.data.inherits_class('native', d) and bb.utils.contains('PTEST_ENABLED', '1', 'True', 'False', d): - if not bb.utils.contains_any('BBFILE_COLLECTIONS', 'meta-python', 'True', 'False', d): - raise bb.parse.SkipRecipe('ptest requires meta-python to be present.') - elif not bb.utils.contains_any('PACKAGECONFIG', 'soup curl', 'True', 'False', d): - raise bb.parse.SkipRecipe('ptest requires soup enabled in PACKAGECONFIG.') - elif not oe.utils.any_distro_features(d, "xattr"): - raise bb.parse.SkipRecipe('ptest requires xattr enabled in DISTRO_FEATURES.') -} |