commit: 3253e6572746a7f1c0c8c898883be7d14256cd03 Author: Sebastian Pipping <sping <AT> gentoo <DOT> org> AuthorDate: Tue Sep 16 17:20:35 2025 +0000 Commit: Sebastian Pipping <sping <AT> gentoo <DOT> org> CommitDate: Tue Sep 16 17:36:45 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3253e657
dev-libs/expat: 2.7.2 (fixes CVE-2025-59375) Bug: https://bugs.gentoo.org/962963 Signed-off-by: Sebastian Pipping <sping <AT> gentoo.org> dev-libs/expat/Manifest | 1 + dev-libs/expat/expat-2.7.2.ebuild | 100 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 101 insertions(+) diff --git a/dev-libs/expat/Manifest b/dev-libs/expat/Manifest index 9b0a33ee7d96..184c81b00024 100644 --- a/dev-libs/expat/Manifest +++ b/dev-libs/expat/Manifest @@ -2,3 +2,4 @@ DIST expat-2.6.3.tar.xz 485600 BLAKE2B b8e0a0e779f0f136eaca91115cbbcf5a5cca457ca DIST expat-2.6.4.tar.xz 486732 BLAKE2B 70d716722358db8d0acb2c74dbbc9d2362d04a0b856eab6b6d723614b656cf6aad9f6646339e0a32b4151db2e9541439bcb81ec87791e5e6ec0bd36a3ca067cc SHA512 620da34d98524478b445038bf1dd439790fe11169496516425fca922226797835c27549fc5fb825792b516563b24eb922d9ad8f27d20a0229e7ee8cd640dfb25 DIST expat-2.7.0.tar.xz 493060 BLAKE2B 44567e955b8cf2053665140b3557897c6e0e66c7e2ba5919970d91d55a05bb8db604afa37a441ff0a7abf4472b24b0e1e6c3964c56b4bb55358c000ccdc1459d SHA512 69fb19c2634821b657f550f609d0bcc6e45e9d903072bbc63e9a0bfc92ef7d04c6e1408dd39eb43eaa2951f28ae93dce4f796c9769253f440905db2d5606a4c7 DIST expat-2.7.1.tar.xz 496108 BLAKE2B 243ef1c3578234135018d31b567c88a50cadddac86441e4d4a6d6330e113596edbad13b40c79f541d49487e7df98d798032d39ec28b7d67d22f46e4290d14519 SHA512 4c9a6c1c1769d2c4404da083dd3013dbc73883da50e2b7353db2349a420e9b6d27cac7dbcb645991d6c7cdbf79bd88486fc1ac353084ce48e61081fb56e13d46 +DIST expat-2.7.2.tar.xz 503392 BLAKE2B 35525274817dab4d6ae8698f5f83978e633a6e4afe7cf3b126c87d5aba4b64bcb9d26ec3e4a39b1ea82a7430e290950595bfa4150266ef3806026b423a870e33 SHA512 da64ae6d1762388873acbad9bc0edc80094c693bccacf89ca90d1626f53866c5e87c2019276e39643963d6479fb8a6d7b1f05f38caa1be84a24ff9d603449e38 diff --git a/dev-libs/expat/expat-2.7.2.ebuild b/dev-libs/expat/expat-2.7.2.ebuild new file mode 100644 index 000000000000..b1f4eada1914 --- /dev/null +++ b/dev-libs/expat/expat-2.7.2.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 +}
