From 2e18c354423935c2dcb89c47126804f7ff46c765 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 17 Mar 2025 07:06:13 +0000 Subject: [PATCH] dev-libs/expat: Sync with Gentoo It's from Gentoo commit 5e9e20dcc841d271d30ae5f17638f552ddbb2981. --- .../portage-stable/dev-libs/expat/Manifest | 1 + .../dev-libs/expat/expat-2.7.0.ebuild | 100 ++++++++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest index 8961675365..d99d8c0319 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/expat/Manifest @@ -1,2 +1,3 @@ DIST expat-2.6.3.tar.xz 485600 BLAKE2B b8e0a0e779f0f136eaca91115cbbcf5a5cca457cab1cca6f8d6141151d19f8ef2dccb41b0e9134459c1e7d99cb2e0b4ce3922d2bd9221002ec43fe9d53a0084a SHA512 e02c4ad88f9d539258aa1c1db71ded7770a8f12c77b5535e5b34f040ae5b1361ef23132f16d96bdb7c096a83acd637a7c907916bdfcc6d5cfb9e35d04020ca0b DIST expat-2.6.4.tar.xz 486732 BLAKE2B 70d716722358db8d0acb2c74dbbc9d2362d04a0b856eab6b6d723614b656cf6aad9f6646339e0a32b4151db2e9541439bcb81ec87791e5e6ec0bd36a3ca067cc SHA512 620da34d98524478b445038bf1dd439790fe11169496516425fca922226797835c27549fc5fb825792b516563b24eb922d9ad8f27d20a0229e7ee8cd640dfb25 +DIST expat-2.7.0.tar.xz 493060 BLAKE2B 44567e955b8cf2053665140b3557897c6e0e66c7e2ba5919970d91d55a05bb8db604afa37a441ff0a7abf4472b24b0e1e6c3964c56b4bb55358c000ccdc1459d SHA512 69fb19c2634821b657f550f609d0bcc6e45e9d903072bbc63e9a0bfc92ef7d04c6e1408dd39eb43eaa2951f28ae93dce4f796c9769253f440905db2d5606a4c7 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.0.ebuild new file mode 100644 index 0000000000..0f59f82703 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/expat/expat-2.7.0.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +AUTOTOOLS_AUTO_DEPEND=no +inherit autotools multilib-minimal + +DESCRIPTION="Stream-oriented XML parser library" +HOMEPAGE="https://libexpat.github.io/" +SRC_URI="https://github.com/libexpat/libexpat/releases/download/R_${PV//\./_}/expat-${PV}.tar.xz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="examples static-libs test unicode" +RESTRICT="!test? ( test )" +BDEPEND="unicode? ( ${AUTOTOOLS_DEPEND} )" + +DOCS=( README.md ) + +QA_CONFIG_IMPL_DECL_SKIP=( + # https://bugs.gentoo.org/906384 + arc4random + arc4random_buf +) + +src_prepare() { + default + + # fix interpreter to be a recent/good shell + sed -i -e "1s:/bin/sh:${BASH}:" conftools/get-version.sh || die + if use unicode; then + cp -R "${S}" "${S}"w || die + pushd "${S}"w >/dev/null + find -name Makefile.am \ + -exec sed \ + -e 's,libexpat\.la,libexpatw.la,' \ + -e 's,libexpat_la,libexpatw_la,' \ + -i {} + || die + eautoreconf + popd >/dev/null + fi +} + +multilib_src_configure() { + local myconf="$(use_with test tests) $(use_enable static-libs static) --without-docbook" + + mkdir -p "${BUILD_DIR}"w || die + + if use unicode; then + pushd "${BUILD_DIR}"w >/dev/null + CPPFLAGS="${CPPFLAGS} -DXML_UNICODE" ECONF_SOURCE="${S}"w econf ${myconf} + popd >/dev/null + fi + + ECONF_SOURCE="${S}" econf ${myconf} +} + +multilib_src_compile() { + emake + + if use unicode; then + pushd "${BUILD_DIR}"w >/dev/null + emake -C lib + popd >/dev/null + fi +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + if use unicode; then + pushd "${BUILD_DIR}"w >/dev/null + emake -C lib install DESTDIR="${D}" + popd >/dev/null + + pushd "${ED}"/usr/$(get_libdir)/pkgconfig >/dev/null + cp expat.pc expatw.pc + sed -i -e '/^Libs/s:-lexpat:&w:' expatw.pc || die + popd >/dev/null + fi +} + +multilib_src_install_all() { + einstalldocs + + doman doc/xmlwf.1 + + # Note: Use of HTML_DOCS would add unwanted "doc" subfolder + docinto html + dodoc doc/*.{css,html} + + if use examples; then + docinto examples + dodoc examples/*.c + docompress -x usr/share/doc/${PF}/examples + fi + + find "${D}" -name '*.la' -type f -delete || die +}