aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/ApiExtractor
diff options
context:
space:
mode:
Diffstat (limited to 'sources/shiboken2/ApiExtractor')
-rw-r--r--sources/shiboken2/ApiExtractor/CMakeLists.txt13
-rw-r--r--sources/shiboken2/ApiExtractor/xmlutils.cpp5
-rw-r--r--sources/shiboken2/ApiExtractor/xmlutils_qt.cpp102
3 files changed, 1 insertions, 119 deletions
diff --git a/sources/shiboken2/ApiExtractor/CMakeLists.txt b/sources/shiboken2/ApiExtractor/CMakeLists.txt
index 1e135a46e..ec6f0ff18 100644
--- a/sources/shiboken2/ApiExtractor/CMakeLists.txt
+++ b/sources/shiboken2/ApiExtractor/CMakeLists.txt
@@ -31,7 +31,6 @@ parser/enumvalue.cpp
xmlutils.cpp
)
-find_package(Qt${QT_MAJOR_VERSION}XmlPatterns 5.12)
find_package(Qt${QT_MAJOR_VERSION}Xml 5.12)
find_package(LibXml2 2.6.32)
find_package(LibXslt 1.1.19)
@@ -41,7 +40,7 @@ if (LIBXSLT_FOUND AND LIBXML2_FOUND)
set(HAS_LIBXSLT 1)
endif()
-if(NOT Qt${QT_MAJOR_VERSION}XmlPatterns_FOUND AND NOT HAS_LIBXSLT)
+if(NOT HAS_LIBXSLT)
set(DISABLE_DOCSTRINGS TRUE)
message(WARNING
"Documentation will not be built due to missing dependency (no Qt5XmlPatterns found).")
@@ -67,20 +66,10 @@ if (HAS_LIBXSLT)
PRIVATE ${LIBXSLT_LIBRARIES} ${LIBXML2_LIBRARIES})
endif()
-if (Qt${QT_MAJOR_VERSION}XmlPatterns_FOUND)
- target_compile_definitions(apiextractor PUBLIC HAVE_QTXMLPATTERNS)
- target_sources(apiextractor PRIVATE xmlutils_qt.cpp)
- target_link_libraries(apiextractor PUBLIC Qt${QT_MAJOR_VERSION}::Xml Qt${QT_MAJOR_VERSION}::XmlPatterns)
-endif()
-
if (NOT DISABLE_DOCSTRINGS)
target_sources(apiextractor PRIVATE docparser.cpp
doxygenparser.cpp
qtdocparser.cpp)
- if (NOT HAS_LIBXSLT)
- message(WARNING
- "libxslt and/or libxml not found, falling back to QtXmlPatterns (QTBUG-66925)")
- endif()
endif()
target_compile_definitions(apiextractor PRIVATE CMAKE_CXX_COMPILER="${CMAKE_CXX_COMPILER}")
diff --git a/sources/shiboken2/ApiExtractor/xmlutils.cpp b/sources/shiboken2/ApiExtractor/xmlutils.cpp
index a179412a7..6edca2fa5 100644
--- a/sources/shiboken2/ApiExtractor/xmlutils.cpp
+++ b/sources/shiboken2/ApiExtractor/xmlutils.cpp
@@ -28,7 +28,6 @@
#include "xmlutils.h"
-#include "xmlutils_qt.h"
#include "xmlutils_libxslt.h"
XQuery::XQuery() = default;
@@ -47,8 +46,6 @@ QSharedPointer<XQuery> XQuery::create(const QString &focus, QString *errorMessag
{
#if defined(HAVE_LIBXSLT)
return libXml_createXQuery(focus, errorMessage);
-#elif defined(HAVE_QTXMLPATTERNS)
- return qt_createXQuery(focus, errorMessage);
#else
*errorMessage = QLatin1String(__FUNCTION__) + QLatin1String(" is not implemented.");
return QSharedPointer<XQuery>();
@@ -59,8 +56,6 @@ QString xsl_transform(const QString &xml, const QString &xsl, QString *errorMess
{
#if defined(HAVE_LIBXSLT)
return libXslt_transform(xml, xsl, errorMessage);
-#elif defined(HAVE_QTXMLPATTERNS)
- return qt_xsl_transform(xml, xsl, errorMessage);
#else
*errorMessage = QLatin1String(__FUNCTION__) + QLatin1String(" is not implemented.");
return xml;
diff --git a/sources/shiboken2/ApiExtractor/xmlutils_qt.cpp b/sources/shiboken2/ApiExtractor/xmlutils_qt.cpp
deleted file mode 100644
index f703bc5f9..000000000
--- a/sources/shiboken2/ApiExtractor/xmlutils_qt.cpp
+++ /dev/null
@@ -1,102 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2019 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt for Python.
-**
-** $QT_BEGIN_LICENSE:GPL-EXCEPT$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "xmlutils.h"
-#include "xmlutils_qt.h"
-
-#include <QtXmlPatterns/QXmlQuery>
-
-#include <QtCore/QDir>
-#include <QtCore/QUrl>
-
-class QtXQuery : public XQuery
-{
-public:
- QtXQuery() = default;
-
- bool setFocus(const QString &fileName)
- { return m_xquery.setFocus(QUrl::fromLocalFile(fileName)); }
-
-protected:
- QString doEvaluate(const QString &xPathExpression, QString *errorMessage) override;
-
-private:
- QXmlQuery m_xquery;
-};
-
-QString QtXQuery::doEvaluate(const QString &xPathExpression, QString *errorMessage)
-{
- m_xquery.setQuery(xPathExpression);
- if (!m_xquery.isValid()) {
- *errorMessage = QLatin1String("QXmlQuery: Bad query: \"") + xPathExpression
- + QLatin1Char('"');
- return QString();
- }
-
- QString result;
- m_xquery.evaluateTo(&result);
- return result;
-}
-
-QSharedPointer<XQuery> qt_createXQuery(const QString &focus, QString *errorMessage)
-{
- QSharedPointer<QtXQuery> result(new QtXQuery);
- if (!result->setFocus(focus)) {
- *errorMessage = QLatin1String("QXmlQuery: Cannot set focus to ") + QDir::toNativeSeparators(focus);
- result.reset();
- }
- return std::move(result);
-}
-
-// XSLT transformation
-
-static const char xsltPrefix[] = R"(<?xml version="1.0" encoding="UTF-8"?>
- <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-)";
-
-QString qt_xsl_transform(const QString &xml, QString xsl, QString *errorMessage)
-{
- QXmlQuery query(QXmlQuery::XSLT20);
- if (!xsl.startsWith(QLatin1String("<?xml"))) {
- xsl.prepend(QLatin1String(xsltPrefix));
- xsl.append(QLatin1String("</xsl:stylesheet>"));
- }
- query.setFocus(xml);
- query.setQuery(xsl);
- if (!query.isValid()) {
- *errorMessage = QLatin1String("QXmlQuery: Invalid query \"") + xsl
- + QLatin1String("\".");
- return xml;
- }
- QString result;
- if (!query.evaluateTo(&result)) {
- *errorMessage = QLatin1String("QXmlQuery: evaluate() failed.");
- return xml;
- }
- return result.trimmed();
-}