diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-04-12 05:40:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-04-12 05:40:29 +0100 |
commit | 81663ab80e0e0c5839b216934509b6bcbf08429a (patch) | |
tree | 9592fd7a67715f7e35d669ab58594078bfe4a7f7 /dev-libs/libxml2 | |
parent | 7d040c2d1b0c38c8635ec28dfaa632a2db8be895 (diff) |
gentoo auto-resync : 12:04:2023 - 05:40:28
Diffstat (limited to 'dev-libs/libxml2')
-rw-r--r-- | dev-libs/libxml2/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.10.4.ebuild | 203 |
2 files changed, 205 insertions, 0 deletions
diff --git a/dev-libs/libxml2/Manifest b/dev-libs/libxml2/Manifest index ae28b0167407..75baeb8f49ba 100644 --- a/dev-libs/libxml2/Manifest +++ b/dev-libs/libxml2/Manifest @@ -1,8 +1,10 @@ AUX libxml2-2.10.3-python3-unicode-errors.patch 1208 BLAKE2B 8515db0c9d79c4397c3ef4147660ddf395b863de3658a8db27db20d2274949962172a42637bf9555d3d7bf63ead8f695d19f28ddb5e957b5302c8aed466058c7 SHA512 f2ab7934687ba14bf7541a381317d88c20d9912b424d1b206f8feb60224482f12e03c79ff4e8637025ee8d1bddd870183db932380990eafca833eea1c1373a06 DIST libxml2-2.10.3.tar.xz 2639908 BLAKE2B aef2cc87e4632ddc478ff719155fdcb17601a8af37ecc1145ca05e01340935b57f07722e016ca2b27e4b269d47bd2fe97db09119a47849e8745e077e42b8bb66 SHA512 33bb87ae9a45c475c3de09477e5d94840d8f687f893ef7839408bc7267e57611c4f2b863ed8ec819a4b5f1ebd6a122db9f6054c73bceed427d37f3e67f62620c +DIST libxml2-2.10.4.tar.xz 2643600 BLAKE2B 5bbb63c6e58accf434513aeb974fed7349e5458de642ef89db77768c8d1383532614254e0e3f1d9471e2274c6b81a04a0a3afcb602707ce79550c2bd8e9028d9 SHA512 792c1dceb098cd353a7eca4c46d31cce6310b2553d97fd3918cf0b94d93b2480759202036511bde36c24166236bd4616f57e79959eea9afe3f60614bdfe13094 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.10.3-r1.ebuild 5681 BLAKE2B 6083b2c688353537af94f5595bfce9bc40bc44c047e31c9661ef798c041be780b2c8b60d0866f159e34d20d977f0d1ba843d7c457344fb16fe54e1fb016a6ad0 SHA512 fc334fadbbdf6e270b10c31a4d787e6105050586a2725a52c045bb9562441ef1a39f19fd6ff8b07f6e39a852c17812ae00d75990efbe13c49db796503abc69a4 +EBUILD libxml2-2.10.4.ebuild 5689 BLAKE2B 5574260679325fd40962cc85c71912cebaef99780bc2c30aa39b134bfe1e338f9cb840e9fc5b30b77abfb7818a3512f52850773e0aba5caa2c94c71d17f91128 SHA512 9b9a596815def814f92b2dd9123565c9561b1f29e8d855f912cbad762cb44ed25562f2f604ff439f7c465345654958b02c0dc33d2a72ab9764c989090284161b EBUILD libxml2-9999.ebuild 5620 BLAKE2B 0470117a7e5a19688e69a874d3b8f0609408a65b4b806d36b415f08a8297b64a3f3154bbb753350a737b9602a60ef86415770c9d8889beff275879707003ada5 SHA512 516c42c26fc65bbe1b5d698b7e79c4af453c0a90c55798ca28a2429c06230a794284938831d874f6c5d8e698c35f8bdf3eb948beafd6938faa8c8b4f7ed6c546 MISC metadata.xml 519 BLAKE2B 528be4ec79b54eaed229c84c96656266acffaa2ab68c7b1e6daecdee77bb1109ea56babceff0459125e04326425be28f436a78f697c363920102b94aca25179d SHA512 85804c662dd019e6c4cad05bb691b2058c9b93c190c57a7b4cc2674bee71a805da41159184c1bae9954700e52b41bb104a2d1e66ea4d1799463626befb691d11 diff --git a/dev-libs/libxml2/libxml2-2.10.4.ebuild b/dev-libs/libxml2/libxml2-2.10.4.ebuild new file mode 100644 index 000000000000..3a4ae3eda52c --- /dev/null +++ b/dev-libs/libxml2/libxml2-2.10.4.ebuild @@ -0,0 +1,203 @@ +# Copyright 1999-2023 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_{9..11} ) +PYTHON_REQ_USE="xml(+)" +inherit flag-o-matic python-r1 multilib-minimal toolchain-funcs + +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="http://www.xmlsoft.org/ https://gitlab.gnome.org/GNOME/libxml2" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit autotools git-r3 +else + inherit gnome.org libtool + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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=">=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-util/gtk-doc-am" +fi + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +PATCHES=( "${FILESDIR}"/${PN}-2.10.3-python3-unicode-errors.patch ) + +DOCS=( NEWS README.md TODO TODO_SCHEMAS python/TODO ) + +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.bz2 + 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 + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + else + # Please do not remove, as else we get references to PORTAGE_TMPDIR + # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. + elibtoolize + fi +} + +multilib_src_configure() { + # Filter seemingly problematic CFLAGS (bug #26320) + filter-flags -fprefetch-loop-arrays -funroll-loops + + # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs + # https://github.com/gentoo/gentoo/pull/28355 + # mold needs this too but right now tc-ld-is-mold is also not available + if tc-ld-is-lld; then + append-ldflags -Wl,--undefined-version + fi + + # 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 + # <obz@gentoo.org> + 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 +} |