From 7c93c649bf98b088b45e67d3fe52e158188a1cfd Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Tue, 24 Nov 2015 18:15:44 +0000 Subject: [PATCH] libxml2: bump version. --- ...xml2-2.9.1.recipe => libxml2-2.9.3.recipe} | 90 +++++++------- ...-2.9.1.patchset => libxml2-2.9.3.patchset} | 116 +++++++++++++++--- 2 files changed, 138 insertions(+), 68 deletions(-) rename dev-libs/libxml2/{libxml2-2.9.1.recipe => libxml2-2.9.3.recipe} (78%) rename dev-libs/libxml2/patches/{libxml2-2.9.1.patchset => libxml2-2.9.3.patchset} (51%) diff --git a/dev-libs/libxml2/libxml2-2.9.1.recipe b/dev-libs/libxml2/libxml2-2.9.3.recipe similarity index 78% rename from dev-libs/libxml2/libxml2-2.9.1.recipe rename to dev-libs/libxml2/libxml2-2.9.3.recipe index a82fde22d..a6959c053 100644 --- a/dev-libs/libxml2/libxml2-2.9.1.recipe +++ b/dev-libs/libxml2/libxml2-2.9.3.recipe @@ -1,24 +1,23 @@ SUMMARY="The XML C parser and toolkit of Gnome" -DESCRIPTION=" -Libxml2 is the XML C parser and toolkit developed for the Gnome project \ -(but usable outside of the Gnome platform), it is free software available \ -under the MIT License. XML itself is a metalanguage to design markup \ -languages, i.e. text language where semantic and structure are added to \ -the content using extra "markup" information enclosed between angle \ -brackets. HTML is the most well-known markup language. Though the library \ -is written in C a variety of language bindings make it available in other \ -environments. -" +DESCRIPTION="Libxml2 is the XML C parser and toolkit developed for the Gnome \ +project, but is usable outside of the Gnome platform as well. +XML itself is a metalanguage to design markup languages, i.e. text language \ +where semantic and structure are added to the content using extra \"markup\" \ +information enclosed between angle brackets. HTML is the most well-known \ +markup language. +Though the library is written in C a variety of language bindings make it \ +available in other environments." HOMEPAGE="http://www.xmlsoft.org/" -LICENSE="MIT" COPYRIGHT="1998-2013 Daniel Veillard. All Rights Reserved." +LICENSE="MIT" +REVISION="1" SOURCE_URI="ftp://xmlsoft.org/libxml2/libxml2-$portVersion.tar.gz" -CHECKSUM_SHA256="fd3c64cb66f2c4ea27e934d275904d92cec494a8e8405613780cbc8a71680fdb" -REVISION="3" -ARCHITECTURES="!x86_gcc2 !x86 x86_64" -SECONDARY_ARCHITECTURES="!x86_gcc2 !x86" +CHECKSUM_SHA256="4de9e31f46b44d34871c22f54bfc54398ef124d6f7cafb1f4a5958fbcd3ba12d" +PATCHES="libxml2-$portVersion.patchset" + +ARCHITECTURES="x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="x86_gcc2 x86" -PATCHES="libxml2-2.9.1.patchset" # build the python module only for the primary architecture pythonModuleEnabled=false @@ -36,25 +35,44 @@ if [ -z "$secondaryArchSuffix" ]; then cmd:xmllint = $portVersion compat >= 2 " fi - REQUIRES=" haiku$secondaryArchSuffix lib:libz$secondaryArchSuffix " + +PROVIDES_devel=" + libxml2${secondaryArchSuffix}_devel = $portVersion + cmd:xml2_config$secondaryArchSuffix = $portVersion compat >= 2 + devel:libxml2$secondaryArchSuffix = $portVersion compat >= 2 + " +REQUIRES_devel=" + libxml2$secondaryArchSuffix == $portVersion base + devel:libz$secondaryArchSuffix + " + +if $pythonModuleEnabled; then + SUMMARY_python="The python module for libxml2" + PROVIDES_python=" + libxml2_python = $portVersion + " + REQUIRES_python=" + libxml2 == $portVersion base + cmd:python + " +fi + BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel devel:libz$secondaryArchSuffix " if $pythonModuleEnabled; then BUILD_REQUIRES="$BUILD_REQUIRES python >= 2.7 " - # Note: We don't use "cmd:python" here to avoid issues with the - # python search path. + # Note: We don't use "cmd:python" here to avoid issues with the + # python search path. fi - BUILD_PREREQUIRES=" - haiku${secondaryArchSuffix}_devel - haiku_devel lib:libicudata$secondaryArchSuffix cmd:aclocal cmd:autoconf @@ -64,6 +82,7 @@ BUILD_PREREQUIRES=" cmd:libtoolize cmd:make cmd:sed + cmd:pkg_config$secondaryArchSuffix " PATCH() @@ -80,7 +99,7 @@ BUILD() libtoolize --force --copy --install aclocal autoconf - automake + automake --add-missing withPython= if $pythonModuleEnabled; then @@ -151,28 +170,3 @@ TEST() { make tests } - -# ----- devel package --------------------------------------------------------- - -PROVIDES_devel=" - libxml2${secondaryArchSuffix}_devel = $portVersion - cmd:xml2_config$secondaryArchSuffix = $portVersion compat >= 2 - devel:libxml2$secondaryArchSuffix = $portVersion compat >= 2 - " -REQUIRES_devel=" - libxml2$secondaryArchSuffix == $portVersion base - devel:libz$secondaryArchSuffix - " - -# ----- python package ------------------------------------------------------- - -if $pythonModuleEnabled; then - SUMMARY_python="The python module for libxml2" - PROVIDES_python=" - libxml2_python = $portVersion - " - REQUIRES_python=" - libxml2 == $portVersion base - cmd:python - " -fi diff --git a/dev-libs/libxml2/patches/libxml2-2.9.1.patchset b/dev-libs/libxml2/patches/libxml2-2.9.3.patchset similarity index 51% rename from dev-libs/libxml2/patches/libxml2-2.9.1.patchset rename to dev-libs/libxml2/patches/libxml2-2.9.3.patchset index 244d7ba0d..81ed11a10 100644 --- a/dev-libs/libxml2/patches/libxml2-2.9.1.patchset +++ b/dev-libs/libxml2/patches/libxml2-2.9.3.patchset @@ -1,14 +1,14 @@ -From 52a5d213a7c464b51c0259f855811ecda990e3c6 Mon Sep 17 00:00:00 2001 +From 767d83b5c8d71625205469ceeb1b53e65fde0e37 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Wed, 1 Jan 2014 22:13:22 +0100 Subject: Port patches from libxml2-2.8.0. diff --git a/Makefile.am b/Makefile.am -index a4a9f87..40c06ee 100644 +index 70720f3..c617e0d 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -1221,8 +1221,8 @@ pkgconfig_DATA = libxml-2.0.pc +@@ -1225,8 +1225,8 @@ cmake_DATA = libxml2-config.cmake # # Install the tests program sources as examples # @@ -19,11 +19,11 @@ index a4a9f87..40c06ee 100644 EXAMPLES_DIR=$(BASE_DIR)/$(DOC_MODULE)/examples install-data-local: -diff --git a/configure.in b/configure.in -index d449b11..8db6662 100644 ---- a/configure.in -+++ b/configure.in -@@ -784,23 +784,23 @@ if test "$with_python" != "no" ; then +diff --git a/configure.ac b/configure.ac +index 0260281..4a6df6e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -856,24 +856,19 @@ if test "$with_python" != "no" ; then fi if test "$PYTHON_VERSION" != "" -a "$PYTHON_INCLUDES" = "" then @@ -40,23 +40,23 @@ index d449b11..8db6662 100644 + PYTHON_INCLUDES=$prefix/develop/headers/python$PYTHON_VERSION else - if test -r /usr/include/python$PYTHON_VERSION/Python.h -+ if test -r /usr/develop/headers/python$PYTHON_VERSION/Python.h ++ if test -r /boot/system/develop/headers/python$PYTHON_VERSION/Python.h then - PYTHON_INCLUDES=/usr/include/python$PYTHON_VERSION -+ PYTHON_INCLUDES=/usr/develop/headers/python$PYTHON_VERSION - else +- else - if test -r $with_python/include/Python.h -+ if test -r $with_python/develop/headers/Python.h - then +- then - PYTHON_INCLUDES=$with_python/include -+ PYTHON_INCLUDES=$with_python/develop/headers - else +- else - echo could not find python$PYTHON_VERSION/Python.h or $with_python/include/Python.h -+ echo could not find python$PYTHON_VERSION/Python.h or $with_python/develop/headers/Python.h - fi +- fi ++ PYTHON_INCLUDES=/boot/system/develop/headers/python$PYTHON_VERSION ++ else ++ echo could not find python$PYTHON_VERSION/Python.h or $with_python/develop/headers/Python.h fi fi -@@ -808,13 +808,13 @@ if test "$with_python" != "no" ; then + fi +@@ -884,13 +879,13 @@ if test "$with_python" != "no" ; then fi if test "$PYTHON_VERSION" != "" -a "$PYTHON_SITE_PACKAGES" = "" then @@ -75,7 +75,7 @@ index d449b11..8db6662 100644 PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_lib())"` fi diff --git a/python/tests/Makefile.am b/python/tests/Makefile.am -index 95ebead..64d9a4e 100644 +index 95ebead..81222d9 100644 --- a/python/tests/Makefile.am +++ b/python/tests/Makefile.am @@ -1,4 +1,4 @@ @@ -109,5 +109,81 @@ index 1957486..9c98a0e 100644 --exec-prefix) -- -1.8.3.4 +2.2.2 + + +From 18b0f85f4e8edaacf9b20e232dc96114c0b68fe0 Mon Sep 17 00:00:00 2001 +From: Jessica Hamilton +Date: Sat, 30 May 2015 11:38:15 +1200 +Subject: Haiku: search for catalogs in directories + + +diff --git a/catalog.c b/catalog.c +index 5773db3..1065298 100644 +--- a/catalog.c ++++ b/catalog.c +@@ -32,6 +32,9 @@ + #include + #endif + #include ++#ifdef __HAIKU__ ++#include ++#endif + #include + #include + #include +@@ -70,10 +73,10 @@ + #define XML_URN_PUBID "urn:publicid:" + #define XML_CATAL_BREAK ((xmlChar *) -1) + #ifndef XML_XML_DEFAULT_CATALOG +-#define XML_XML_DEFAULT_CATALOG "file:///etc/xml/catalog" ++#define XML_XML_DEFAULT_CATALOG "/boot/system/data/xml/catalog" + #endif + #ifndef XML_SGML_DEFAULT_CATALOG +-#define XML_SGML_DEFAULT_CATALOG "file:///etc/sgml/catalog" ++#define XML_SGML_DEFAULT_CATALOG "/boot/system/data/sgml/catalog" + #endif + + #if defined(_WIN32) && defined(_MSC_VER) +@@ -3074,6 +3077,21 @@ xmlCatalogIsEmpty(xmlCatalogPtr catal) { + * * + ************************************************************************/ + ++#ifdef __HAIKU__ ++static xmlCatalogEntryPtr *__haikuNextEntry; ++static int __haikuAddCatalog(const char* subpath, const struct stat* sb, int typeflag) ++{ ++ if (typeflag == FTW_F) { ++ *__haikuNextEntry = xmlNewCatalogEntry(XML_CATA_CATALOG, NULL, ++ NULL, BAD_CAST subpath, xmlCatalogDefaultPrefer, NULL); ++ if (*__haikuNextEntry != NULL) ++ __haikuNextEntry = &((*__haikuNextEntry)->next); ++ } ++ ++ return 0; ++} ++#endif ++ + /** + * xmlInitializeCatalogData: + * +@@ -3166,10 +3184,16 @@ xmlInitializeCatalog(void) { + cur++; + path = (char *) xmlStrndup((const xmlChar *)paths, cur - paths); + if (path != NULL) { ++#ifdef __HAIKU__ ++ __haikuNextEntry = nextent; ++ ftw(path, __haikuAddCatalog, 3); ++ nextent = __haikuNextEntry; ++#else + *nextent = xmlNewCatalogEntry(XML_CATA_CATALOG, NULL, + NULL, BAD_CAST path, xmlCatalogDefaultPrefer, NULL); + if (*nextent != NULL) + nextent = &((*nextent)->next); ++#endif + xmlFree(path); + } + } +-- +2.2.2