From eeb9605e496b284bf379a3b346a40638413e870e Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 10 Nov 2024 23:18:27 +0000 Subject: gentoo auto-resync : 10:11:2024 - 23:18:27 --- dev-libs/Manifest.gz | Bin 100628 -> 100631 bytes dev-libs/icu/Manifest | 3 +- .../icu-76.1-undo-pkgconfig-change-for-now.patch | 30 +++ dev-libs/icu/icu-76.1-r1.ebuild | 182 +++++++++++++++++++ dev-libs/icu/icu-76.1.ebuild | 178 ------------------ dev-libs/libxml2/Manifest | 10 +- .../files/libxml2-2.11.9-icu-pkgconfig.patch | 19 ++ .../files/libxml2-2.12.9-icu-pkgconfig.patch | 20 ++ dev-libs/libxml2/libxml2-2.11.9.ebuild | 201 +++++++++++++++++++++ dev-libs/libxml2/libxml2-2.12.9.ebuild | 198 ++++++++++++++++++++ dev-libs/libxml2/libxml2-2.13.4.ebuild | 190 +++++++++++++++++++ dev-libs/libxml2/libxml2-9999.ebuild | 1 + dev-libs/libxslt/Manifest | 2 + dev-libs/libxslt/libxslt-1.1.42.ebuild | 123 +++++++++++++ 14 files changed, 977 insertions(+), 180 deletions(-) create mode 100644 dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch create mode 100644 dev-libs/icu/icu-76.1-r1.ebuild delete mode 100644 dev-libs/icu/icu-76.1.ebuild create mode 100644 dev-libs/libxml2/files/libxml2-2.11.9-icu-pkgconfig.patch create mode 100644 dev-libs/libxml2/files/libxml2-2.12.9-icu-pkgconfig.patch create mode 100644 dev-libs/libxml2/libxml2-2.11.9.ebuild create mode 100644 dev-libs/libxml2/libxml2-2.12.9.ebuild create mode 100644 dev-libs/libxml2/libxml2-2.13.4.ebuild create mode 100644 dev-libs/libxslt/libxslt-1.1.42.ebuild (limited to 'dev-libs') diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz index ca2e88c9e62f..4679b1a76ff1 100644 Binary files a/dev-libs/Manifest.gz and b/dev-libs/Manifest.gz differ diff --git a/dev-libs/icu/Manifest b/dev-libs/icu/Manifest index 82808861b285..60f0cad07b17 100644 --- a/dev-libs/icu/Manifest +++ b/dev-libs/icu/Manifest @@ -3,6 +3,7 @@ AUX icu-65.1-remove-bashisms.patch 4963 BLAKE2B fb781741a7a908638876729d573a73e4 AUX icu-68.1-nonunicode.patch 477 BLAKE2B 5e74142e5adbf8f3fffa23c8fb08657b5b75d12941db39980abea1fff2328c112196b62cc89d521e8cc2a1f7c11b58816401a838bb8fcbe50036e80d3d9e4343 SHA512 5d605cc1cbbd16221603a9509d07713d64201f4fc1a372d29c18f8d49a4618fcd7e0a0bb0a459024a288e5c2c339a9aa0849abe88691ee2cdb24b92c9b61e290 AUX icu-75.1-python3_13-tests.patch 609 BLAKE2B 8f459e0963d941029f05d74a643c5c37060934b12181ec1a8859316f0f6ffaa9a62ab7817b382f879113c896271c4660522ae573c7e540fbc88bbbe563fdcd7d SHA512 e93c459f98c1015eb1592eabc27451dd71834c3b039921ffb6630b31bc0f811104610f4cc81ac1424d392b51aa571d3d2c4a4c9556ab83d90b7155a035e88012 AUX icu-76.1-remove-bashisms.patch 3382 BLAKE2B fda519c35f7b8d617007fcfa91dd6d36da7eae457f616b437ac32c4de1808d5e7d4b31cb6b560fbf1b2940e69b6fcb8fb51b4c9ad2671aa43aa89cf056934999 SHA512 223ab2e184945ad7039a72dafaf3478bbcab4b4577929e0aac8b508f9cac678a770ff9ce307d373e9ab1d8e42a81740251bb70e2244592cda91ad15a6af1fd2d +AUX icu-76.1-undo-pkgconfig-change-for-now.patch 989 BLAKE2B 66348d618956c593b3cca1740ea6805be00c8b5ae94a040a9a37ab928c94e439233c7aa53e8074cb773da89ff42a16d15c3bb1cc597405c1929bb14ba755d61d SHA512 8c4054752e78c89e3b3731f55ba4a96a9f71800ef7734a042343b759f5051d70daec6300b64c1875abc7c012a90010b05ad94c2729cbd8e99c53c8d8b6650790 DIST icu4c-74_2-src.tgz 26529443 BLAKE2B 08790dd3634037177eaec428651afe0da1f71dbad3423bde7ea5a6d49eab5dc011f72b175760fc55f6d8d7d820f7f3dfc369a80a1f7cb2f9f933644beb3d3711 SHA512 e6c7876c0f3d756f3a6969cad9a8909e535eeaac352f3a721338b9cbd56864bf7414469d29ec843462997815d2ca9d0dab06d38c37cdd4d8feb28ad04d8781b0 DIST icu4c-74_2-src.tgz.asc 659 BLAKE2B 0723204ce19d7bd4b1989e00b5ab084cc5b154c214129632a7f7ce31c151c8a4b9e0033d49872db728a3787809dbad2320f1d848561c84f94797c7e006749b94 SHA512 b249a61aba711b34599c3c0fbc113a52a83e59cb7bbda914ca74f534c1f474e6821d663dc7f078608b24393703654a43c2b793ca3d3f3be761393b6a73862ecc DIST icu4c-75_1-src.tgz 26568378 BLAKE2B 2772b52bf59407188511359ec54bea432bc70ba81610015bb51192f7aff33d5e4b08840cf3bfed3de7f9a91b430b6a6efe9dd75fdc53327d4c9f8fbf54d96d18 SHA512 70ea842f0d5f1f6c6b65696ac71d96848c4873f4d794bebc40fd87af2ad4ef064c61a786bf7bc430ce4713ec6deabb8cc1a8cc0212eab148cee2d498a3683e45 @@ -11,5 +12,5 @@ DIST icu4c-76_1-src.tgz 27437767 BLAKE2B 67223391123d2d2c75107fc4b87510b1d8d5203 DIST icu4c-76_1-src.tgz.asc 228 BLAKE2B 37a058e22da5ad122e3df6de2cb3979fa734b32e4e81d91201d2095fbf20ef2dbcba4579efab3041193e49c388d09618c965ddf082a8362aa82b694184804fa7 SHA512 c4bd81d4e98d7e37a6ba9540748c4ce1eb740d70bd689a13e2e51da76503b6e0287afd4d1cd3af4540210f37626dec998fcbd7269976cb801f238b789e604489 EBUILD icu-74.2.ebuild 4714 BLAKE2B 8091125f898279efb25331588a88f62ba356c0a2aaa52876a1734170f80b79af7b5b47148d657714b5c074d4d156fd9df0e88138874b9eea2c1dd8cd47c76d92 SHA512 ec477c735b981212b442ec130e6b27eeb461c2ca76da1a67424afcd76c2e5d2f7a4bf3954dc00ac949dda71c3d613565becd9033d9d352663114dad120fd1a97 EBUILD icu-75.1.ebuild 4670 BLAKE2B fdb36ace7b4d804e83b0f48094e443f1da9bf5dbf7099a8aae7827d8d1933c62b8cf74a651c086c9846b161a9c6d32c318b5c87f04b8923807e825043575d07d SHA512 bd23fa9cea9a6746d137e5c4cc7af300f09be4fd089fe40c64b848ec45834aa54ed793809d76a618eb498788d8bcc54a7a9c71b137db1ed01921cb08efe8b95a -EBUILD icu-76.1.ebuild 4511 BLAKE2B fa15ae6ca36c617032ce6066fddc451b14bb80529217047e2b61d730ce58b82197e3311b4574e0960ca6d413da2bce2455c9e176eae6d24f5c02a9e3a53ce9c5 SHA512 f43d0db39c778e60d0364de87663c4b6a5ee1fdbd3646cb26d8377da396ba9c8c1b0dd4d8e7727b83092c34b99aad3d89e1b862b5699cd5a17d0ec4b2e751a0d +EBUILD icu-76.1-r1.ebuild 4706 BLAKE2B b551e2d6c7b75aa442bf6609f036d86a6d13b46cfde530227dd2bb13491e132b142d384d7370a3630698ff591ab34c872be2fd641f1383fda152ce38b7b9b913 SHA512 12ed806b88e03d4f1506c52444795df0ee0f540c13d04a710c615d8d856c13e4ab42cc2cca4a572597e875097b8b548c2893212ffd375fe46f93cc59f0ee39ea MISC metadata.xml 336 BLAKE2B df52385ac9930c85fc8cb8799f5fd083e99bfe1bacd63519001f91b841cacdc50d6b7ed32f3520372cbab48d270bb05fd0896eaec55046ce1eac03af4502365e SHA512 80d8e03229a72e9acd1429f7ed697df59e98899b135bb40367e95d6eed63aa011efd2121601be68e685350b6eadd46e6f39c036f86ff18bc3c85410e88008c7e diff --git a/dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch b/dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch new file mode 100644 index 000000000000..b99557871bc0 --- /dev/null +++ b/dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch @@ -0,0 +1,30 @@ +https://github.com/chimera-linux/cports/blob/master/main/icu/patches/pc.patch + +""" +for some reason enable-shared only emits a requires.private here now and things +underlink icu-uc libs when using other icu libs, even though the deps are correct +this is https://github.com/unicode-org/icu/commit/199bc827021ffdb43b6579d68e5eecf54c7f6f56 , +consumers probably have to be explicit about -i18n -uc use now instead of it +being implicit, but just undo .private for now +""" +--- a/Makefile.in ++++ b/Makefile.in +@@ -290,7 +290,7 @@ + ifeq ($(ENABLE_SHARED),) + @echo "Requires: icu-uc" >> $@ + else +- @echo "Requires.private: icu-uc" >> $@ ++ @echo "Requires: icu-uc" >> $@ + endif + @echo "Libs:" '-L$${libdir}' "${ICULIBS_I18N}" >> $@ + @echo $@ updated. +@@ -302,7 +302,7 @@ + ifeq ($(ENABLE_SHARED),) + @echo "Requires: icu-i18n" >> $@ + else +- @echo "Requires.private: icu-i18n" >> $@ ++ @echo "Requires: icu-i18n" >> $@ + endif + @echo "Libs:" '-L$${libdir}' "${ICULIBS_IO}" >> $@ + @echo $@ updated. + diff --git a/dev-libs/icu/icu-76.1-r1.ebuild b/dev-libs/icu/icu-76.1-r1.ebuild new file mode 100644 index 000000000000..c720bcb4b581 --- /dev/null +++ b/dev-libs/icu/icu-76.1-r1.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with dev-libs/icu-layoutex + +PYTHON_COMPAT=( python3_{10..13} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/icu.asc +inherit autotools multilib-minimal python-any-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_rc/-rc} +MY_PV=${MY_PV//./_} + +DESCRIPTION="International Components for Unicode" +HOMEPAGE="https://icu.unicode.org/" +SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz" +SRC_URI+=" verify-sig? ( https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz.asc )" +S="${WORKDIR}"/${PN}/source + +if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi +LICENSE="BSD" +SLOT="0/${PV%.*}" +IUSE="debug doc examples static-libs test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${PYTHON_DEPS} + dev-build/autoconf-archive + virtual/pkgconfig + doc? ( app-text/doxygen[dot] ) + verify-sig? ( >=sec-keys/openpgp-keys-icu-20241110 ) +" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/icu-config +) + +PATCHES=( + "${FILESDIR}/${PN}-76.1-remove-bashisms.patch" + "${FILESDIR}/${PN}-64.2-darwin.patch" + "${FILESDIR}/${PN}-68.1-nonunicode.patch" + + # Undo change for now which exposes underlinking in consumers; + # revisit when things are a bit quieter and tinderbox its removal. + "${FILESDIR}/${PN}-76.1-undo-pkgconfig-change-for-now.patch" +) + +src_prepare() { + default + + # TODO: switch uconfig.h hacks to use uconfig_local + # + # Disable renaming as it assumes stable ABI and that consumers + # won't use unofficial APIs. We need this despite the configure argument. + sed -i \ + -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \ + common/unicode/uconfig.h || die + # + # ODR violations, experimental API + sed -i \ + -e "s/# define UCONFIG_NO_MF2 0/#define UCONFIG_NO_MF2 1/" \ + common/unicode/uconfig.h || die + + # Fix linking of icudata + sed -i \ + -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \ + config/mh-linux || die + + # Append doxygen configuration to configure + sed -i \ + -e 's:icudefs.mk:icudefs.mk Doxyfile:' \ + configure.ac || die + + eautoreconf +} + +src_configure() { + MAKEOPTS+=" VERBOSE=1" + + if tc-is-cross-compiler; then + mkdir "${WORKDIR}"/host || die + pushd "${WORKDIR}"/host >/dev/null || die + + CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ + CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ + RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ + "${S}"/configure --disable-renaming --disable-debug \ + --disable-samples --enable-static || die + emake + + popd >/dev/null || die + fi + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + --disable-renaming + --disable-samples + # TODO: Merge with dev-libs/icu-layoutex + # Planned to do this w/ 73.2 but seem to get test failures + # only with --enable-layoutex. + --disable-layoutex + $(use_enable debug) + $(use_enable static-libs static) + $(use_enable test tests) + $(multilib_native_use_enable examples samples) + ) + + #if use test ; then + # myeconfargs+=( + # --enable-extras + # --enable-tools + # ) + #else + # myeconfargs+=( + # $(multilib_native_enable extras) + # $(multilib_native_enable tools) + # ) + #fi + + tc-is-cross-compiler && myeconfargs+=( + --with-cross-build="${WORKDIR}"/host + ) + + # Work around cross-endian testing failures with LTO, bug #757681 + if tc-is-cross-compiler && tc-is-lto ; then + myeconfargs+=( --disable-strict ) + fi + + # ICU tries to use clang by default + tc-export CC CXX + + # Make sure we configure with the same shell as we run icu-config + # with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined + export CONFIG_SHELL="${EPREFIX}/bin/sh" + # Probably have no /bin/sh in prefix-chain + [[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL="${BASH}" + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use doc; then + doxygen -u Doxyfile || die + doxygen Doxyfile || die + fi +} + +multilib_src_test() { + # INTLTEST_OPTS: intltest options + # -e: Exhaustive testing + # -l: Reporting of memory leaks + # -v: Increased verbosity + # IOTEST_OPTS: iotest options + # -e: Exhaustive testing + # -v: Increased verbosity + # CINTLTST_OPTS: cintltst options + # -e: Exhaustive testing + # -v: Increased verbosity + emake check +} + +multilib_src_install() { + default + + if multilib_is_native_abi && use doc; then + docinto html + dodoc -r doc/html/* + fi +} + +multilib_src_install_all() { + local HTML_DOCS=( ../readme.html ) + einstalldocs +} diff --git a/dev-libs/icu/icu-76.1.ebuild b/dev-libs/icu/icu-76.1.ebuild deleted file mode 100644 index 077fe8d67d99..000000000000 --- a/dev-libs/icu/icu-76.1.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-libs/icu-layoutex - -PYTHON_COMPAT=( python3_{10..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/icu.asc -inherit autotools multilib-minimal python-any-r1 toolchain-funcs verify-sig - -MY_PV=${PV/_rc/-rc} -MY_PV=${MY_PV//./_} - -DESCRIPTION="International Components for Unicode" -HOMEPAGE="https://icu.unicode.org/" -SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz" -SRC_URI+=" verify-sig? ( https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz.asc )" -S="${WORKDIR}"/${PN}/source - -if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -fi -LICENSE="BSD" -SLOT="0/${PV%.*}" -IUSE="debug doc examples static-libs test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${PYTHON_DEPS} - dev-build/autoconf-archive - virtual/pkgconfig - doc? ( app-text/doxygen[dot] ) - verify-sig? ( >=sec-keys/openpgp-keys-icu-20241110 ) -" - -MULTILIB_CHOST_TOOLS=( - /usr/bin/icu-config -) - -PATCHES=( - "${FILESDIR}/${PN}-76.1-remove-bashisms.patch" - "${FILESDIR}/${PN}-64.2-darwin.patch" - "${FILESDIR}/${PN}-68.1-nonunicode.patch" -) - -src_prepare() { - default - - # TODO: switch uconfig.h hacks to use uconfig_local - # - # Disable renaming as it assumes stable ABI and that consumers - # won't use unofficial APIs. We need this despite the configure argument. - sed -i \ - -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \ - common/unicode/uconfig.h || die - # - # ODR violations, experimental API - sed -i \ - -e "s/# define UCONFIG_NO_MF2 0/#define UCONFIG_NO_MF2 1/" \ - common/unicode/uconfig.h || die - - # Fix linking of icudata - sed -i \ - -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \ - config/mh-linux || die - - # Append doxygen configuration to configure - sed -i \ - -e 's:icudefs.mk:icudefs.mk Doxyfile:' \ - configure.ac || die - - eautoreconf -} - -src_configure() { - MAKEOPTS+=" VERBOSE=1" - - if tc-is-cross-compiler; then - mkdir "${WORKDIR}"/host || die - pushd "${WORKDIR}"/host >/dev/null || die - - CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ - CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ - RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ - "${S}"/configure --disable-renaming --disable-debug \ - --disable-samples --enable-static || die - emake - - popd >/dev/null || die - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --disable-renaming - --disable-samples - # TODO: Merge with dev-libs/icu-layoutex - # Planned to do this w/ 73.2 but seem to get test failures - # only with --enable-layoutex. - --disable-layoutex - $(use_enable debug) - $(use_enable static-libs static) - $(use_enable test tests) - $(multilib_native_use_enable examples samples) - ) - - #if use test ; then - # myeconfargs+=( - # --enable-extras - # --enable-tools - # ) - #else - # myeconfargs+=( - # $(multilib_native_enable extras) - # $(multilib_native_enable tools) - # ) - #fi - - tc-is-cross-compiler && myeconfargs+=( - --with-cross-build="${WORKDIR}"/host - ) - - # Work around cross-endian testing failures with LTO, bug #757681 - if tc-is-cross-compiler && tc-is-lto ; then - myeconfargs+=( --disable-strict ) - fi - - # ICU tries to use clang by default - tc-export CC CXX - - # Make sure we configure with the same shell as we run icu-config - # with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined - export CONFIG_SHELL="${EPREFIX}/bin/sh" - # Probably have no /bin/sh in prefix-chain - [[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL="${BASH}" - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - default - - if multilib_is_native_abi && use doc; then - doxygen -u Doxyfile || die - doxygen Doxyfile || die - fi -} - -multilib_src_test() { - # INTLTEST_OPTS: intltest options - # -e: Exhaustive testing - # -l: Reporting of memory leaks - # -v: Increased verbosity - # IOTEST_OPTS: iotest options - # -e: Exhaustive testing - # -v: Increased verbosity - # CINTLTST_OPTS: cintltst options - # -e: Exhaustive testing - # -v: Increased verbosity - emake check -} - -multilib_src_install() { - default - - if multilib_is_native_abi && use doc; then - docinto html - dodoc -r doc/html/* - fi -} - -multilib_src_install_all() { - local HTML_DOCS=( ../readme.html ) - einstalldocs -} diff --git a/dev-libs/libxml2/Manifest b/dev-libs/libxml2/Manifest index 87aad8455fee..1a4d8bef8b79 100644 --- a/dev-libs/libxml2/Manifest +++ b/dev-libs/libxml2/Manifest @@ -1,14 +1,22 @@ AUX libxml2-2.11.5-CVE-2023-45322.patch 2030 BLAKE2B 2262b1c532b0b59c4982fdea12946294e58754aaca8b7cf3e1f3fdd912e900735b642362629e63ceb16b469f5a1146387030838ecc7b97d4227ceff089a72a43 SHA512 3e76d8b2608d523f659cbc3f7faf6565a83f8b77dcae0a2c1986c66df25b9baf8a4382d7bde612f7eafb0967e199c84621ec70898481a5b369e6f3818832f9bc +AUX libxml2-2.11.9-icu-pkgconfig.patch 930 BLAKE2B 59eb0810baceb8874657fd168753a7b53d70518f8625b6c461fbd235c1410e261a6e3a344b128fdeaaddcc8db8cf002c40e571a977ac03a118f0f8d63cc4d5cf SHA512 e2a8d965ab3459c426bbcb9fa9ff70795bf00110ce90580d7b5d61171a00d81ecb2b5cde4ed2f8a0119995d80dd14a7615d76630acadff8a6611821ca6e21707 +AUX libxml2-2.12.9-icu-pkgconfig.patch 1074 BLAKE2B a676f25de6c96ec5056b472a4819d65ca944dc5befc40c708a5c0d982d29912fcb3c602573f172abb3e62baeed3ae222dc594dc8d7f69031e86080427d86f98e SHA512 613e3b853ad734f789704b6523d402eb996f01688edcf7ca96a753f79dc0cbd2057df1cc9b6cc80c664da4a3acf4be75ce88825371060ba51e151c6b643d8eaf DIST libxml2-2.11.8.tar.xz 2628212 BLAKE2B 7a9f62b9e6628e71462b0ae2a43947e398c8b948d57280ee5ac64a7cd0a13d39aa4cc55148421f999e5a04e19ca1ae2cb84884f85f3e22559cb45d8a7fca7d45 SHA512 b8c38365172b9f46e2da4dd696f5df4f917d05cc33456079d3d042578543c0f951da207361958ba8699a9f7256889f063737ba80dba8bb9720c8434be1ca723f +DIST libxml2-2.11.9.tar.xz 2627500 BLAKE2B 3ecab5df9017673f31e8bbf737273d72cb4475c3a6f0d0669e7f074b0e4d378460df2e175fe4991c675d8462a2e4d4607c151ed11937a0c8a3a4e81107102f67 SHA512 d5c34ed56525f4c6b61d7055fe4219d7a3337077b4fb27081682e9f8350f1542b4476ac42f2754e590b371a4d9a00921cebf20c10b299371b05b8391e7fa7c33 DIST libxml2-2.12.7.tar.xz 2641980 BLAKE2B 19abc2a7824212b1de3ceb1e8e3bbb39cb5feb31f8f6e1b1701a8255f34aadbbd01631e8011fd1207d2e711372a893034a99cb4aaa779a1df22d49d339dbfc76 SHA512 88b5f3e0a7c6704926e662a46ba0606d901efbcd70a36bd39fe034e29ee42d66d7296358761e04272c9696192a1380bda55852b2a0b14a05a7a083a08e125f5f DIST libxml2-2.12.8.tar.xz 2643728 BLAKE2B d26fe61e913e73c923eb8140a9080d6b70078ce45e94fe61d1ca1b8919d5b86feb7f14156f5a8b06ea06a03a96a242ce3a32e8d61169cfa8bde587888438627b SHA512 59baac9a82a734045112be6da12bbbe80a71575145424c2225e4bd9f8d54e53c674dcbc9576eb55f646632335702e7f0b1928f96a851159ace9b26f677fd3d77 +DIST libxml2-2.12.9.tar.xz 2643456 BLAKE2B 769ff564e62c1c0167e5334879ac9e912491c651b6d48a9d21db569002ae86bc4e4490098710a614bc90bbefc44a9dd0af6b02958041dd3bffccf8b5ddc0f7ca SHA512 6e4544ed3ab36d6cb7481d465ceabf223444739d7f41de3e1927309b8716a5eac85520b9bbaf69913f53e052fbfaf68bf27372074daaa24dca9463ce728b4173 DIST libxml2-2.13.1.tar.xz 2579424 BLAKE2B 93cbd3943b0a7a7a07036a3ce01740c37049b44c20f43aaee96ef9a36e86bc108914950d7532740be87995b8eb5c1e6fbb4464c6af0a20233c8a1a206b9a5b83 SHA512 28d280eb5e2f3af9df5adcccced730602e6951fd181b8d00256dbb2138abfe32a4b145fdc00ed8c77a6d322e0929bcb3d5128ad4622877d7f8a059d4b6e011a6 +DIST libxml2-2.13.4.tar.xz 2582156 BLAKE2B 6b143fb192625bb1168ecb1e25295761a062923018b39bcabeae07f422c9bb6c7f11e7de8ce728c0d474271407e0777b9e2e5ad30b47e79b9fb79c12beaadf1c SHA512 27bfaa63431798d3aa725b36af2005bda70a20b270e601cc3c8a07cc9fd02a080cb3d2b023eb42606a57b9786469488a7c09b71bdff1a518a0b4271c78c3f940 DIST xmlts20130923.tar.gz 641522 BLAKE2B 63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be SHA512 d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733 DIST xsts-2002-01-16.tar.gz 6894439 BLAKE2B 1e9ec63d2c104655e64249e07440a04d862fcbcd4d4e19745d81b34994319b510a531c9d6df1491fae1e90b5d0764f0f1a827251ca8df5d613178b0eab01ef25 SHA512 43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288 DIST xsts-2004-01-14.tar.gz 2761085 BLAKE2B 41545995fb3a65d053257c376c07d45ffd1041a433bfbdb46d4dd87a5afb60c18c8629a3d988323f9e7a1d709775b5a7e5930276a7121c0725a22705c0976e36 SHA512 32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe EBUILD libxml2-2.11.8.ebuild 5304 BLAKE2B 44f59056495a1966c03fd4eb82680df47960c76e3a924beac84bf4d3dfe1d50434acd50f340f4d62ecae90e3efcc1f230004fd169b2d145ac6a7f3d72ccaf50f SHA512 c703801b7954c6d8ff13cf7dd0fe90547f01eaad15ba3383c1b281a1ec13570408ebfb247a9a4571c2f3af59a6c556d5c4c6adab2503150684eb0d9e4c0b0b2f +EBUILD libxml2-2.11.9.ebuild 5328 BLAKE2B e5962774560a8b27aedb3a0968b4353353316cdcca1f7f2548abf43119ea87449211fe878151cc3dadd1b87daf6c6468cf9d9dee1f1e9882cc58dec1e6487890 SHA512 98b60d12bf3c77876b5d3790dae25df1b4df9a27aab92343bb6086304e7bef6d2c46a2072b4d9c82e1e5127751f984783cadf8b81d76331b311fd9cb5402e627 EBUILD libxml2-2.12.7.ebuild 5242 BLAKE2B 066d0fd7da19ba07befec679c048461a9284a7b5b02995c60eeda98a51a753ba6b6c7f9296d277c400f5dab3a04f5eaf94434af30f495e9193714cfe2e32ba56 SHA512 594aaa591bef6312ef7f6207ca5e4b7bf4906b20b4775702039ac633c9df531a7ff3c7a9a7974195c589a584132bc038c7b77cae361c714f3df7432522703978 EBUILD libxml2-2.12.8.ebuild 5243 BLAKE2B 8fcda89a3a187b69fd5db9a270adb6a0e91a2c339acb0b2a1d8a1e50f981aa3f549f99465743e5bbe8131217f3b2dcac304c3d2b82a6fdbd1b4585e119640c48 SHA512 ab36cf45fee08c14977d89e18274a453a8633c7c769632a309220814cead3e89f1026851fe484da636c458c21a7bbbaacd3b2e7d3a04304b4c40186bdd26afdf +EBUILD libxml2-2.12.9.ebuild 5260 BLAKE2B 1a091b4d093503ac50b30bac6523097dbbf8939cc431915a8ae4b0529baf694e1b093e3d3b72b334983510f76a299b24e8d318b70530eaf3d11c488f415c0119 SHA512 59f66543e3c6cae403418d7b542b17b6073904de4deabd2be24a5727c8bc0660e52d053e189036f6910b43827312704804e1e7895a8550cb202eda06fee0121e EBUILD libxml2-2.13.1.ebuild 4900 BLAKE2B 32890de288b57921b2966cd23846a048b6d6e62a488f1ec497f4545f0821080d12f1638326bc9ce62e49d3c322a393fd06b9312204b2294477dc1a74207c13fd SHA512 55f42a4127318739bc9c35d6f09dbec8e29fe80b5fd27cc3db873c042748f1a5da8356a2e8e7bf7b49f86de24a57d8795ae465d65c5d2cb85835ff314b8ea5a7 -EBUILD libxml2-9999.ebuild 4900 BLAKE2B 32890de288b57921b2966cd23846a048b6d6e62a488f1ec497f4545f0821080d12f1638326bc9ce62e49d3c322a393fd06b9312204b2294477dc1a74207c13fd SHA512 55f42a4127318739bc9c35d6f09dbec8e29fe80b5fd27cc3db873c042748f1a5da8356a2e8e7bf7b49f86de24a57d8795ae465d65c5d2cb85835ff314b8ea5a7 +EBUILD libxml2-2.13.4.ebuild 4929 BLAKE2B 0e75032d107098974e34c27db656ddfad94adf50dc8c439196958ae5df0011d8e7499ed9e222b0ba4dd1c5848805ab81639a26a63c4ff5cfb4ea650ee5648357 SHA512 fcb2596dbada2f58aaa143100acb0bddc463892ac429efadeb447dc840cfa8f109c72fe7f26724f0cc52327addce47bd2e6017a746c13bfb18ee43d16c81b967 +EBUILD libxml2-9999.ebuild 4919 BLAKE2B 3e0f278498216f9318528bb2ed2b522309acf5c67e34e36725defe944b09aab9660a6284f948b1e45dee1af588512e605c5dc1e2eb84e6bebead6d857c0795c1 SHA512 47689ae3e3b5d3bd2e5fb92f4ffd20b8fdd5a2550fafe2cd88a1fff7f2946b970b99e379e44ff3f72e4423f62c4b2a5a3ea5b480dca8e431c2177ef69d779b6c MISC metadata.xml 519 BLAKE2B 528be4ec79b54eaed229c84c96656266acffaa2ab68c7b1e6daecdee77bb1109ea56babceff0459125e04326425be28f436a78f697c363920102b94aca25179d SHA512 85804c662dd019e6c4cad05bb691b2058c9b93c190c57a7b4cc2674bee71a805da41159184c1bae9954700e52b41bb104a2d1e66ea4d1799463626befb691d11 diff --git a/dev-libs/libxml2/files/libxml2-2.11.9-icu-pkgconfig.patch b/dev-libs/libxml2/files/libxml2-2.11.9-icu-pkgconfig.patch new file mode 100644 index 000000000000..6092c63201c6 --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.11.9-icu-pkgconfig.patch @@ -0,0 +1,19 @@ +Needed with icu-76.1 at least. Not clear why it worked before. + +/var/tmp/portage/dev-libs/libxml2-2.11.9/work/libxml2-2.11.9-abi_x86_32.x86/.libs/runtest: + symbol lookup error: /var/tmp/portage/dev-libs/libxml2-2.11.9/work/libxml2-2.11.9-abi_x86_32.x86/.libs/libxml2.so.2: undefined symbol: UCNV_FROM_U_CALLBACK_STOP +--- a/configure.ac ++++ b/configure.ac +@@ -1082,10 +1082,10 @@ if test "$with_icu" != "yes" ; then + else + # Try pkg-config first so that static linking works. + # If this succeeeds, we ignore the WITH_ICU directory. +- PKG_CHECK_MODULES([ICU], [icu-i18n], [ ++ PKG_CHECK_MODULES([ICU], [icu-uc icu-i18n], [ + WITH_ICU=1 + m4_ifdef([PKG_CHECK_VAR], +- [PKG_CHECK_VAR([ICU_DEFS], [icu-i18n], [DEFS])]) ++ [PKG_CHECK_VAR([ICU_DEFS], [icu-uc icu-i18n], [DEFS])]) + if test "x$ICU_DEFS" != "x"; then + ICU_CFLAGS="$ICU_CFLAGS $ICU_DEFS" + fi],[:]) diff --git a/dev-libs/libxml2/files/libxml2-2.12.9-icu-pkgconfig.patch b/dev-libs/libxml2/files/libxml2-2.12.9-icu-pkgconfig.patch new file mode 100644 index 000000000000..d00f37bfb681 --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.12.9-icu-pkgconfig.patch @@ -0,0 +1,20 @@ +Needed with icu-76.1 at least. Not clear why it worked before. + +/var/tmp/portage/dev-libs/libxml2-2.11.9/work/libxml2-2.11.9-abi_x86_32.x86/.libs/runtest: + symbol lookup error: /var/tmp/portage/dev-libs/libxml2-2.11.9/work/libxml2-2.11.9-abi_x86_32.x86/.libs/libxml2.so.2: undefined symbol: UCNV_FROM_U_CALLBACK_STOP +--- a/configure.ac ++++ b/configure.ac +@@ -1108,10 +1108,10 @@ if test "$with_icu" = "no" || test "$with_icu" = "" ; then + else + # Try pkg-config first so that static linking works. + # If this succeeeds, we ignore the WITH_ICU directory. +- PKG_CHECK_MODULES([ICU], [icu-i18n], [ +- WITH_ICU=1; XML_PC_REQUIRES="${XML_PC_REQUIRES} icu-i18n" ++ PKG_CHECK_MODULES([ICU], [icu-uc icu-i18n], [ ++ WITH_ICU=1; XML_PC_REQUIRES="${XML_PC_REQUIRES} icu-uc icu-i18n" + m4_ifdef([PKG_CHECK_VAR], +- [PKG_CHECK_VAR([ICU_DEFS], [icu-i18n], [DEFS])]) ++ [PKG_CHECK_VAR([ICU_DEFS], [icu-uc icu-i18n], [DEFS])]) + if test "x$ICU_DEFS" != "x"; then + ICU_CFLAGS="$ICU_CFLAGS $ICU_DEFS" + fi],[:]) diff --git a/dev-libs/libxml2/libxml2-2.11.9.ebuild b/dev-libs/libxml2/libxml2-2.11.9.ebuild new file mode 100644 index 000000000000..d08e9d772c14 --- /dev/null +++ b/dev-libs/libxml2/libxml2-2.11.9.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump in sync with dev-libs/libxslt + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="xml(+)" +inherit flag-o-matic python-r1 multilib-minimal + +XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_NAME_1="xmlschema2002-01-16" +XSTS_NAME_2="xmlschema2004-01-14" +XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" +XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" +XMLCONF_TARBALL="xmlts20130923.tar.gz" + +DESCRIPTION="XML C parser and toolkit" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit git-r3 +else + inherit autotools gnome.org + 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" +fi + +inherit autotools + +SRC_URI+=" + test? ( + ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} + ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} + https://www.w3.org/XML/Test/${XMLCONF_TARBALL} + ) +" +S="${WORKDIR}/${PN}-${PV%_rc*}" + +LICENSE="MIT" +SLOT="2" +IUSE="debug examples +ftp icu lzma +python readline static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + virtual/libiconv + >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +if [[ ${PV} == 9999 ]] ; then + BDEPEND+=" dev-build/gtk-doc-am" +fi + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.11.5-CVE-2023-45322.patch + "${FILESDIR}"/${PN}-2.11.9-icu-pkgconfig.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + local tarname=${P/_rc/-rc}.tar.xz + + # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, + # as they are needed as tarballs in ${S}/xstc instead and not unpacked + unpack ${tarname} + + if [[ -n ${PATCHSET_VERSION} ]] ; then + unpack ${PN}-${PATCHSET_VERSION}.tar.xz + fi + fi + + cd "${S}" || die + + if use test ; then + cp "${DISTDIR}/${XSTS_TARBALL_1}" \ + "${DISTDIR}/${XSTS_TARBALL_2}" \ + "${S}"/xstc/ \ + || die "Failed to install test tarballs" + unpack ${XMLCONF_TARBALL} + fi +} + +src_prepare() { + default + + # Please do not remove, as else we get references to PORTAGE_TMPDIR + # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. + #elibtoolize + + eautoreconf +} + +multilib_src_configure() { + # Filter seemingly problematic CFLAGS (bug #26320) + filter-flags -fprefetch-loop-arrays -funroll-loops + + # Notes: + # The meaning of the 'debug' USE flag does not apply to the --with-debug + # switch (enabling the libxml2 debug module). See bug #100898. + libxml2_configure() { + ECONF_SOURCE="${S}" econf \ + --enable-ipv6 \ + $(use_with ftp) \ + $(use_with debug run-debug) \ + $(use_with icu) \ + $(use_with lzma) \ + $(use_enable static-libs static) \ + $(multilib_native_use_with readline) \ + $(multilib_native_use_with readline history) \ + "$@" + } + + # Build python bindings separately + libxml2_configure --without-python + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_configure --with-python +} + +libxml2_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxml2_py_emake all + fi +} + +multilib_src_test() { + ln -s "${S}"/xmlconf || die + + emake check + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake check +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + multilib_is_native_abi && use python && python_foreach_impl python_optimize +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/examples || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not + # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. + if [[ -n "${ROOT}" ]]; then + elog "Skipping XML catalog creation for stage building (bug #208887)." + else + # Need an XML catalog, so no-one writes to a non-existent one + CATALOG="${EROOT}/etc/xml/catalog" + + # We don't want to clobber an existing catalog though, + # only ensure that one is there + # + if [[ ! -e "${CATALOG}" ]]; then + [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" + "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" + einfo "Created XML catalog in ${CATALOG}" + fi + fi +} diff --git a/dev-libs/libxml2/libxml2-2.12.9.ebuild b/dev-libs/libxml2/libxml2-2.12.9.ebuild new file mode 100644 index 000000000000..1f7c6270c0cd --- /dev/null +++ b/dev-libs/libxml2/libxml2-2.12.9.ebuild @@ -0,0 +1,198 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump in sync with dev-libs/libxslt + +PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_REQ_USE="xml(+)" +inherit autotools flag-o-matic python-r1 multilib-minimal + +XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_NAME_1="xmlschema2002-01-16" +XSTS_NAME_2="xmlschema2004-01-14" +XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" +XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" +XMLCONF_TARBALL="xmlts20130923.tar.gz" + +DESCRIPTION="XML C parser and toolkit" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit git-r3 +else + inherit gnome.org + 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" +fi + +SRC_URI+=" + test? ( + ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} + ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} + https://www.w3.org/XML/Test/${XMLCONF_TARBALL} + ) +" +S="${WORKDIR}/${PN}-${PV%_rc*}" + +LICENSE="MIT" +SLOT="2" +IUSE="debug examples +ftp icu lzma +python readline static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + virtual/libiconv + >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +if [[ ${PV} == 9999 ]] ; then + BDEPEND+=" dev-build/gtk-doc-am" +fi + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.12.9-icu-pkgconfig.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + local tarname=${P/_rc/-rc}.tar.xz + + # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, + # as they are needed as tarballs in ${S}/xstc instead and not unpacked + unpack ${tarname} + + if [[ -n ${PATCHSET_VERSION} ]] ; then + unpack ${PN}-${PATCHSET_VERSION}.tar.xz + fi + fi + + cd "${S}" || die + + if use test ; then + cp "${DISTDIR}/${XSTS_TARBALL_1}" \ + "${DISTDIR}/${XSTS_TARBALL_2}" \ + "${S}"/xstc/ \ + || die "Failed to install test tarballs" + unpack ${XMLCONF_TARBALL} + fi +} + +src_prepare() { + default + + # Please do not remove, as else we get references to PORTAGE_TMPDIR + # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. + #elibtoolize + + eautoreconf +} + +multilib_src_configure() { + # Filter seemingly problematic CFLAGS (bug #26320) + filter-flags -fprefetch-loop-arrays -funroll-loops + + # Notes: + # The meaning of the 'debug' USE flag does not apply to the --with-debug + # switch (enabling the libxml2 debug module). See bug #100898. + libxml2_configure() { + ECONF_SOURCE="${S}" econf \ + --enable-ipv6 \ + $(use_with ftp) \ + $(use_with debug run-debug) \ + $(use_with icu) \ + $(use_with lzma) \ + $(use_enable static-libs static) \ + $(multilib_native_use_with readline) \ + $(multilib_native_use_with readline history) \ + "$@" + } + + # Build python bindings separately + libxml2_configure --without-python + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_configure --with-python +} + +libxml2_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxml2_py_emake all + fi +} + +multilib_src_test() { + ln -s "${S}"/xmlconf || die + + emake check + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake check +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + multilib_is_native_abi && use python && python_foreach_impl python_optimize +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/examples || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not + # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. + if [[ -n "${ROOT}" ]]; then + elog "Skipping XML catalog creation for stage building (bug #208887)." + else + # Need an XML catalog, so no-one writes to a non-existent one + CATALOG="${EROOT}/etc/xml/catalog" + + # We don't want to clobber an existing catalog though, + # only ensure that one is there + # + if [[ ! -e "${CATALOG}" ]]; then + [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" + "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" + einfo "Created XML catalog in ${CATALOG}" + fi + fi +} diff --git a/dev-libs/libxml2/libxml2-2.13.4.ebuild b/dev-libs/libxml2/libxml2-2.13.4.ebuild new file mode 100644 index 000000000000..e27b1966092f --- /dev/null +++ b/dev-libs/libxml2/libxml2-2.13.4.ebuild @@ -0,0 +1,190 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump in sync with dev-libs/libxslt + +PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_REQ_USE="xml(+)" +inherit autotools python-r1 multilib-minimal + +XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_NAME_1="xmlschema2002-01-16" +XSTS_NAME_2="xmlschema2004-01-14" +XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" +XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" +XMLCONF_TARBALL="xmlts20130923.tar.gz" + +DESCRIPTION="XML C parser and toolkit" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit git-r3 +else + inherit gnome.org + 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" +fi + +SRC_URI+=" + test? ( + ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} + ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} + https://www.w3.org/XML/Test/${XMLCONF_TARBALL} + ) +" +S="${WORKDIR}/${PN}-${PV%_rc*}" + +LICENSE="MIT" +SLOT="2" +IUSE="examples icu lzma +python readline static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + virtual/libiconv + >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +if [[ ${PV} == 9999 ]] ; then + BDEPEND+=" dev-build/gtk-doc-am" +fi + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.12.9-icu-pkgconfig.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + local tarname=${P/_rc/-rc}.tar.xz + + # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, + # as they are needed as tarballs in ${S}/xstc instead and not unpacked + unpack ${tarname} + + if [[ -n ${PATCHSET_VERSION} ]] ; then + unpack ${PN}-${PATCHSET_VERSION}.tar.xz + fi + fi + + cd "${S}" || die + + if use test ; then + cp "${DISTDIR}/${XSTS_TARBALL_1}" \ + "${DISTDIR}/${XSTS_TARBALL_2}" \ + "${S}"/xstc/ \ + || die "Failed to install test tarballs" + unpack ${XMLCONF_TARBALL} + fi +} + +src_prepare() { + default + + # Please do not remove, as else we get references to PORTAGE_TMPDIR + # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. + #elibtoolize + + eautoreconf +} + +multilib_src_configure() { + libxml2_configure() { + ECONF_SOURCE="${S}" econf \ + $(use_with icu) \ + $(use_with lzma) \ + $(use_enable static-libs static) \ + $(multilib_native_use_with readline) \ + $(multilib_native_use_with readline history) \ + --with-legacy \ + "$@" + } + + # Build python bindings separately + libxml2_configure --without-python + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_configure --with-python +} + +libxml2_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxml2_py_emake all + fi +} + +multilib_src_test() { + ln -s "${S}"/xmlconf || die + + emake check + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake check +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + multilib_is_native_abi && use python && python_foreach_impl python_optimize +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/examples || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not + # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. + if [[ -n "${ROOT}" ]]; then + elog "Skipping XML catalog creation for stage building (bug #208887)." + else + # Need an XML catalog, so no-one writes to a non-existent one + CATALOG="${EROOT}/etc/xml/catalog" + + # We don't want to clobber an existing catalog though, + # only ensure that one is there + # + if [[ ! -e "${CATALOG}" ]]; then + [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" + "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" + einfo "Created XML catalog in ${CATALOG}" + fi + fi +} diff --git a/dev-libs/libxml2/libxml2-9999.ebuild b/dev-libs/libxml2/libxml2-9999.ebuild index 72ad49334241..45b054cf8916 100644 --- a/dev-libs/libxml2/libxml2-9999.ebuild +++ b/dev-libs/libxml2/libxml2-9999.ebuild @@ -106,6 +106,7 @@ multilib_src_configure() { $(use_enable static-libs static) \ $(multilib_native_use_with readline) \ $(multilib_native_use_with readline history) \ + --with-legacy \ "$@" } diff --git a/dev-libs/libxslt/Manifest b/dev-libs/libxslt/Manifest index 97eb8a72e056..ab412c9d7a48 100644 --- a/dev-libs/libxslt/Manifest +++ b/dev-libs/libxslt/Manifest @@ -4,7 +4,9 @@ AUX libxslt-1.1.41-extensions-xmlCheckFilename-older-libxml2.patch 1189 BLAKE2B AUX libxslt-1.1.41-libxml2-2.13.patch 5457 BLAKE2B 4fa71f28d253592be63e0b8b93002d359b21b40f15fe043c7602ee593600f91dfefa86ae4076096b09fa5df9834e58b62fd5ee4bc997967388c10aa3acfa12d5 SHA512 e1e546efbe08ebf37b02d55770d3b11efd6b97646cc7a8d3b23b06b438cf8c2ee8c3d892037e41fe7dca46a4d20cbc9dc0f2591b924d94c93456726672aa71c2 DIST libxslt-1.1.39.tar.xz 1578216 BLAKE2B 7c87b769d345fc99a966bea6b4e94533fa211dc3a987ce013a03eefb05dde73ef75526bdecf7d32d8c77112232096fb22d8ec4f0a781b9f59d0422a2db75df01 SHA512 c0c99dc63f8b2acb6cc3ad7ad684ffa2a427ee8d1740495cbf8a7c9b9c8679f96351b4b676c73ccc191014db4cb4ab42b9a0070f6295565f39dbc665c5c16f89 DIST libxslt-1.1.41.tar.xz 1573868 BLAKE2B 2228a4074f257edd4fa0ebb2a713b035b780b19398ba9208dedb0d0cec6777129c9bb08a80494b657a4238bea228bd752761118a0022f56d71cc1302838b1733 SHA512 b9f94d1c00dfb9f731c6c424a0d3f07fb0a37935048b26618e5405c3890d1d40c832420117de4d5363a90ab4809f77f6e566013ce7858cc88e0905709ca0f6fe +DIST libxslt-1.1.42.tar.xz 1573668 BLAKE2B 91b2ca38807ae21b6629b8e19f4ab9d7d19bc0af17f2546e1cf278b2f2fff62b86bbbd996085fff322f3d5ae6c2b20bcfc4e9fb501c301d3fd5d56cf5b205ede SHA512 02a2189b6cd65fa1fb929fc0e6868bc046bdd8827849f0048cdf9267ed9450745158cef0f2713a833e28fb520b312ff86dc5754dd423ce768c457bfd8812bdc7 EBUILD libxslt-1.1.39.ebuild 3071 BLAKE2B b0765533582ae3e10cd92a6e7da77189f58199813ccdb07754adc6c04437c4e1b3c7eb9dffb9007ee4112a51b3bdfba0b1748b9345b62b2e0ff3eeba49dbd183 SHA512 b506c4bcf5bcc61aaf41f123f20a1275e09010170a8fbb690a8d4891d94baab5f3f485bc069dc365f974acd33cfa80e1ba78fff64d7ce6578eada9cbbcd4f24b EBUILD libxslt-1.1.41.ebuild 3104 BLAKE2B db919e0c069f9b0bfffe94aebcab60a37fce4621028a9cfacae0e378a22bb89977457abfede25f5e020fbbfec8dc72550d4392e777708f3fe900198f8ed40fb2 SHA512 16aae17a02fbb18d845169cbe59f4c02e2602af2d58519e24b963855957970584eb5b07400f4ace38a9125da1bba360388b769d6d45d0d134d1952f545e53693 +EBUILD libxslt-1.1.42.ebuild 2924 BLAKE2B cd0f1eb15396caf6bbe496fd6ba1355daf52db520d049f356e3497cf2c7fc63fce50324141161289b73ab57ff3f646084a078c06c6cb90e0256bb7a0c0bc94b6 SHA512 b930b4267355545d66dd86259e5bdd88c127f725f31c63546cb539f31f28d8bc3b8ea2f8ff33b4f9ee6b1b54104086e742959e0fe5a211884ee3fc81abab3b45 EBUILD libxslt-9999.ebuild 3104 BLAKE2B db919e0c069f9b0bfffe94aebcab60a37fce4621028a9cfacae0e378a22bb89977457abfede25f5e020fbbfec8dc72550d4392e777708f3fe900198f8ed40fb2 SHA512 16aae17a02fbb18d845169cbe59f4c02e2602af2d58519e24b963855957970584eb5b07400f4ace38a9125da1bba360388b769d6d45d0d134d1952f545e53693 MISC metadata.xml 519 BLAKE2B 19c44d930c1d6af33c7cd756ddd74fb29f93d37dc4953956011e8ff5a563caa119b8848ef8e47ca0e71ced4134b7dfc9092c89a14cf1000148e0383c01183ddc SHA512 6c5e8dcd014d9203f0f50ba2e11d3fd52d89f226ef2f4d1d39143347a8de4433e1f6fa30881f87701695438da263c13dad59230c957002aea2950da01eb66c00 diff --git a/dev-libs/libxslt/libxslt-1.1.42.ebuild b/dev-libs/libxslt/libxslt-1.1.42.ebuild new file mode 100644 index 000000000000..0eb16b11c787 --- /dev/null +++ b/dev-libs/libxslt/libxslt-1.1.42.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump this in sync with dev-libs/libxml2. + +PYTHON_COMPAT=( python3_{10..13} ) +inherit python-r1 multilib-minimal + +DESCRIPTION="XSLT libraries and tools" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxslt" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxslt" + inherit autotools git-r3 +else + inherit libtool gnome.org + 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" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="crypt debug examples python static-libs" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +BDEPEND=">=virtual/pkgconfig-1" +RDEPEND=" + >=dev-libs/libxml2-2.13:2[${MULTILIB_USEDEP}] + crypt? ( >=dev-libs/libgcrypt-1.5.3:=[${MULTILIB_USEDEP}] ) + python? ( + ${PYTHON_DEPS} + >=dev-libs/libxml2-2.13:2[${MULTILIB_USEDEP},python,${PYTHON_USEDEP}] + ) +" +DEPEND="${RDEPEND}" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xslt-config +) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libxslt/xsltconfig.h +) + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + else + # Prefix always needs elibtoolize if not eautoreconf'd. + elibtoolize + fi +} + +multilib_src_configure() { + libxslt_configure() { + ECONF_SOURCE="${S}" econf \ + --without-python \ + $(use_with crypt crypto) \ + $(use_with debug) \ + $(use_enable static-libs static) \ + "$@" + } + + # Build Python bindings separately + libxslt_configure --without-python + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxslt_configure --with-python + fi +} + +libxslt_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + python_foreach_impl run_in_build_dir libxslt_py_emake all + fi +} + +multilib_src_test() { + default + + if multilib_is_native_abi && use python ; then + python_foreach_impl run_in_build_dir libxslt_py_emake check + fi +} + +multilib_src_install() { + # "default" does not work here - docs are installed by multilib_src_install_all + emake DESTDIR="${D}" install + + if multilib_is_native_abi && use python; then + python_foreach_impl run_in_build_dir libxslt_py_emake \ + DESTDIR="${D}" \ + install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + python_foreach_impl python_optimize + fi +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/tutorial{,2} || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + find "${ED}" -type f -name "*.la" -delete || die +} -- cgit v1.2.3