summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Rostovtsev <tetromino@gentoo.org>2012-12-18 07:48:27 +0000
committerAlexandre Rostovtsev <tetromino@gentoo.org>2012-12-18 07:48:27 +0000
commitf7eb90c40bb279184a21c2fe6a2545d2dfb62417 (patch)
tree3b86afa86bcc524d9d492144ff23ce36d6e6f61a /dev-libs/libxml2
parentInitial commit, wrt bug #184263 (diff)
downloadhistorical-f7eb90c40bb279184a21c2fe6a2545d2dfb62417.tar.gz
historical-f7eb90c40bb279184a21c2fe6a2545d2dfb62417.tar.bz2
historical-f7eb90c40bb279184a21c2fe6a2545d2dfb62417.zip
Update to EAPI5 and python-r1.eclass. Always install pre-built docs in a devhelp-compatible location. Add a patch for cleaner multiple python ABI support.
Package-Manager: portage-2.2.0_alpha149/cvs/Linux x86_64 Manifest-Sign-Key: 0xCF0ADD61
Diffstat (limited to 'dev-libs/libxml2')
-rw-r--r--dev-libs/libxml2/ChangeLog12
-rw-r--r--dev-libs/libxml2/Manifest16
-rw-r--r--dev-libs/libxml2/files/libxml2-2.9.0-manual-python.patch45
-rw-r--r--dev-libs/libxml2/libxml2-2.8.0-r4.ebuild (renamed from dev-libs/libxml2/libxml2-2.8.0-r2.ebuild)146
-rw-r--r--dev-libs/libxml2/libxml2-2.9.0-r1.ebuild197
5 files changed, 323 insertions, 93 deletions
diff --git a/dev-libs/libxml2/ChangeLog b/dev-libs/libxml2/ChangeLog
index becaa863259b..069770915ef6 100644
--- a/dev-libs/libxml2/ChangeLog
+++ b/dev-libs/libxml2/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for dev-libs/libxml2
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libxml2/ChangeLog,v 1.371 2012/12/15 17:42:56 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libxml2/ChangeLog,v 1.372 2012/12/18 07:48:21 tetromino Exp $
+
+*libxml2-2.9.0-r1 (18 Dec 2012)
+*libxml2-2.8.0-r4 (18 Dec 2012)
+
+ 18 Dec 2012; Alexandre Rostovtsev <tetromino@gentoo.org>
+ -libxml2-2.8.0-r2.ebuild, +libxml2-2.8.0-r4.ebuild, +libxml2-2.9.0-r1.ebuild,
+ +files/libxml2-2.9.0-manual-python.patch:
+ Update to EAPI5 and python-r1.eclass. Always install pre-built docs in a
+ devhelp-compatible location. Add a patch for cleaner multiple python ABI
+ support.
15 Dec 2012; Raúl Porcel <armin76@gentoo.org> libxml2-2.8.0-r3.ebuild:
alpha/ia64/m68k/s390/sh/sparc stable wrt #444836
diff --git a/dev-libs/libxml2/Manifest b/dev-libs/libxml2/Manifest
index 6fa5d49f1f18..97dbd8421da8 100644
--- a/dev-libs/libxml2/Manifest
+++ b/dev-libs/libxml2/Manifest
@@ -8,6 +8,7 @@ AUX libxml2-2.8.0-xmlParseAttValueComplex-underflow.patch 692 SHA256 fd86a145f57
AUX libxml2-2.8.0_rc1-winnt.patch 2392 SHA256 c18b2c15550b3ff4709a85cd18d16368928319b1b7fd8875dc34acd67076b134 SHA512 e78d010c82f18386b4f0ff84497585755b43416563bccd11f8e4dbf0153ca8842934fe05dce6c2373d8360574a2165795a78ea991682aed9610000d2bfcb0164 WHIRLPOOL a87eefa17ad113ae4aed14744715b4e1781e0869a3bb789bdf4f243bdb3687d0d4b6ee2addc85bf5b2f86b9d1cc442d946f0329011f033e3a7855ae0ad79b745
AUX libxml2-2.9.0-disable_static_modules.patch 837 SHA256 745a4c7006874fbbbf30bd4ed07622a496445bf848a60f5ad5100889016f482a SHA512 7ced4510bcd3380f2910cac7420ab727de931939b9012f4ba034b66b32803f4e773fd81850451aa8a24530cc2d0898cebb3a329b42ab3c5daa41be63ae4303ec WHIRLPOOL 1584c94b2f8c583caa84a2ee8e2b23e31a3ef7060dba7f6c0c73fcdf7ec529e9cdc33294781465779ca7d7e6ef5265d7c0d158947ca5b3a7ba0a083333453a67
AUX libxml2-2.9.0-large-file-parse.patch 1597 SHA256 c7ae7c9e94720f7ef1adfc5e60b0559a7a0ca0b302e8058b994f0b84b97f9ab6 SHA512 e049379b2e8cc26f6a6e348842eaa3955005834f61d56c53538ee0bd8a7cdda5cc51df8ed590a37799b1e04e692c2ef0954fb5728fb848a2e9d62162e5a761db WHIRLPOOL e360313cbf9b88f3fb6e80da44232a4d5ca84a43a9528fd2c5f102a4b47cee2da093fef24733afd958fb1c57df89d2ed30d079262b75be747e6e5ead8b3f2976
+AUX libxml2-2.9.0-manual-python.patch 1409 SHA256 647023249861bece60c719c49421a539342ab11a9c9023ee3175e29faaa24974 SHA512 1e06c52c729752d5bb72ac57ec0aa5c384eed49f79d38088eb9514c0a15c0f433309cd60ebfabbe75bf6166d93d1c7eb2a5ba6fd44a18bea8583590fdbcb3f11 WHIRLPOOL ec9653cab65af8833fef1264fe96ceeb8863047a3f699b8e69afbe8e5e47ef50e4e589a62d305d58352f560507cb606e45e1be5603b3b3758474fa192bb51506
AUX libxml2-2.9.0-nsclean.patch 806 SHA256 3f135045a44423e7e50269bbc2464af50a86f33beef08bb0af6922091b39c9f2 SHA512 6cdf243fe5424a0506645930c7fa1fe38bb43d712bec6f5d88ffb3abfb70ce9af1414ddbde3c5266af53bd3a6a8ef26c5322ae701853ec008a53b9f6dc8b79c5 WHIRLPOOL 92ff510b095214b1a548abe0c19b475cf5d8885a8feec5e804e5e351a468bf5e30af9bacc2744da66b6a488661d9763f8fba1e6ee1de60f7e7602a45415561e0
AUX libxml2-2.9.0-rand_seed.patch 845 SHA256 3a7c229c664aade8eb454da19f90cae3d9927d4c76859c85070da13c36565f7a SHA512 caca91890785959317943aae8b21dbed4bbc3a93cbee8d52101ee38f554ca464bb423962c4f52adf515361bdaf655b6bd3a664ff7503e8777f0cb9d4938d6eed WHIRLPOOL a3404a6311b433927c44467263235faf407437efbb52fc95d8fc65b42e1ad44b8c0c7181b07e0251aa186c07e74d6350b3568407c0e09a185659740bbe5e668d
AUX libxml2-2.9.0-streaming-validation.patch 1639 SHA256 295f3012c24d96fca5c38ca32449e3651ed85e1592db910631c7ef380b515d26 SHA512 efa42db1bae6cef4ad078d8550939a18f2e796499d428038ac1c1028466b8472963f26ade3142e89a4475c9a0c54daec0909510e7080b34538ff89ad2e82a3f1 WHIRLPOOL 188cc683b6631bb0d01ba941cf2405802cbd02ea7eb8b1a772a8511f948467f53e5a60e0463fab516c4fb11517eb7fa1e4e2d1856a537348ccbf473deae2b2fe
@@ -19,15 +20,20 @@ DIST libxml2-2.9.0.tar.gz 5161069 SHA256 ad25d91958b7212abdc12b9611cfb4dc4e5cddb
DIST xmlts20080827.tar.gz 638940 SHA256 96151685cec997e1f9f3387e3626d61e6284d4d6e66e0e440c209286c03e9cc7 SHA512 7325d0977c4427fc4944b291ccf896a665f654cc24399e5565c12a849c2bc3aef4fa3ee42a09ac115abcb6570c51a8fbd052c38d64d164279ecdecad5a4e884d WHIRLPOOL 50835380c3ea208df0bf9ce032ed2df69c4c6cb5a53ffdd39a08fb4f1d166f311b2ef2fe0d9911ae1ebff92aeb42f6ea55e727dfe0b7a3b95e6c7240315b3eda
DIST xsts-2002-01-16.tar.gz 6894439 SHA256 55e5c08db29946a91ea8e70e8f2418d3fd30d8b6777941dfba7f54726ffd9914 SHA512 43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288 WHIRLPOOL 84dd51959460a4f8aa582d57ad39229c546ca7fe155012c57c368b59f5d31400d8b940a343a7320058330ca611303139cacdffed514783f96406ac5366026b11
DIST xsts-2004-01-14.tar.gz 2761085 SHA256 09bdf9f81f381ebf9bc158a9472e498e896f7a02eb7461146e9abe1b9493ca17 SHA512 32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe WHIRLPOOL c46a3bf7d6dd771757f4304995cc177cf51c6cdd0e9778851fc13d3809c7b984690b4f273b3e075abe018110968eb7fc78f5b83170d3e18bacf00a4ed64b213d
-EBUILD libxml2-2.8.0-r2.ebuild 6637 SHA256 3bae77607c49613e859770bbef3bfa4410021aeb5e4b5c60e2ad14009b889b10 SHA512 8803a32751ea33dff4ba28276815fdeecf6860225584916b1c9c2923bf99fd1d77d81815b1d986e9b803da2b18a7e8363d0da1daddc149eb010d46ef583adfc8 WHIRLPOOL b43e4aa7f78f3ce995de3c091acdd0713d97bab3a0680db145bf27d72930b5536867d4c29bbd4794970b7ac0a1f8456d6208e7efa9fbdb37fc8426f8eaeba79c
EBUILD libxml2-2.8.0-r3.ebuild 6787 SHA256 1afcbec83bf17d8792aea3dc965e6a0ac63cb4434442e93ff33cf67d9d2ba0f2 SHA512 e4cba7a6230f759043001f7c7bca8b9feced7af6007140e6a3a3d4ec7224cce423f14561b591385b24836ac7304c1e64f79f24b32c9fb3368ea04f0259c247b0 WHIRLPOOL 175651d0eb8f217bcfb702677ae473b1c3ac802ac46bf2f00407af232c15894f9480adf4915f3ba2af61ffa9ed16a61ce318d8c367f5df74a5cab3c593059ef9
+EBUILD libxml2-2.8.0-r4.ebuild 6283 SHA256 21a9eb54ca7369ab0cf16e39e2c6c22d6ce52dcfd9325e660efbe5c03f736004 SHA512 bfd2b51676405e6ade1d8f324fb139ec046c7acddaaafdd60b3e81a1266a92bff61d6ec8626a54c3838da249f65a4356316c07f29ffe3eeeaeb5cedd02e5991b WHIRLPOOL a28c56cefc801a5bca6a63685d098c322136987c1dee0e96d33615aa210a4c433d267002a49e1aaf636e3b08e37244dca00e271c951d03ac59421bf2319b0e08
+EBUILD libxml2-2.9.0-r1.ebuild 6252 SHA256 59dcc7aabf53a7d4ca4f44f16c1e2bb4826019296e90c587ea695005bf77c04d SHA512 1a2442497e2b75d64c270c30c5b66e848ad1b0b6fd26cc5ea320bbb7332ff686af32dec0e901e69fbe0e37ba1da052cc150cd73f3da7a2a0ac8959f3540f4f62 WHIRLPOOL 604489ba471231532c266ee2f10d8945e9b770850fcecc0729256db3cf68713722683548e93d068f0f3ffc3fcb4edb07be682c479be4d34de3bf67b4f4ce6014
EBUILD libxml2-2.9.0.ebuild 6709 SHA256 bd8797034f93eec971d5ab022b04e322f885da1a2b0dbe6679ced1ec59cf59d5 SHA512 9bd9dd5edfcac75a7d270adb8b0a0b1bd8901a235581ace3bee69bf8119454ba08cb22881b11de9bd9946d27be53cd57087e25597c7379eb4e486814068cda50 WHIRLPOOL d79ec012de245dc17b349d112a0ce05400b70a3f4fbff79a2b8eec43ce0d0740abd9f53d55bfa8c480d12f19e9da644e0e0f5131112ff703247193af6203f9fd
-MISC ChangeLog 52314 SHA256 9fee0b05fa41efe6a81460ed039ddeb20fa155cace12da3c7af36d17aa2c3307 SHA512 079404b0846f52ccbab9d20ff9ce1c2cab2ef417679b6db614b4562a38cf2ca034196f49cd378f89decdf52cd804477e782a6088cf5cfb23c962e0816ad71e7f WHIRLPOOL 46bf39aa55d2f33caaaeefa92d5d5bcec6fa4cff5ba24a4cf7a229ade3460ca5e17c64eda61e491004264a6be3d6467ca481682d9d87e35281fffa804512da40
+MISC ChangeLog 52726 SHA256 1005e7dac38c8fadcf5911d553c0b622f641f44a52beb651ca8cbad2b8e2c6ec SHA512 b735e9d9221b333dd86bf7ca397c3af67c86f6c7aeda73c5d61790806061c807d2d44a46528499721c07db2841e5829c0958a3ca01698dda1830805e03375b3c WHIRLPOOL 30502f01927de02246c9bdaf9a68192a1e7e3c881aa639448e3d888d072a9076e58c20c7cafcb47f0e4a91e051e92fef020a70f9b115d5fe3c8e193a2ffe2cd7
MISC metadata.xml 158 SHA256 3a7dbca0fdc557de69783e0663e2d76ddab129ea8a19b2d0ef6d3e5d1b947ce1 SHA512 7fbfbd2b3ed1b81867d55648509f778fdbe2091af53727b3426a3c7f453ae7e1663a99fdd2101508b8d6c85b3158459c93551b77a6a394f02d7e11cbc8a5ecf4 WHIRLPOOL 4bcd5662974877d42ebc4361b6eb412bfeea2af7144b436ce7ed152327d554afc321c376625ba0bb85a704b70d86e3c4882dff3573047acddd8ffccf655d4f7e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
-iEYEAREIAAYFAlDMtqEACgkQuQc30/atMkBf1gCgkE0Pg+mjKbIx6PzgZePwCgjc
-e54An1u5KRT4vZta5Pz0SJHuUT/PAmES
-=jYBc
+iQEcBAEBCAAGBQJQ0B/HAAoJEJ0WA1zPCt1hld8IAIzrzcSfqx45uMET/vQZqjZG
+SWHrPKeEgXFxYpZiX3dpwj3/XMk+e2lMoNRj+gWpQLG86uHhHoEtmrG2iUsrXrOQ
+Hi2p5VAbTfdvMLcHOQDPog/geiWxmird6Qq0WKuL8vLlJVwe6uDkbNPYYVLhrbvA
+SxrSsqss7oQnB/Jei5l3w1Xe/fNatKbpyZ6wJbArwGVSwgzWl/zuD+R4VHgVsTqx
+Tmxr++pXG6bMCEUZNq1tlZiMjnqIL2r5dLkS0u/Uvrudnn+W5QjLbwj/KC0E3xxL
+KgqkMpnu4kO012KT3YEbmE15xDX965M+oROni368QSXnfIHBw05/ji43OwMEg0o=
+=gm7x
-----END PGP SIGNATURE-----
diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-manual-python.patch b/dev-libs/libxml2/files/libxml2-2.9.0-manual-python.patch
new file mode 100644
index 000000000000..2ebb4f040ada
--- /dev/null
+++ b/dev-libs/libxml2/files/libxml2-2.9.0-manual-python.patch
@@ -0,0 +1,45 @@
+From 2a74d41325c9e8043a2beec8b957ddf66f57cfd5 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Tue, 18 Dec 2012 02:09:14 -0500
+Subject: [PATCH] build/test/install python bindings manually
+
+To support building for multiple python ABIs, we want to skip checks for
+python in configure, and build/test/install python bindings manually.
+---
+ configure.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 3d5f48b..b467c51 100644
+--- a/configure.in
++++ b/configure.in
+@@ -748,7 +748,7 @@ PYTHON_INCLUDES=
+ PYTHON_SITE_PACKAGES=
+ PYTHON_TESTS=
+ pythondir=
+-if test "$with_python" != "no" ; then
++if false ; then
+ if test -x "$with_python/bin/python"
+ then
+ echo Found python in $with_python/bin/python
+@@ -823,7 +823,7 @@ if test "$with_python" != "no" ; then
+ else
+ PYTHON=
+ fi
+-AM_CONDITIONAL(WITH_PYTHON, test "$PYTHON_INCLUDES" != "")
++AM_CONDITIONAL(WITH_PYTHON, test "$with_python" != "no")
+ if test "$PYTHON_INCLUDES" != ""
+ then
+ PYTHON_SUBDIR=python
+@@ -1429,7 +1429,7 @@ else
+ echo "Enabled Schemas/Relax-NG support"
+ WITH_SCHEMAS=1
+ TEST_SCHEMAS="Schemastests Relaxtests"
+- if test "$PYTHON_INCLUDES" != "" ; then
++ if test "$with_python" != "no" ; then
+ PYTHON_TESTS="$PYTHON_TESTS RelaxNGPythonTests SchemasPythonTests"
+ fi
+ with_regexps=yes
+--
+1.8.0.2
+
diff --git a/dev-libs/libxml2/libxml2-2.8.0-r2.ebuild b/dev-libs/libxml2/libxml2-2.8.0-r4.ebuild
index 990bcca9d821..a13d8a632b71 100644
--- a/dev-libs/libxml2/libxml2-2.8.0-r2.ebuild
+++ b/dev-libs/libxml2/libxml2-2.8.0-r4.ebuild
@@ -1,50 +1,47 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libxml2/libxml2-2.8.0-r2.ebuild,v 1.7 2012/09/18 01:31:33 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libxml2/libxml2-2.8.0-r4.ebuild,v 1.1 2012/12/18 07:48:21 tetromino Exp $
-EAPI="4"
-PYTHON_DEPEND="python? 2"
-PYTHON_USE_WITH="xml"
-PYTHON_USE_WITH_OPT="python"
-SUPPORT_PYTHON_ABIS="1"
-RESTRICT_PYTHON_ABIS="3.* *-jython 2.7-pypy-*"
+EAPI="5"
+PYTHON_COMPAT=( python{2_5,2_6,2_7} )
+PYTHON_REQ_USE="xml"
-inherit libtool flag-o-matic eutils python autotools prefix
+inherit libtool flag-o-matic eutils python-r1 autotools prefix
DESCRIPTION="Version 2 of the library to manipulate XML files"
HOMEPAGE="http://www.xmlsoft.org/"
LICENSE="MIT"
SLOT="2"
-KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-IUSE="debug doc examples icu ipv6 lzma python readline static-libs test"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+IUSE="debug examples icu ipv6 lzma python readline static-libs test"
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="xmlts20080827.tar.gz"
SRC_URI="ftp://xmlsoft.org/${PN}/${PN}-${PV/_rc/-rc}.tar.gz
test? (
${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
- ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} )
+ ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
+ http://www.w3.org/XML/Test/${XMLCONF_TARBALL} )
http://dev.gentoo.org/~tetromino/distfiles/${PN}/${P}-namespace-node-patches.tar.bz2"
-RDEPEND="sys-libs/zlib
- icu? ( dev-libs/icu )
- lzma? ( app-arch/xz-utils )
- readline? ( sys-libs/readline )"
+RDEPEND="sys-libs/zlib:=
+ icu? ( dev-libs/icu:= )
+ lzma? ( app-arch/xz-utils:= )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:= )"
DEPEND="${RDEPEND}
+ dev-util/gtk-doc-am
hppa? ( >=sys-devel/binutils-2.15.92.0.2 )"
S="${WORKDIR}/${PN}-${PV%_rc*}"
-pkg_setup() {
- use python && python_pkg_setup
-}
-
src_unpack() {
# ${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
@@ -57,6 +54,7 @@ src_unpack() {
"${DISTDIR}/${XSTS_TARBALL_2}" \
"${S}"/xstc/ \
|| die "Failed to install test tarballs"
+ unpack ${XMLCONF_TARBALL}
fi
}
@@ -77,22 +75,24 @@ src_prepare() {
# Namespace nodes require special treatment, bug #434344
epatch ../patch/*.patch
+ # Buffer underflow in xmlParseAttValueComplex, bug #444836; fixed in 2.9.1
+ epatch "${FILESDIR}/${PN}-2.8.0-xmlParseAttValueComplex-underflow.patch"
+
# Please do not remove, as else we get references to PORTAGE_TMPDIR
# in /usr/lib/python?.?/site-packages/libxml2mod.la among things.
# We now need to run eautoreconf at the end to prevent maintainer mode.
# elibtoolize
# Python bindings are built/tested/installed manually.
- sed -e "s/@PYTHON_SUBDIR@//" -i Makefile.am || die "sed 1 failed"
-
- # Use Gentoo's python-config naming scheme
- sed -e 's/python$PYTHON_VERSION-config/python-config-$PYTHON_VERSION/' \
- -i configure.in || die "sed 2 failed"
+ epatch "${FILESDIR}/${PN}-2.9.0-manual-python.patch"
eautoreconf
}
src_configure() {
+ # filter seemingly problematic CFLAGS (#26320)
+ filter-flags -fprefetch-loop-arrays -funroll-loops
+
# USE zlib support breaks gnome2
# (libgnomeprint for instance fails to compile with
# fresh install, and existing) - <azarah@gentoo.org> (22 Dec 2002).
@@ -101,53 +101,35 @@ src_configure() {
# switch (enabling the libxml2 debug module). See bug #100898.
# --with-mem-debug causes unusual segmentation faults (bug #105120).
-
- local myconf=(
- --with-html-subdir=${PF}/html
- --docdir="${EPREFIX}/usr/share/doc/${PF}"
- $(use_with debug run-debug)
- $(use_with icu)
- $(use_with lzma)
- $(use_with python)
- $(use_with readline)
- $(use_with readline history)
- $(use_enable ipv6)
- $(use_enable static-libs static) )
-
- # filter seemingly problematic CFLAGS (#26320)
- filter-flags -fprefetch-loop-arrays -funroll-loops
-
- econf "${myconf[@]}"
+ econf \
+ -with-html-subdir=${PF}/html \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_with debug run-debug) \
+ $(use_with icu) \
+ $(use_with lzma) \
+ $(use_with python) \
+ $(use_with readline) \
+ $(use_with readline history) \
+ $(use_enable ipv6) \
+ $(use_enable static-libs static)
}
src_compile() {
default
-
if use python; then
- python_copy_sources python
- building() {
- emake PYTHON_INCLUDES="${EPREFIX}$(python_get_includedir)" \
- PYTHON_SITE_PACKAGES="${EPREFIX}$(python_get_sitedir)"
- }
- python_execute_function -s --source-dir python building
+ python_copy_sources
+ python_foreach_impl libxml2_py_emake
fi
}
src_test() {
default
-
- if use python; then
- testing() {
- emake test
- }
- python_execute_function -s --source-dir python testing
- fi
+ use python && python_foreach_impl libxml2_py_emake test
}
src_install() {
emake DESTDIR="${D}" \
- EXAMPLES_DIR="${EPREFIX}"/usr/share/doc/${PF}/examples \
- install || die "Installation failed"
+ EXAMPLES_DIR="${EPREFIX}"/usr/share/doc/${PF}/examples install
# on windows, xmllint is installed by interix libxml2 in parent prefix.
# this is the version to use. the native winnt version does not support
@@ -159,16 +141,11 @@ src_install() {
fi
if use python; then
- installation() {
- emake DESTDIR="${D}" \
- PYTHON_SITE_PACKAGES="${EPREFIX}$(python_get_sitedir)" \
- docsdir="${EPREFIX}"/usr/share/doc/${PF}/python \
- exampledir="${EPREFIX}"/usr/share/doc/${PF}/python/examples \
- install
- }
- python_execute_function -s --source-dir python installation
-
- python_clean_installation_image
+ python_foreach_impl libxml2_py_emake DESTDIR="${D}" \
+ docsdir="${EPREFIX}"/usr/share/doc/${PF}/python \
+ exampledir="${EPREFIX}"/usr/share/doc/${PF}/python/examples \
+ install
+ python_foreach_impl python_optimize
fi
rm -rf "${ED}"/usr/share/doc/${P}
@@ -179,29 +156,18 @@ src_install() {
rm -rf "${ED}"/usr/share/doc/${PN}-python-${PV}
fi
- if ! use doc; then
- rm -rf "${ED}"/usr/share/gtk-doc
- rm -rf "${ED}"/usr/share/doc/${PF}/html
- fi
-
if ! use examples; then
rm -rf "${ED}/usr/share/doc/${PF}/examples"
rm -rf "${ED}/usr/share/doc/${PF}/python/examples"
fi
- # Always remove useless .la files
- find "${D}" -name '*.la' -exec rm -f {} + || die "la file removal failed"
+ prune_libtool_files --modules
}
pkg_postinst() {
- if use python; then
- python_mod_optimize drv_libxml2.py libxml2.py
- fi
-
# 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 [ "${ROOT}" != "/" ]
- then
+ if [[ "${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
@@ -210,16 +176,22 @@ pkg_postinst() {
# we dont 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}
+ 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
}
-pkg_postrm() {
- if use python; then
- python_mod_cleanup drv_libxml2.py libxml2.py
- fi
+libxml2_py_emake() {
+ pushd "${BUILD_DIR}/python" > /dev/null || die
+ emake \
+ PYTHON="${PYTHON}" \
+ PYTHON_INCLUDES="${EPREFIX}/usr/include/${EPYTHON}" \
+ PYTHON_LIBS="$(python-config --ldflags)" \
+ PYTHON_SITE_PACKAGES="$(python_get_sitedir)" \
+ pythondir="$(python_get_sitedir)" \
+ PYTHON_VERSION=${EPYTHON/python} "$@"
+ popd > /dev/null
}
diff --git a/dev-libs/libxml2/libxml2-2.9.0-r1.ebuild b/dev-libs/libxml2/libxml2-2.9.0-r1.ebuild
new file mode 100644
index 000000000000..59046c3957fb
--- /dev/null
+++ b/dev-libs/libxml2/libxml2-2.9.0-r1.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libxml2/libxml2-2.9.0-r1.ebuild,v 1.1 2012/12/18 07:48:21 tetromino Exp $
+
+EAPI="5"
+PYTHON_COMPAT=( python{2_5,2_6,2_7} )
+PYTHON_REQ_USE="xml"
+
+inherit libtool flag-o-matic eutils python-r1 autotools prefix
+
+DESCRIPTION="Version 2 of the library to manipulate XML files"
+HOMEPAGE="http://www.xmlsoft.org/"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+IUSE="debug examples icu ipv6 lzma python readline static-libs test"
+
+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="xmlts20080827.tar.gz"
+
+SRC_URI="ftp://xmlsoft.org/${PN}/${PN}-${PV/_rc/-rc}.tar.gz
+ test? (
+ ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
+ ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
+ http://www.w3.org/XML/Test/${XMLCONF_TARBALL} )"
+
+RDEPEND="sys-libs/zlib:=
+ icu? ( dev-libs/icu:= )
+ lzma? ( app-arch/xz-utils:= )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:= )"
+
+DEPEND="${RDEPEND}
+ dev-util/gtk-doc-am
+ hppa? ( >=sys-devel/binutils-2.15.92.0.2 )"
+
+S="${WORKDIR}/${PN}-${PV%_rc*}"
+
+src_unpack() {
+ # ${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 ${P/_rc/-rc}.tar.gz
+ cd "${S}"
+
+ 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() {
+ # Patches needed for prefix support
+ epatch "${FILESDIR}"/${PN}-2.7.1-catalog_path.patch
+ epatch "${FILESDIR}"/${PN}-2.8.0_rc1-winnt.patch
+
+ eprefixify catalog.c xmlcatalog.c runtest.c xmllint.c
+
+ epunt_cxx
+
+ epatch "${FILESDIR}/${PN}-2.9.0-disable_static_modules.patch"
+
+ # Important patches from 2.9.1
+ epatch "${FILESDIR}/${P}-rand_seed.patch" \
+ "${FILESDIR}/${P}-thread-portability.patch" \
+ "${FILESDIR}/${P}-streaming-validation.patch" \
+ "${FILESDIR}/${P}-nsclean.patch" \
+ "${FILESDIR}/${P}-large-file-parse.patch" \
+ "${FILESDIR}/${P}-thread-alloc.patch"
+
+ # Buffer underflow in xmlParseAttValueComplex, bug #444836; fixed in 2.9.1
+ epatch "${FILESDIR}/${PN}-2.8.0-xmlParseAttValueComplex-underflow.patch"
+
+ # Please do not remove, as else we get references to PORTAGE_TMPDIR
+ # in /usr/lib/python?.?/site-packages/libxml2mod.la among things.
+ # We now need to run eautoreconf at the end to prevent maintainer mode.
+# elibtoolize
+
+ # Python bindings are built/tested/installed manually.
+ epatch "${FILESDIR}/${PN}-2.9.0-manual-python.patch"
+
+ eautoreconf
+}
+
+src_configure() {
+ # filter seemingly problematic CFLAGS (#26320)
+ filter-flags -fprefetch-loop-arrays -funroll-loops
+
+ # USE zlib support breaks gnome2
+ # (libgnomeprint for instance fails to compile with
+ # fresh install, and existing) - <azarah@gentoo.org> (22 Dec 2002).
+
+ # The meaning of the 'debug' USE flag does not apply to the --with-debug
+ # switch (enabling the libxml2 debug module). See bug #100898.
+
+ # --with-mem-debug causes unusual segmentation faults (bug #105120).
+ econf \
+ -with-html-subdir=${PF}/html \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_with debug run-debug) \
+ $(use_with icu) \
+ $(use_with lzma) \
+ $(use_with python) \
+ $(use_with readline) \
+ $(use_with readline history) \
+ $(use_enable ipv6) \
+ $(use_enable static-libs static)
+}
+
+src_compile() {
+ default
+ if use python; then
+ python_copy_sources
+ python_foreach_impl libxml2_py_emake
+ fi
+}
+
+src_test() {
+ default
+ use python && python_foreach_impl libxml2_py_emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ EXAMPLES_DIR="${EPREFIX}"/usr/share/doc/${PF}/examples install
+
+ # on windows, xmllint is installed by interix libxml2 in parent prefix.
+ # this is the version to use. the native winnt version does not support
+ # symlinks, which makes repoman fail if the portage tree is linked in
+ # from another location (which is my default). -- mduft
+ if [[ ${CHOST} == *-winnt* ]]; then
+ rm -rf "${ED}"/usr/bin/xmllint
+ rm -rf "${ED}"/usr/bin/xmlcatalog
+ fi
+
+ if use python; then
+ python_foreach_impl libxml2_py_emake DESTDIR="${D}" \
+ docsdir="${EPREFIX}"/usr/share/doc/${PF}/python \
+ exampledir="${EPREFIX}"/usr/share/doc/${PF}/python/examples \
+ install
+ python_foreach_impl python_optimize
+ fi
+
+ rm -rf "${ED}"/usr/share/doc/${P}
+ dodoc AUTHORS ChangeLog Copyright NEWS README* TODO*
+
+ if ! use python; then
+ rm -rf "${ED}"/usr/share/doc/${PF}/python
+ rm -rf "${ED}"/usr/share/doc/${PN}-python-${PV}
+ fi
+
+ if ! use examples; then
+ rm -rf "${ED}/usr/share/doc/${PF}/examples"
+ rm -rf "${ED}/usr/share/doc/${PF}/python/examples"
+ fi
+
+ prune_libtool_files --modules
+}
+
+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 [[ "${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 dont 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
+}
+
+libxml2_py_emake() {
+ pushd "${BUILD_DIR}/python" > /dev/null || die
+ emake \
+ PYTHON="${PYTHON}" \
+ PYTHON_INCLUDES="${EPREFIX}/usr/include/${EPYTHON}" \
+ PYTHON_LIBS="$(python-config --ldflags)" \
+ PYTHON_SITE_PACKAGES="$(python_get_sitedir)" \
+ pythondir="$(python_get_sitedir)" \
+ PYTHON_VERSION=${EPYTHON/python} "$@"
+ popd > /dev/null
+}