From 2d51a70c0ec989cfc28d2d9a140206a601378c58 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 24 Aug 2022 02:45:57 +0100 Subject: gentoo auto-resync : 24:08:2022 - 02:45:57 --- dev-util/ostree/Manifest | 3 + dev-util/ostree/files/ostree-2022.5-bashism.patch | 35 ++++++ .../ostree/files/ostree-2022.5-glibc-2.36.patch | 127 +++++++++++++++++++++ dev-util/ostree/ostree-2022.5-r1.ebuild | 114 ++++++++++++++++++ 4 files changed, 279 insertions(+) create mode 100644 dev-util/ostree/files/ostree-2022.5-bashism.patch create mode 100644 dev-util/ostree/files/ostree-2022.5-glibc-2.36.patch create mode 100644 dev-util/ostree/ostree-2022.5-r1.ebuild (limited to 'dev-util/ostree') diff --git a/dev-util/ostree/Manifest b/dev-util/ostree/Manifest index 747d9b6336ce..b04250caac89 100644 --- a/dev-util/ostree/Manifest +++ b/dev-util/ostree/Manifest @@ -1,3 +1,5 @@ +AUX ostree-2022.5-bashism.patch 1314 BLAKE2B ded18475b1ecfe381fbe9e763ae7ff2e30875055c4d491f819427065985d7dfc69b3fe280f2efe1f8a51725e7965d73647434ab130ef1d6b30822e4cbcfb725e SHA512 4e053eba1fe1d494d5bf0565a9ee076e8d01834c63d043b1c260ca2bbb9baa95f4903f6413b81cc12eaa0047de2c8c8061cd1a21a6f96ff153557487764baaf1 +AUX ostree-2022.5-glibc-2.36.patch 4381 BLAKE2B 66fce177399ad249ad22f62ffaddd780c57d87864fdef5cb9347e553e9fdb6fa1e94b12768a2bdd832a9968d29c77f49b83263b6d53428306efd73854bd77e23 SHA512 deb822f25ed0c7d14d4102766a5a4840e5f43193a7cedfbda20e8467c8df06e2fc6248bbf9c658ab5723330d5fcd96814bc3d0774c2b3d9e38611d1e34d0ca3a DIST ostree-2021.3.tar.xz 2089804 BLAKE2B 5df33b676173b1ec08ac7592d4ddf8e3bfdcd84df1b3ce19e2f24c85780fed1f210b8adce1baf4ec87869c72984502276bf6e5a72268daaae6ce9b3d6dc6f88b SHA512 0df0d8f9bd82b16562dd5146997eddfb7cb6cffc1886601307d97a1cb1dc926bda7d0c899db26c974ed0dff1012dee11937e47c11c4d03307fa3d2d430adc60e DIST ostree-2022.2.tar.xz 2059592 BLAKE2B 73bb563be473f3f62ab2d0e1ec6e2b659c8c12aaba828ae6fd5bab4b6bd3a978ffe5d76e17734e40c0569e3e74f13b85aaf9ae467747c5bbb309c73b373e9909 SHA512 07be16101aa00f541833dc6123f015ee1af65e40e2c237322a129e944fa19791e7cad6f0b29ced3c128adbe23bdb3c8708688fadd4ed80b160acab584b84abfe DIST ostree-2022.4.tar.xz 2066276 BLAKE2B 67fe73babe11dac93f8e035f7baf39e98aa2be2d797d3831a30999de2f7205b33c3d0892d2ec007807f8720e15161ecccb7e5f3c047d07cb5763bfcac2170bd8 SHA512 a7745b951b1f36f483c215b311f86d860b988ebb06612e7eef2797fc34322c256ae83177337d918f3e8e3833fe9802f7d53131db59df73d29fb6c305b78879e5 @@ -5,5 +7,6 @@ DIST ostree-2022.5.tar.xz 2072208 BLAKE2B be12432c87da82362ceb49b61b0cfc2ab77fdd EBUILD ostree-2021.3-r3.ebuild 2602 BLAKE2B ded68dcb03e707c7ff8cd573441e71152b18d8ed644488828821edce67f2c278e097ea85018251679fe708ea3500959b0848511640bf2d51abb220ab4a69dca8 SHA512 2cae33883d20ea5f29c468e086040f87c97e1168bcc31913fe5adfe25d4f6e6a915e1f6112d77e14d4f69a86e572ada54982a5afd947ca43e8aad82362f7ef18 EBUILD ostree-2022.2.ebuild 2645 BLAKE2B 03f4a898d2553dc8fbd055c51b834270266237cf92e2fe06e614187e91ce84c276513f8bfb3d145b6786f12024a2997a6d4ded5850a875b45e1e9cb35d13ecde SHA512 e93f32725b1ab23082729e76f176c3563a0c65527dab55e090167d6a522441b3f5d9356e9809c2c2a7cb9a09fedf4390632c0791be63d54742eadb5e5b3439d4 EBUILD ostree-2022.4.ebuild 2648 BLAKE2B 2eb78554d9fd0c1ff38ff832823209e7556ff645e8e1cd225b0f693db813d6a105fedcfff8e63fc2d9c8e63955ba181d425ac7891adf107028a51b45013ea0a5 SHA512 c01f1c3646553d4c227e7f414361ef731b528be5a2b31e9bfa02329dff6304e0ea46236775c4a79a6f52561c7c000ed2b520990e42648e99e55e54e3ada4d38a +EBUILD ostree-2022.5-r1.ebuild 2734 BLAKE2B 3207e4271ee037096ca6f6ededc1a6b809469881ab8783afe9e611b89056ead85218dce7737c3d47612cbb489e986b4ca0099808ca5e872fafcc67355b7a4ece SHA512 a35f7529d14f7fad61231dec92f8c9bc8d68e007e943e5c9df938265153a0ae74e2d73790649781824c59e65337e04c69a76e6c8d00b656256ced11646097ca5 EBUILD ostree-2022.5.ebuild 2648 BLAKE2B 2eb78554d9fd0c1ff38ff832823209e7556ff645e8e1cd225b0f693db813d6a105fedcfff8e63fc2d9c8e63955ba181d425ac7891adf107028a51b45013ea0a5 SHA512 c01f1c3646553d4c227e7f414361ef731b528be5a2b31e9bfa02329dff6304e0ea46236775c4a79a6f52561c7c000ed2b520990e42648e99e55e54e3ada4d38a MISC metadata.xml 1990 BLAKE2B 1c3e6400d24f0701211c0b8dcfba8d31c06b7c493cbe6eb2c5432ea818d0a0fbe863f8f1661eb386d179bb186cb7c970f7d7a3f8c9c42ea4b03b3d4ea0472a57 SHA512 04e37ddcd7348d43d475e04c996ee8b2e94c64143325dcfb21c5738b75f71ecd2c2ec64c8f91fbd06f5a6228671e90fdf10a939d4457abe4d0f88492435b4601 diff --git a/dev-util/ostree/files/ostree-2022.5-bashism.patch b/dev-util/ostree/files/ostree-2022.5-bashism.patch new file mode 100644 index 000000000000..1cf217de744b --- /dev/null +++ b/dev-util/ostree/files/ostree-2022.5-bashism.patch @@ -0,0 +1,35 @@ +https://github.com/ostreedev/ostree/pull/2702 + +From c568073d1e6a5e602a6df29eaa5b7392e076f5d6 Mon Sep 17 00:00:00 2001 +From: Sam James +Date: Tue, 23 Aug 2022 23:37:06 +0100 +Subject: [PATCH] buildutil/glibtests.m4: fix bashism + +configure scripts need to be runnable with a POSIX-compliant /bin/sh. + +On many (but not all!) systems, /bin/sh is provided by Bash, so errors +like this aren't spotted. Notably Debian defaults to /bin/sh provided +by dash which doesn't tolerate such bashisms as '=='. + +This retains compatibility with bash. + +Fixes configure warnings/errors like: +``` + +checking whether to build static libraries... no +./configure: 14795: test: unexpected operator +``` + +Signed-off-by: Sam James +--- a/buildutil/glibtests.m4 ++++ b/buildutil/glibtests.m4 +@@ -25,7 +25,7 @@ AC_DEFUN([GLIB_TESTS], + *) AC_MSG_ERROR([bad value ${enableval} for --enable-always-build-tests]) ;; + esac]) + AM_CONDITIONAL([ENABLE_ALWAYS_BUILD_TESTS], test "$ENABLE_ALWAYS_BUILD_TESTS" = "1") +- if test "$ENABLE_INSTALLED_TESTS" == "1"; then ++ if test "$ENABLE_INSTALLED_TESTS" = "1"; then + AC_SUBST(installed_test_metadir, [${datadir}/installed-tests/]AC_PACKAGE_NAME) + AC_SUBST(installed_testdir, [${libexecdir}/installed-tests/]AC_PACKAGE_NAME) + fi + diff --git a/dev-util/ostree/files/ostree-2022.5-glibc-2.36.patch b/dev-util/ostree/files/ostree-2022.5-glibc-2.36.patch new file mode 100644 index 000000000000..6d01e96a09c8 --- /dev/null +++ b/dev-util/ostree/files/ostree-2022.5-glibc-2.36.patch @@ -0,0 +1,127 @@ +https://bugs.gentoo.org/863689 +https://github.com/ostreedev/ostree/commit/edba4b33be10c05253bfa94895dfbc8477e44d76 +https://github.com/ostreedev/ostree/commit/0a908a180fcce98c2565b9fb34470e5953918260 + +From edba4b33be10c05253bfa94895dfbc8477e44d76 Mon Sep 17 00:00:00 2001 +From: Colin Walters +Date: Wed, 3 Aug 2022 10:37:40 -0400 +Subject: [PATCH] Remove unused `linux/fs.h` includes + +Prep for fixing conflicts introduced by newer glibc. +cc https://github.com/ostreedev/ostree/issues/2685 +--- a/src/libostree/ostree-repo-commit.c ++++ b/src/libostree/ostree-repo-commit.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + + #include "otutil.h" +--- a/src/ostree/ot-main.c ++++ b/src/ostree/ot-main.c +@@ -28,7 +28,6 @@ + #include + #include + #include +-#include + + #include "ot-main.h" + #include "ostree.h" + +From 0a908a180fcce98c2565b9fb34470e5953918260 Mon Sep 17 00:00:00 2001 +From: Colin Walters +Date: Wed, 3 Aug 2022 10:43:43 -0400 +Subject: [PATCH] Move FIFREEZE/FITHAW ioctl invocations into linuxfsutil.c + +Should help avoid conflicts between glibc and linux headers. + +Closes: https://github.com/ostreedev/ostree/issues/2685 +--- a/src/libostree/ostree-linuxfsutil.c ++++ b/src/libostree/ostree-linuxfsutil.c +@@ -24,10 +24,12 @@ + + #include + #include ++// This should be the only file including linux/fs.h; see ++// https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E ++// https://github.com/ostreedev/ostree/issues/2685 ++#include + #include + +-#include "otutil.h" +- + /** + * _ostree_linuxfs_fd_alter_immutable_flag: + * @fd: A file descriptor +@@ -88,3 +90,21 @@ _ostree_linuxfs_fd_alter_immutable_flag (int fd, + + return TRUE; + } ++ ++/* Wrapper for FIFREEZE ioctl. ++ * This is split into a separate wrapped API for ++ * reasons around conflicts between glibc and linux/fs.h ++ * includes; see above. ++ */ ++int ++_ostree_linuxfs_filesystem_freeze (int fd) ++{ ++ return TEMP_FAILURE_RETRY (ioctl (fd, FIFREEZE, 0)); ++} ++ ++/* Wrapper for FITHAW ioctl. See above. */ ++int ++_ostree_linuxfs_filesystem_thaw (int fd) ++{ ++ return TEMP_FAILURE_RETRY (ioctl (fd, FITHAW, 0)); ++} +--- a/src/libostree/ostree-linuxfsutil.h ++++ b/src/libostree/ostree-linuxfsutil.h +@@ -29,4 +29,7 @@ _ostree_linuxfs_fd_alter_immutable_flag (int fd, + GCancellable *cancellable, + GError **error); + ++int _ostree_linuxfs_filesystem_freeze (int fd); ++int _ostree_linuxfs_filesystem_thaw (int fd); ++ + G_END_DECLS +--- a/src/libostree/ostree-sysroot-deploy.c ++++ b/src/libostree/ostree-sysroot-deploy.c +@@ -29,7 +29,6 @@ + #include + #include + #include +-#include + #include + + #ifdef HAVE_LIBMOUNT +@@ -1476,7 +1475,7 @@ fsfreeze_thaw_cycle (OstreeSysroot *self, + * EOPNOTSUPP: If the filesystem doesn't support it + */ + int saved_errno = errno; +- (void) TEMP_FAILURE_RETRY (ioctl (rootfs_dfd, FITHAW, 0)); ++ _ostree_linuxfs_filesystem_thaw (rootfs_dfd); + errno = saved_errno; + /* But if we got an error from poll, let's log it */ + if (r < 0) +@@ -1517,7 +1516,7 @@ fsfreeze_thaw_cycle (OstreeSysroot *self, + return glnx_throw (error, "aborting due to test-fifreeze"); + } + /* Do a freeze/thaw cycle; TODO add a FIFREEZETHAW ioctl */ +- if (ioctl (rootfs_dfd, FIFREEZE, 0) != 0) ++ if (_ostree_linuxfs_filesystem_freeze (rootfs_dfd) != 0) + { + /* Not supported, we're running in the unit tests (as non-root), or + * the filesystem is already frozen (EBUSY). +@@ -1539,7 +1538,7 @@ fsfreeze_thaw_cycle (OstreeSysroot *self, + return glnx_throw_errno_prefix (error, "ioctl(FIFREEZE)"); + } + /* And finally thaw, then signal our completion to the watchdog */ +- if (TEMP_FAILURE_RETRY (ioctl (rootfs_dfd, FITHAW, 0)) != 0) ++ if (_ostree_linuxfs_filesystem_thaw (rootfs_dfd) != 0) + { + /* Warn but don't error if the filesystem was already thawed */ + if (errno == EINVAL) + diff --git a/dev-util/ostree/ostree-2022.5-r1.ebuild b/dev-util/ostree/ostree-2022.5-r1.ebuild new file mode 100644 index 000000000000..5500d617d7b6 --- /dev/null +++ b/dev-util/ostree/ostree-2022.5-r1.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools systemd + +DESCRIPTION="Operating system and container binary deployment and upgrades" +HOMEPAGE="https://ostreedev.github.io/ostree/" +SRC_URI="https://github.com/ostreedev/ostree/releases/download/v${PV}/lib${P}.tar.xz -> ${P}.tar.xz" + +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +LICENSE="LGPL-2+" +SLOT="0" + +IUSE="archive +curl doc dracut gnutls +gpg grub +http2 httpd introspection libmount selinux sodium ssl +soup systemd zeroconf" +RESTRICT+=" test" +REQUIRED_USE=" + dracut? ( systemd ) + http2? ( curl ) + httpd? ( || ( curl soup ) ) +" + +COMMON_DEPEND=" + app-arch/xz-utils + dev-libs/libassuan + dev-libs/glib:2 + sys-fs/fuse:3 + sys-libs/zlib + archive? ( app-arch/libarchive:= ) + curl? ( net-misc/curl ) + dracut? ( sys-kernel/dracut ) + gpg? ( + app-crypt/gpgme:= + dev-libs/libgpg-error + ) + grub? ( sys-boot/grub:2= ) + introspection? ( dev-libs/gobject-introspection ) + libmount? ( sys-apps/util-linux ) + selinux? ( sys-libs/libselinux ) + sodium? ( >=dev-libs/libsodium-1.0.14:= ) + soup? ( net-libs/libsoup:2.4 ) + ssl? ( + gnutls? ( net-libs/gnutls:= ) + !gnutls? ( + dev-libs/openssl:0= + ) + ) + systemd? ( sys-apps/systemd:0= ) + zeroconf? ( net-dns/avahi[dbus] )" + +DEPEND="${COMMON_DEPEND} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + doc? ( dev-util/gtk-doc )" + +RDEPEND="${COMMON_DEPEND}" +BDEPEND=" + dev-util/glib-utils + sys-devel/flex + sys-devel/bison + virtual/pkgconfig" + +S="${WORKDIR}/lib${P}" + +PATCHES=( + "${FILESDIR}"/${P}-glibc-2.36.patch + "${FILESDIR}"/${P}-bashism.patch +) + +src_prepare() { + default + + sed -Ee 's:(XSLT_STYLESHEET = ).*:\1/usr/share/sgml/docbook/xsl-stylesheets/manpages/docbook.xsl:' \ + -i Makefile.in Makefile-man.am || die + + eautoreconf +} + +src_configure() { + local econfargs=( + --enable-man + --enable-shared + --with-grub2-mkconfig-path=grub-mkconfig + --with-modern-grub + $(use_with archive libarchive) + $(use_with curl) + $(use_with dracut dracut yesbutnoconf) #816867 + $(use_enable doc gtk-doc) + $(usex introspection --enable-introspection={,} yes no) + $(use_with gpg gpgme) + $(use_enable http2) + $(use_enable httpd trivial-httpd-cmdline) + $(use_with selinux ) + $(use_with soup) + $(use_with libmount) + $(use ssl && { use gnutls && echo --with-crypto=gnutls || echo --with-crypto=openssl; }) + $(use_with sodium ed25519-libsodium) + $(use_with systemd libsystemd) + $(use_with zeroconf avahi) + ) + + if use systemd; then + econfargs+=(--with-systemdsystemunitdir="$(systemd_get_systemunitdir)") + fi + + unset ${!XDG_*} #657346 g-ir-scanner sandbox violation + econf "${econfargs[@]}" +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} -- cgit v1.2.3