diff options
author | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-11-27 05:43:59 +0000 |
---|---|---|
committer | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-11-27 05:43:59 +0000 |
commit | f23252c03586b5065219f9eb80189a5087aa0821 (patch) | |
tree | 77c96bfc83b4fc8fc13dbfe21bf8e1fb883cfca5 /dev-libs | |
parent | Add libxml2-2.9.x to gnome-3.6 mask (bug #444290). (diff) | |
download | historical-f23252c03586b5065219f9eb80189a5087aa0821.tar.gz historical-f23252c03586b5065219f9eb80189a5087aa0821.tar.bz2 historical-f23252c03586b5065219f9eb80189a5087aa0821.zip |
Version bump featuring improved push parser and XPath evaluation (bug #444290). Update to EAPI5, always install docs in a devhelp-compatible location following current gnome team style guidelines, and run a more complete test suite.
Package-Manager: portage-2.2.0_alpha142/cvs/Linux x86_64
Manifest-Sign-Key: 0xCF0ADD61
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/libxml2/ChangeLog | 16 | ||||
-rw-r--r-- | dev-libs/libxml2/Manifest | 26 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.0-disable_static_modules.patch | 21 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.0-large-file-parse.patch | 56 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.0-nsclean.patch | 27 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.0-rand_seed.patch | 31 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.0-streaming-validation.patch | 54 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.0-thread-alloc.patch | 65 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.0-thread-portability.patch | 37 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.9.0.ebuild | 226 |
10 files changed, 550 insertions, 9 deletions
diff --git a/dev-libs/libxml2/ChangeLog b/dev-libs/libxml2/ChangeLog index ffa2d191b14e..29684822d1d1 100644 --- a/dev-libs/libxml2/ChangeLog +++ b/dev-libs/libxml2/ChangeLog @@ -1,6 +1,20 @@ # 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.363 2012/11/26 19:56:27 tetromino Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/libxml2/ChangeLog,v 1.364 2012/11/27 05:43:54 tetromino Exp $ + +*libxml2-2.9.0 (27 Nov 2012) + + 27 Nov 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + +libxml2-2.9.0.ebuild, +files/libxml2-2.9.0-disable_static_modules.patch, + +files/libxml2-2.9.0-large-file-parse.patch, + +files/libxml2-2.9.0-nsclean.patch, +files/libxml2-2.9.0-rand_seed.patch, + +files/libxml2-2.9.0-streaming-validation.patch, + +files/libxml2-2.9.0-thread-alloc.patch, + +files/libxml2-2.9.0-thread-portability.patch: + Version bump featuring improved push parser and XPath evaluation (bug + #444290). Update to EAPI5, always install docs in a devhelp-compatible + location following current gnome team style guidelines, and run a more + complete test suite. 26 Nov 2012; Alexandre Rostovtsev <tetromino@gentoo.org> libxml2-2.8.0-r3.ebuild: diff --git a/dev-libs/libxml2/Manifest b/dev-libs/libxml2/Manifest index e799dccb5170..533da68e9256 100644 --- a/dev-libs/libxml2/Manifest +++ b/dev-libs/libxml2/Manifest @@ -6,22 +6,32 @@ AUX libxml2-2.7.8-disable_static_modules.patch 365 SHA256 2f2ade9ee034af32cbd660 AUX libxml2-2.8.0-icu-linking.patch 3890 SHA256 69b37a49e8b9f0d71eda75a2c438426373c96290cd57a7f2c662a82066ce3b2b SHA512 c4caffcbf5e4baef4564fa9cf93a539622da61b849f2505360e0ca2243a5433cf2a318cd4df5e338bbe1a8650763d5af2894ce5d1b16196ada7b96983031c712 WHIRLPOOL 3716f2ed5cfb9fcf1024c17aa4d26a83f68c13a2d57ab64c52ba26676b6f681ad48575ac5070a679fd9ed3b3b1d11f2270bb2f281fd639159d545e5d816c3eaf AUX libxml2-2.8.0-xmlParseAttValueComplex-underflow.patch 692 SHA256 fd86a145f57c425f00d55a0ac515442ecb22a76462a256797a7b1d385953997f SHA512 1ef15347ddf7c34649b7664a2f9164f906ce2d4019280c2543d7209010626f3aadbba9abafb26b4bce64f6c51cfad417a1a5a4caab4a836989f753f05083cb3d WHIRLPOOL 582f19fa221fc6815ec977c6c8e74fcd5556299c10791f1be6eee1db4bfc11f509e02c157ae5afbe6cda89cf694dd82aae367425bee8e029408063d013b315df 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-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 +AUX libxml2-2.9.0-thread-alloc.patch 1819 SHA256 ab0e44f05903ea70babeff17aaac09f344c9ce069264ecb4f27f9a6929c6af73 SHA512 80308f3f0087bcc0f08848e10c75b6333247f960190940e7a20575ce41d382fbd46350b0b8631a6c877f8edb06bcc930659c9e9e8ea71bc381f0a4287c22c935 WHIRLPOOL 24c4ba69c70ff949848795418cbfe59326c09a0b90126c67853fe7ee39854a824c56e092e7dacfe6a969eb4d451e6d2354c382c03e6d5c657eab07a50c14babe +AUX libxml2-2.9.0-thread-portability.patch 1385 SHA256 0839bbd63e3eaa083e91e34d3c8a04700d2dc1e8242117f27d941bd16cfd9e32 SHA512 e07933f7c6a2170c822652c2216f90a60f3334a67d6ffa01e3ed9958842b0634bb4c0bb32d410dcbf99f82b091d8398adb4cf3e0666efa62a29084e1f7111ff8 WHIRLPOOL 29301cdc15e4ac04f3f03bf15099a4c70492b6b77f1bd3461613ac465311aabdb2c4dbcdefce5a2494fbbec155079fb50bd1b86904759df3c92734265ea8e405 DIST libxml2-2.8.0-namespace-node-patches.tar.bz2 4929 SHA256 659f4d9fa8971346f545492474a95e655a84c47fe02978c418528b1ad3e23af2 SHA512 37e4b985ebce9fc69f1e58eccb3281d5bc1786e3d886b5a0649d47d2564a998f95dac3b6214bfc597c993828f9d1c43cd1edb60ded8058c376e4ce024036e06d WHIRLPOOL 4209036c5ae8cdf9ab75d248fbb92e042e343f6f806d2c3fffcfa24bfa97cb156d323bec8b867a8df929b1f19f84f922cfbbd23eda6c490447e545b26f4ccf95 DIST libxml2-2.8.0.tar.gz 4915203 SHA256 f2e2d0e322685193d1affec83b21dc05d599e17a7306d7b90de95bb5b9ac622a SHA512 e36ca96e5ba18f767346f1310c43d3c8c9a35c53252de18ad63ebce7f1f8df7ae40dd0719b2c6d78f5a64e61be154eec63a36ae738d29e93a9139c524a289ad4 WHIRLPOOL 3731ba80e6f6d6eba4d12d39ff564c81f9c26ff79df8c3f7bd264c5b27332732552186f5e9f3ff10661b1571cda0b75ac966fc65d0cbb3da9e73791f6b2369ad +DIST libxml2-2.9.0.tar.gz 5161069 SHA256 ad25d91958b7212abdc12b9611cfb4dc4e5cddb6d1e9891532f48aacee422b82 SHA512 b13268ea3725a8b534974ece33981b001324164e5687df94b0d15c77189070e2a5d9f08c1646e5492e70a607ca0adf00788772fcf300ac2d4a110e9bf57d4afe WHIRLPOOL 652e3b1e9b4241cd9bb7ab5f5c1261091378693057cb552b7f0517ebf7e48569abefde06707d4b2f56a08c13b693dcec76bdc360d7cd11937464bb4f87161116 +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 6801 SHA256 0c7e73704a96b1c57ff5c0b4a899a096854a82ce7420a2105f7db7b21fc36bfd SHA512 d09777ead3c64591f2ca23ec136902b3df30b7c55c9186d8f21037f8ad195ed8455f9bbf7f2a8f19347be1c34025177967be2d8db75b40af70c8dc7bf059217a WHIRLPOOL 5cfb0fb034154b503ec86b729e9f1745d9d67e0c113631ba7b3f2977a91112f9de9d5de05f8a4f5d72310c45ecc57dbc50d3c25f806b961745e1b6562b8485bb -MISC ChangeLog 50888 SHA256 7aa679ed085fcb85614748ac24cecd63e15242f508f26bdc1c7a638bbc157252 SHA512 39f76b6a198ea6cb5cf636600b1dbaa85916fa9215175f770efef3cd2098d34e2dedf21b90ccb24a181f2f53e74b52206d0eef8bc6a120ee76e45fa85fddad8d WHIRLPOOL d031758a2af45241e079bb0197d69d691d20b3beadee1f42280eafc44a61fe4c1c4c50d3749fb73e008d38607c1efc7bd21ea7a79802bb7f3b44433aa14aa66e +EBUILD libxml2-2.9.0.ebuild 6709 SHA256 bd8797034f93eec971d5ab022b04e322f885da1a2b0dbe6679ced1ec59cf59d5 SHA512 9bd9dd5edfcac75a7d270adb8b0a0b1bd8901a235581ace3bee69bf8119454ba08cb22881b11de9bd9946d27be53cd57087e25597c7379eb4e486814068cda50 WHIRLPOOL d79ec012de245dc17b349d112a0ce05400b70a3f4fbff79a2b8eec43ce0d0740abd9f53d55bfa8c480d12f19e9da644e0e0f5131112ff703247193af6203f9fd +MISC ChangeLog 51561 SHA256 30d3b59e3d07b8353687adeb5aca82a39fce214f80744c7db2e2bc6e8e4864f8 SHA512 d5720cc0aee4425c7ad486bf13c7c4ff436896569d9f1bc1911ae1ff80c25621bf428ed687e33407ceb359d3ba36ce5fa020ed5204bebf3b950ea72ce95df405 WHIRLPOOL 56571c5c5daa9bff51fef4b1b581b19a6bb8a92f3e42d600477b4c56f0188cc3a4f764de7cf1e77267668c72a4b6d35f56d08881719cb32abb39aa6e1be1a978 MISC metadata.xml 158 SHA256 3a7dbca0fdc557de69783e0663e2d76ddab129ea8a19b2d0ef6d3e5d1b947ce1 SHA512 7fbfbd2b3ed1b81867d55648509f778fdbe2091af53727b3426a3c7f453ae7e1663a99fdd2101508b8d6c85b3158459c93551b77a6a394f02d7e11cbc8a5ecf4 WHIRLPOOL 4bcd5662974877d42ebc4361b6eb412bfeea2af7144b436ce7ed152327d554afc321c376625ba0bb85a704b70d86e3c4882dff3573047acddd8ffccf655d4f7e -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) -iQEcBAEBCAAGBQJQs8lsAAoJEJ0WA1zPCt1htgQIALzInL2RVyyi8WBYJfndApcE -XQVBusgoOAqOHBdouM1WmgXQfQKl04msOO89Yq9Lv+klDevFoq0WelCmLvrElcky -BdV9ANd+xRMmtrsUFp8ruBmki2Fhv07o6ZlJejIToSzPQ6MX8TB28/aqrNEvF7H5 -74eDU578KCI6PIL/TBuXEBM5VlzJ4Ouhj7LINRLGPct3c4upGpt6W88uSJ2Wp6dW -YOEjAxy0GXFMbe2PkiloIOSF3OSI7WY75L1Tofut/1dhocgEGHOP7sy69gJ8vgLa -HXFZSXZKBc/UmD2lLvJt2CdsUbJ9inXlD2f1ldmNbpPP0CwTqoqJ8bKgpElZ4BQ= -=iLBr +iQEcBAEBCAAGBQJQtFMbAAoJEJ0WA1zPCt1hrxQH/AwJGxqHv1J0kK88HQiQzJ36 ++1fLrxSdodtuL/WmDQ1oW8i9ihjEvQlrrzrFuyXTpCBYV/Tt0gR87rdKL/Q+wgGv +jqmdQMYihxiXyY2gl816posTLlZkc2SRnJah5l8B/KxawBSlA/FH6LnL1TO7juSY +U7vY9mFvrgjB4RymsG12S2iP1mxYCGZ4uT/RnHLz+qmJuQmbCZRu2NTyxUzuTQsf +9dMuBxMOpuIEnXCIDWL0GWiY0cUhX0U2R2OonDgGK/y4nakuOp0OHz0S6BJYhsfz +SGCacgkiHT5x0c4cEf9dbts/F32echeJ0selpB5YB1vDEu0L/xDcnGs8LjEgjNs= +=O18X -----END PGP SIGNATURE----- diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-disable_static_modules.patch b/dev-libs/libxml2/files/libxml2-2.9.0-disable_static_modules.patch new file mode 100644 index 000000000000..a7a8215d861b --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.0-disable_static_modules.patch @@ -0,0 +1,21 @@ +diff --git a/python/Makefile.am b/python/Makefile.am +index 4a8b5d5..b976893 100644 +--- a/python/Makefile.am ++++ b/python/Makefile.am +@@ -19,13 +19,14 @@ if WITH_PYTHON + AM_CPPFLAGS = \ + -I$(top_builddir)/include \ + -I$(top_srcdir)/include \ +- -I$(PYTHON_INCLUDES) ++ -I$(PYTHON_INCLUDES) \ ++ -shared + + python_LTLIBRARIES = libxml2mod.la + + libxml2mod_la_SOURCES = libxml.c libxml_wrap.h libxml2-py.h libxml2-py.c types.c + libxml2mod_la_LIBADD = $(top_builddir)/libxml2.la $(CYGWIN_EXTRA_PYTHON_LIBADD) $(WIN32_EXTRA_PYTHON_LIBADD) $(PYTHON_LIBS) -lpython$(PYTHON_VERSION) +-libxml2mod_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) -module -avoid-version ++libxml2mod_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) -module -avoid-version -shared + + BUILT_SOURCES = libxml2-export.c libxml2-py.h libxml2-py.c + diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-large-file-parse.patch b/dev-libs/libxml2/files/libxml2-2.9.0-large-file-parse.patch new file mode 100644 index 000000000000..61de4d624a8f --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.0-large-file-parse.patch @@ -0,0 +1,56 @@ +From 153cf15905cf4ec080612ada6703757d10caba1e Mon Sep 17 00:00:00 2001 +From: Daniel Veillard <veillard@redhat.com> +Date: Fri, 26 Oct 2012 13:50:47 +0800 +Subject: [PATCH] Fix large parse of file from memory + +https://bugzilla.redhat.com/show_bug.cgi?id=862969 +The new code trying to detect excessive input lookup would +just get wrong sometimes in the case of very large file parsed +directly from memory. +--- + libxml.h | 2 ++ + parser.c | 1 + + xmlIO.c | 2 +- + 3 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/libxml.h b/libxml.h +index efe285b..7558b5f 100644 +--- a/libxml.h ++++ b/libxml.h +@@ -91,6 +91,8 @@ void __xmlGlobalInitMutexDestroy(void); + int __xmlRandom(void); + #endif + ++int xmlNop(void); ++ + #ifdef IN_LIBXML + #ifdef __GNUC__ + #ifdef PIC +diff --git a/parser.c b/parser.c +index 43f53d9..0d8d7f2 100644 +--- a/parser.c ++++ b/parser.c +@@ -2025,6 +2025,7 @@ static void xmlSHRINK (xmlParserCtxtPtr ctxt) { + static void xmlGROW (xmlParserCtxtPtr ctxt) { + if ((((ctxt->input->end - ctxt->input->cur) > XML_MAX_LOOKUP_LIMIT) || + ((ctxt->input->cur - ctxt->input->base) > XML_MAX_LOOKUP_LIMIT)) && ++ ((ctxt->input->buf) && (ctxt->input->buf->readcallback != xmlNop)) && + ((ctxt->options & XML_PARSE_HUGE) == 0)) { + xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR, "Huge input lookup"); + ctxt->instate = XML_PARSER_EOF; +diff --git a/xmlIO.c b/xmlIO.c +index f8f438b..44254e4 100644 +--- a/xmlIO.c ++++ b/xmlIO.c +@@ -800,7 +800,7 @@ xmlCheckFilename (const char *path) + return 1; + } + +-static int ++int + xmlNop(void) { + return(0); + } +-- +1.8.0 + diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-nsclean.patch b/dev-libs/libxml2/files/libxml2-2.9.0-nsclean.patch new file mode 100644 index 000000000000..994363fa9def --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.0-nsclean.patch @@ -0,0 +1,27 @@ +From 711b15d545713b3a34a51ce8163d1162533647c9 Mon Sep 17 00:00:00 2001 +From: Daniel Veillard <veillard@redhat.com> +Date: Thu, 25 Oct 2012 19:23:26 +0800 +Subject: [PATCH] Fix a bug in the nsclean option of the parser + +Raised as a side effect of: +https://bugzilla.gnome.org/show_bug.cgi?id=663844 +--- + parser.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/parser.c b/parser.c +index 19f1217..43f53d9 100644 +--- a/parser.c ++++ b/parser.c +@@ -1540,7 +1540,7 @@ nsPush(xmlParserCtxtPtr ctxt, const xmlChar *prefix, const xmlChar *URL) + { + if (ctxt->options & XML_PARSE_NSCLEAN) { + int i; +- for (i = 0;i < ctxt->nsNr;i += 2) { ++ for (i = ctxt->nsNr - 2;i >= 0;i -= 2) { + if (ctxt->nsTab[i] == prefix) { + /* in scope */ + if (ctxt->nsTab[i + 1] == URL) +-- +1.8.0 + diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-rand_seed.patch b/dev-libs/libxml2/files/libxml2-2.9.0-rand_seed.patch new file mode 100644 index 000000000000..7798a2c7b27e --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.0-rand_seed.patch @@ -0,0 +1,31 @@ +From e7715a5963afebfb027120db6914926ec9a7373d Mon Sep 17 00:00:00 2001 +From: Wouter Van Rooy <rooywo@vasco.com> +Date: Fri, 14 Sep 2012 14:39:42 +0800 +Subject: [PATCH] rand_seed should be static in dict.c + +For https://bugzilla.gnome.org/show_bug.cgi?id=683933 +rand_seed should be a static variable in dict.c + +We ran into a problem with another library that exports rand_seed as a +function. Combined with 2.7.8 this was not a problem but later versions +have this problem. +--- + dict.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/dict.c b/dict.c +index 9935a25..164c7f2 100644 +--- a/dict.c ++++ b/dict.c +@@ -143,7 +143,7 @@ static int xmlDictInitialized = 0; + /* + * Internal data for random function, protected by xmlDictMutex + */ +-unsigned int rand_seed = 0; ++static unsigned int rand_seed = 0; + #endif + #endif + +-- +1.8.0 + diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-streaming-validation.patch b/dev-libs/libxml2/files/libxml2-2.9.0-streaming-validation.patch new file mode 100644 index 000000000000..5fa2d6f0c157 --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.0-streaming-validation.patch @@ -0,0 +1,54 @@ +From 6c91aa384f48ff6d406553a6dd47fd556c1ef2e6 Mon Sep 17 00:00:00 2001 +From: Daniel Veillard <veillard@redhat.com> +Date: Thu, 25 Oct 2012 15:33:59 +0800 +Subject: [PATCH] Fix a regression in 2.9.0 breaking validation while + streaming + +https://bugzilla.gnome.org/show_bug.cgi?id=684774 +with help from Kjell Ahlstedt <kjell.ahlstedt@bredband.net> +--- + SAX2.c | 2 +- + parser.c | 7 +++++-- + 2 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/SAX2.c b/SAX2.c +index a24abc8..3eea39a 100644 +--- a/SAX2.c ++++ b/SAX2.c +@@ -2202,7 +2202,7 @@ xmlSAX2StartElementNs(void *ctx, + (ctxt->myDoc->intSubset->elements == NULL) && + (ctxt->myDoc->intSubset->attributes == NULL) && + (ctxt->myDoc->intSubset->entities == NULL)))) { +- xmlErrValid(ctxt, XML_ERR_NO_DTD, ++ xmlErrValid(ctxt, XML_DTD_NO_DTD, + "Validation failed: no DTD found !", NULL, NULL); + ctxt->validate = 0; + } +diff --git a/parser.c b/parser.c +index 28b0d80..19f1217 100644 +--- a/parser.c ++++ b/parser.c +@@ -11633,7 +11633,7 @@ xmlParseTryOrFinish(xmlParserCtxtPtr ctxt, int terminate) { + "PP: Parsing internal subset\n"); + #endif + ctxt->inSubset = 1; +- ctxt->progressive = 1; ++ ctxt->progressive = 0; + ctxt->checkIndex = 0; + xmlParseDocTypeDecl(ctxt); + if (RAW == '[') { +@@ -12219,7 +12219,10 @@ xmldecl_done: + } + ctxt->instate = XML_PARSER_EOF; + } +- return((xmlParserErrors) ctxt->errNo); ++ if (ctxt->wellFormed == 0) ++ return((xmlParserErrors) ctxt->errNo); ++ else ++ return(0); + } + + /************************************************************************ +-- +1.8.0 + diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-thread-alloc.patch b/dev-libs/libxml2/files/libxml2-2.9.0-thread-alloc.patch new file mode 100644 index 000000000000..2d0d5f788a4e --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.0-thread-alloc.patch @@ -0,0 +1,65 @@ +From 0ad948ede2b5060a144c72e4e27c38d24a272ef4 Mon Sep 17 00:00:00 2001 +From: Tim Starling <tstarling@wikimedia.org> +Date: Mon, 29 Oct 2012 13:41:55 +1100 +Subject: [PATCH] Define LIBXML_THREAD_ALLOC_ENABLED via xmlversion.h + +Otherwise, direct calls to xmlFree() etc. from the application will +use a different set of allocation functions to what was used to allocate +the memory internally. +--- + configure.in | 4 +++- + include/libxml/xmlversion.h.in | 9 +++++++++ + 2 files changed, 12 insertions(+), 1 deletion(-) + +diff --git a/configure.in b/configure.in +index 6da057c..245c033 100644 +--- a/configure.in ++++ b/configure.in +@@ -954,6 +954,7 @@ WITH_THREADS=0 + THREAD_CFLAGS="" + TEST_THREADS="" + THREADS_W32="" ++WITH_THREAD_ALLOC=0 + + if test "$with_threads" = "no" ; then + echo Disabling multithreaded support +@@ -1017,7 +1018,7 @@ else + fi + fi + if test "$with_thread_alloc" = "yes" -a "$WITH_THREADS" = "1" ; then +- THREAD_CFLAGS="$THREAD_CFLAGS -DLIBXML_THREAD_ALLOC_ENABLED" ++ WITH_THREAD_ALLOC=1 + fi + + AC_SUBST(THREAD_LIBS) +@@ -1025,6 +1026,7 @@ AC_SUBST(BASE_THREAD_LIBS) + AC_SUBST(WITH_THREADS) + AC_SUBST(THREAD_CFLAGS) + AC_SUBST(TEST_THREADS) ++AC_SUBST(WITH_THREAD_ALLOC) + AM_CONDITIONAL([THREADS_W32],[test -n "$THREADS_W32"]) + + dnl +diff --git a/include/libxml/xmlversion.h.in b/include/libxml/xmlversion.h.in +index c98e7ca..00a836f 100644 +--- a/include/libxml/xmlversion.h.in ++++ b/include/libxml/xmlversion.h.in +@@ -98,6 +98,15 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); + #endif + + /** ++ * LIBXML_THREAD_ALLOC_ENABLED: ++ * ++ * Whether the allocation hooks are per-thread ++ */ ++#if @WITH_THREAD_ALLOC@ ++#define LIBXML_THREAD_ALLOC_ENABLED ++#endif ++ ++/** + * LIBXML_TREE_ENABLED: + * + * Whether the DOM like tree manipulation API support is configured in +-- +1.8.0 + diff --git a/dev-libs/libxml2/files/libxml2-2.9.0-thread-portability.patch b/dev-libs/libxml2/files/libxml2-2.9.0-thread-portability.patch new file mode 100644 index 000000000000..a85d6129174d --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.0-thread-portability.patch @@ -0,0 +1,37 @@ +From 3f6cfbd1d38d0634a2ddcb9a0a13e1b5a2195a5e Mon Sep 17 00:00:00 2001 +From: Friedrich Haubensak <hsk@fli-leibniz.de> +Date: Wed, 12 Sep 2012 17:34:53 +0200 +Subject: [PATCH] Fix a thread portability problem + +cannot compile libxml2-2.9.0 using studio 12.1 compiler on solaris 10 + +I.M.O. structure initializer (as PTHREAD_ONCE_INIT) cannot be used in +a structure assignment anyway +--- + threads.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/threads.c b/threads.c +index f206149..7e85a26 100644 +--- a/threads.c ++++ b/threads.c +@@ -146,6 +146,7 @@ struct _xmlRMutex { + static pthread_key_t globalkey; + static pthread_t mainthread; + static pthread_once_t once_control = PTHREAD_ONCE_INIT; ++static pthread_once_t once_control_init = PTHREAD_ONCE_INIT; + static pthread_mutex_t global_init_lock = PTHREAD_MUTEX_INITIALIZER; + #elif defined HAVE_WIN32_THREADS + #if defined(HAVE_COMPILER_TLS) +@@ -915,7 +916,7 @@ xmlCleanupThreads(void) + #ifdef HAVE_PTHREAD_H + if ((libxml_is_threaded) && (pthread_key_delete != NULL)) + pthread_key_delete(globalkey); +- once_control = PTHREAD_ONCE_INIT; ++ once_control = once_control_init; + #elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL)) + if (globalkey != TLS_OUT_OF_INDEXES) { + xmlGlobalStateCleanupHelperParams *p; +-- +1.8.0 + diff --git a/dev-libs/libxml2/libxml2-2.9.0.ebuild b/dev-libs/libxml2/libxml2-2.9.0.ebuild new file mode 100644 index 000000000000..9d40169a35d5 --- /dev/null +++ b/dev-libs/libxml2/libxml2-2.9.0.ebuild @@ -0,0 +1,226 @@ +# 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.ebuild,v 1.1 2012/11/27 05:43:54 tetromino Exp $ + +EAPI="5" +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-*" + +inherit libtool flag-o-matic eutils python 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 ) + 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 + 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. + 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" + + eautoreconf +} + +src_configure() { + # 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). + + 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[@]}" +} + +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 + fi +} + +src_test() { + default + + if use python; then + testing() { + emake test + } + python_execute_function -s --source-dir python testing + fi +} + +src_install() { + emake DESTDIR="${D}" \ + EXAMPLES_DIR="${EPREFIX}"/usr/share/doc/${PF}/examples \ + install || die "Installation failed" + + # 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 + 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 + 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 +} + +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 + 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 +} + +pkg_postrm() { + if use python; then + python_mod_cleanup drv_libxml2.py libxml2.py + fi +} |