commit: 342785cfd5fdb34dd5eb741370dc3d79fecd310e Author: Zac Medico <zmedico <AT> gentoo <DOT> org> AuthorDate: Sun Jun 1 19:41:33 2025 +0000 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org> CommitDate: Sun Jun 1 20:21:42 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=342785cf
sys-boot/vboot-utils: add 138_p20250522 Drop IUSE static in order to eliminate the need for static-libs support in libzip which promped https://github.com/gentoo/gentoo/pull/42357. Signed-off-by: Zac Medico <zmedico <AT> gentoo.org> sys-boot/vboot-utils/Manifest | 1 + .../files/vboot-utils-138-musl-fts.patch | 21 +++++++ .../vboot-utils/vboot-utils-138_p20250522.ebuild | 68 ++++++++++++++++++++++ 3 files changed, 90 insertions(+) diff --git a/sys-boot/vboot-utils/Manifest b/sys-boot/vboot-utils/Manifest index 3e0e45deb3f2..965a419487b9 100644 --- a/sys-boot/vboot-utils/Manifest +++ b/sys-boot/vboot-utils/Manifest @@ -1 +1,2 @@ +DIST vboot-utils-138_p20250522.tar.xz 32405036 BLAKE2B 240ebe9622ce507253f57344f1de5aadb4dc82f3495bc29c9ea59ca37de5330c58f46039748b163cd166fb9faf98a0fb7c507011a3ae1166f874ec77894a4f7e SHA512 0c080b43da5501bc10699598725a11cf04d5806e15035dd4856b216977c9c3f46d04c8231fea8ff41fc879ceb9b222420f6f5b8d764bcb202aae7448161d4ccf DIST vboot-utils-80_p20200108.tar.xz 18448212 BLAKE2B f7e375133fb6dc90def1e22c42c7511a3b649c34d067a447f44fb99c1ec37a73d034837c2212e5d6ad368a4f4b011c8cb9eb479e81db4a52b1160cda99382a77 SHA512 077d137d8fe89f35b6f7ec6408b2e9fc7a28765b0987646c1964e6e0c039e359711ab79958c45ee555a0fe810997217225d072a7f1011b1c73c4aefb4e57fcc1 diff --git a/sys-boot/vboot-utils/files/vboot-utils-138-musl-fts.patch b/sys-boot/vboot-utils/files/vboot-utils-138-musl-fts.patch new file mode 100644 index 000000000000..3f0ce7b34d72 --- /dev/null +++ b/sys-boot/vboot-utils/files/vboot-utils-138-musl-fts.patch @@ -0,0 +1,21 @@ +--- a/Makefile ++++ b/Makefile +@@ -263,6 +263,9 @@ + # Musl doesn't have execinfo.h. + ifndef HAVE_MUSL + CFLAGS += -DHAVE_EXECINFO_H ++# Musl doesn't have fts.h so enable linking to the standalone lib. ++else ++ MUSL_LIBS := -lfts + endif + + # And a few more default utilities +@@ -1167,7 +1170,7 @@ + + # FUTIL_LIBS is shared by FUTIL_BIN and TEST_FUTIL_BINS. + FUTIL_LIBS = ${CROSID_LIBS} ${CRYPTO_LIBS} ${LIBZIP_LIBS} ${LIBARCHIVE_LIBS} \ +- ${FLASHROM_LIBS} ++ ${FLASHROM_LIBS} ${MUSL_LIBS} + + ${FUTIL_BIN}: LDLIBS += ${FUTIL_LIBS} + ${FUTIL_BIN}: ${FUTIL_OBJS} ${UTILLIB} diff --git a/sys-boot/vboot-utils/vboot-utils-138_p20250522.ebuild b/sys-boot/vboot-utils/vboot-utils-138_p20250522.ebuild new file mode 100644 index 000000000000..bf1d1509a59a --- /dev/null +++ b/sys-boot/vboot-utils/vboot-utils-138_p20250522.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Chrome OS verified boot tools" +HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/ https://dev.chromium.org/chromium-os/chromiumos-design-docs/verified-boot" +# Can't use gitiles directly until https://github.com/google/gitiles/issues/84 is fixed. +#SRC_URI="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+archive/refs/heads/release-R138-16295.B.tar.gz -> ${P}.tar.gz" +SRC_URI="https://dev.gentoo.org/~zmedico/dist/${P}.tar.xz" +S=${WORKDIR} +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" +IUSE="+libzip" +RESTRICT=test + +RDEPEND=" + dev-libs/openssl:0= + sys-apps/util-linux:= + elibc_musl? ( sys-libs/fts-standalone:= ) + libzip? ( dev-libs/libzip:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/vboot-utils-138-musl-fts.patch +) + +src_prepare() { + default + + # Bug #687008 + if ! use libzip; then + sed -e 's|^\(LIBZIP_VERSION :=\).*|\1|' -i Makefile || die + fi +} + +_emake() { + + local arch=$(tc-arch) + emake \ + V=1 \ + ARCH=${arch} \ + LIBDIR="$(get_libdir)" \ + DEBUG_FLAGS= \ + WERROR= \ + USE_FLASHROM=0 \ + $(usex elibc_musl HAVE_MUSL=1 "") \ + "$@" +} + +src_compile() { + tc-export CC AR CXX PKG_CONFIG + _emake FUZZ_TEST_BINS= TEST_BINS= all +} + +src_install() { + _emake DESTDIR="${ED}" install install_dev + + insinto /usr/share/vboot/devkeys + doins tests/devkeys/* + + dodoc README +}
