diff options
author | Jakub Bogusz | 2017-11-24 18:44:18 (GMT) |
---|---|---|
committer | Jakub Bogusz | 2017-11-24 18:44:18 (GMT) |
commit | 5beb16868c67a6941cd7b6d6fc3231f0c639834d (patch) | |
tree | 06f456c94e28a8d8ccac3ae20e035488e859e1e7 | |
parent | 56965b8e22a6a30a68a0cb0f18fc42484df3b1e3 (diff) | |
download | xqilla-5beb16868c67a6941cd7b6d6fc3231f0c639834d.zip xqilla-5beb16868c67a6941cd7b6d6fc3231f0c639834d.tar.gz |
- added patches for compatibility with xerces 3.2auto/th/xqilla-2.3.3-2
- release 2
-rw-r--r-- | xqilla-xerces-1.patch | 14 | ||||
-rw-r--r-- | xqilla-xerces-2.patch | 41 | ||||
-rw-r--r-- | xqilla.spec | 10 |
3 files changed, 64 insertions, 1 deletions
diff --git a/xqilla-xerces-1.patch b/xqilla-xerces-1.patch new file mode 100644 index 0000000..27839ca --- /dev/null +++ b/xqilla-xerces-1.patch @@ -0,0 +1,14 @@ +--- src/dom-api/impl/XPathDocumentImpl.cpp.orig 2017-09-03 19:24:35 UTC ++++ src/dom-api/impl/XPathDocumentImpl.cpp +@@ -62,7 +62,11 @@ DOMNode *XPathDocumentImpl::insertBefore + if (thisNodeImpl->isReadOnly()) + throw DOMException(DOMException::NO_MODIFICATION_ALLOWED_ERR, 0, getMemoryManager()); + ++#if _XERCES_VERSION >= 30200 ++ DOMNode* thisNode = fParent.fContainingNode; ++#else + DOMNode* thisNode = castToNode(&fParent); ++#endif + if (newChild->getOwnerDocument() != thisNode) + throw DOMException(DOMException::WRONG_DOCUMENT_ERR, 0, getMemoryManager()); + diff --git a/xqilla-xerces-2.patch b/xqilla-xerces-2.patch new file mode 100644 index 0000000..041e925 --- /dev/null +++ b/xqilla-xerces-2.patch @@ -0,0 +1,41 @@ +--- src/dom-api/impl/XPathNamespaceImpl.cpp.orig 2017-09-03 20:26:37 UTC ++++ src/dom-api/impl/XPathNamespaceImpl.cpp +@@ -33,7 +33,11 @@ XERCES_CPP_NAMESPACE_USE; + + XPathNamespaceImpl::XPathNamespaceImpl(const XMLCh* const nsPrefix, + const XMLCh* const nsUri, DOMElement *owner, DOMDocument *docOwner) ++#if _XERCES_VERSION >= 30200 ++ : fNode(this, docOwner) ++#else + : fNode(docOwner) ++#endif + { + DOMNodeImpl *argImpl = castToNodeImpl(this); + +@@ -54,7 +58,13 @@ XPathNamespaceImpl::XPathNamespaceImpl(c + } + + XPathNamespaceImpl::XPathNamespaceImpl(const XPathNamespaceImpl &other) +- : fNode(other.fNode), uri(other.uri), prefix(other.prefix) ++#if _XERCES_VERSION >= 30200 ++ : fNode(this, other.fNode), ++#else ++ : fNode(other.fNode), ++ ++#endif ++ uri(other.uri), prefix(other.prefix) + { + } + +@@ -196,7 +206,11 @@ short XPathNamespaceImpl::com + + //if it is a custom node and bigger than us we must ask it for the order + if(otherType > DOMXPathNamespace::XPATH_NAMESPACE_NODE) { ++#if _XERCES_VERSION >= 30200 ++ DOMNodeImpl tmp(const_cast<XPathNamespaceImpl *>(this), 0); ++#else + DOMNodeImpl tmp(0); ++#endif + #if _XERCES_VERSION >= 30000 + return tmp.reverseTreeOrderBitPattern(other->compareDocumentPosition(this)); + #else diff --git a/xqilla.spec b/xqilla.spec index 7fcd03c..7c4cd2f 100644 --- a/xqilla.spec +++ b/xqilla.spec @@ -6,13 +6,18 @@ Summary: XQilla - C++ implementation of XQuery and XPath 2.0 based on Xerces-C Summary(pl.UTF-8): XQilla - implementacja C++ XQuary i XPath 2.0 oparta na bibliotece Xerces-C Name: xqilla Version: 2.3.3 -Release: 1 +Release: 2 License: Apache v2.0 Group: Libraries Source0: http://downloads.sourceforge.net/xqilla/XQilla-%{version}.tar.gz # Source0-md5: 8ece20348687b6529bb934c17067803c Patch0: %{name}-link.patch Patch1: %{name}-soname.patch +# https://sourceforge.net/p/xqilla/bugs/48/ +# https://sourceforge.net/p/xqilla/bugs/48/attachment/patch-src_dom-api_impl_XPathDocumentImpl.cpp +Patch2: %{name}-xerces-1.patch +# https://sourceforge.net/p/xqilla/bugs/48/attachment/patch-src_dom-api_impl_XPathNamespaceImpl.cpp +Patch3: %{name}-xerces-2.patch URL: http://xqilla.sourceforge.net/ BuildRequires: autoconf >= 2.59 BuildRequires: automake @@ -77,6 +82,8 @@ Dokumentacja API biblioteki XQilla. %setup -q -n XQilla-%{version} %patch0 -p1 %patch1 -p1 +%patch2 -p0 +%patch3 -p0 %build %{__libtoolize} @@ -92,6 +99,7 @@ Dokumentacja API biblioteki XQilla. %install rm -rf $RPM_BUILD_ROOT + %{__make} install \ DESTDIR=$RPM_BUILD_ROOT |