mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-16 08:40:06 +02:00
The previous patch for 2.8.0 didn't actually work at all, as HAIKU was not defined. Also moved the nested function to its own local function, as was running into weird crashes otherwise.
190 lines
5.7 KiB
Plaintext
190 lines
5.7 KiB
Plaintext
From 52a5d213a7c464b51c0259f855811ecda990e3c6 Mon Sep 17 00:00:00 2001
|
|
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
|
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 70720f3..c617e0d 100644
|
|
--- a/Makefile.am
|
|
+++ b/Makefile.am
|
|
@@ -1225,8 +1225,8 @@ cmake_DATA = libxml2-config.cmake
|
|
#
|
|
# Install the tests program sources as examples
|
|
#
|
|
-BASE_DIR=$(datadir)/doc
|
|
-DOC_MODULE=libxml2-$(VERSION)
|
|
+BASE_DIR=$(docdir)
|
|
+DOC_MODULE=
|
|
EXAMPLES_DIR=$(BASE_DIR)/$(DOC_MODULE)/examples
|
|
|
|
install-data-local:
|
|
diff --git a/configure.ac b/configure.ac
|
|
index 14ac0a8..e75dd93 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -853,24 +853,19 @@ if test "$with_python" != "no" ; then
|
|
fi
|
|
if test "$PYTHON_VERSION" != "" -a "$PYTHON_INCLUDES" = ""
|
|
then
|
|
- if test -r $with_python/include/python$PYTHON_VERSION/Python.h
|
|
+ if test -r $with_python/develop/headers/python$PYTHON_VERSION/Python.h
|
|
then
|
|
- PYTHON_INCLUDES=$with_python/include/python$PYTHON_VERSION
|
|
+ PYTHON_INCLUDES=$with_python/develop/headers/python$PYTHON_VERSION
|
|
else
|
|
- if test -r $prefix/include/python$PYTHON_VERSION/Python.h
|
|
+ if test -r $prefix/develop/headers/python$PYTHON_VERSION/Python.h
|
|
then
|
|
- PYTHON_INCLUDES=$prefix/include/python$PYTHON_VERSION
|
|
+ PYTHON_INCLUDES=$prefix/develop/headers/python$PYTHON_VERSION
|
|
else
|
|
- if test -r /usr/include/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
|
|
- else
|
|
- if test -r $with_python/include/Python.h
|
|
- then
|
|
- PYTHON_INCLUDES=$with_python/include
|
|
- else
|
|
- echo could not find python$PYTHON_VERSION/Python.h or $with_python/include/Python.h
|
|
- 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
|
|
fi
|
|
@@ -881,13 +876,13 @@ if test "$with_python" != "no" ; then
|
|
fi
|
|
if test "$PYTHON_VERSION" != "" -a "$PYTHON_SITE_PACKAGES" = ""
|
|
then
|
|
- if test -d $libdir/python$PYTHON_VERSION/site-packages
|
|
+ if test -d $libdir/python$PYTHON_VERSION/vendor-packages
|
|
then
|
|
- PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
|
|
+ PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/vendor-packages
|
|
else
|
|
- if test -d $with_python/lib/site-packages
|
|
+ if test -d $with_python/lib/vendor-packages
|
|
then
|
|
- PYTHON_SITE_PACKAGES=$with_python/lib/site-packages
|
|
+ PYTHON_SITE_PACKAGES=$with_python/lib/vendor-packages
|
|
else
|
|
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..81222d9 100644
|
|
--- a/python/tests/Makefile.am
|
|
+++ b/python/tests/Makefile.am
|
|
@@ -1,4 +1,4 @@
|
|
-exampledir = $(datadir)/doc/libxml2-python-$(LIBXML_VERSION)/examples
|
|
+exampledir = $(docdir)_python-$(LIBXML_VERSION)/examples
|
|
dist_example_DATA = $(PYTESTS) $(XMLS)
|
|
|
|
PYTESTS= \
|
|
diff --git a/xml2-config.in b/xml2-config.in
|
|
index 1957486..9c98a0e 100644
|
|
--- a/xml2-config.in
|
|
+++ b/xml2-config.in
|
|
@@ -40,8 +40,8 @@ while test $# -gt 0; do
|
|
case "$1" in
|
|
--prefix=*)
|
|
prefix=$optarg
|
|
- includedir=$prefix/include
|
|
- libdir=$prefix/lib
|
|
+ includedir=$prefix/develop/headers
|
|
+ libdir=$prefix/develop/lib
|
|
;;
|
|
|
|
--prefix)
|
|
@@ -50,7 +50,7 @@ while test $# -gt 0; do
|
|
|
|
--exec-prefix=*)
|
|
exec_prefix=$optarg
|
|
- libdir=$exec_prefix/lib
|
|
+ libdir=$exec_prefix/develop/lib
|
|
;;
|
|
|
|
--exec-prefix)
|
|
--
|
|
2.2.2
|
|
|
|
|
|
From e084f0448ce3d80d3800b65477514f1d917dd654 Mon Sep 17 00:00:00 2001
|
|
From: Jessica Hamilton <jessica.l.hamilton@gmail.com>
|
|
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..3f0f611 100644
|
|
--- a/catalog.c
|
|
+++ b/catalog.c
|
|
@@ -32,6 +32,9 @@
|
|
#include <stdlib.h>
|
|
#endif
|
|
#include <string.h>
|
|
+#ifdef __HAIKU__
|
|
+#include <ftw.h>
|
|
+#endif
|
|
#include <libxml/xmlmemory.h>
|
|
#include <libxml/hash.h>
|
|
#include <libxml/uri.h>
|
|
@@ -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
|
|
|