diff options
Diffstat (limited to 'source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch')
-rw-r--r-- | source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch | 351 |
1 files changed, 351 insertions, 0 deletions
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch new file mode 100644 index 00000000..63a74629 --- /dev/null +++ b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch @@ -0,0 +1,351 @@ +diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/fulltextsearch.pri qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/fulltextsearch.pri +--- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/fulltextsearch.pri 2014-04-10 20:37:12.000000000 +0200 ++++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/fulltextsearch.pri 2014-10-26 03:33:45.000000000 +0100 +@@ -1,125 +1,7 @@ +-DEFINES += _BUILD_FOR_QT_ LUCENE_DISABLE_MEMTRACKING +-win32:DEFINES += _CRT_SECURE_NO_DEPRECATE _MT +- +-CLUCENEDIR = ../../../../src/3rdparty/clucene/src/CLucene +- +-INCLUDEPATH += . .. \ +- $$CLUCENEDIR \ +- $$CLUCENEDIR/../ \ +- $$CLUCENEDIR/analysis \ +- $$CLUCENEDIR/analysis/standard \ +- $$CLUCENEDIR/config \ +- $$CLUCENEDIR/debug \ +- $$CLUCENEDIR/document \ +- $$CLUCENEDIR/index \ +- $$CLUCENEDIR/queryParser \ +- $$CLUCENEDIR/search \ +- $$CLUCENEDIR/store \ +- $$CLUCENEDIR/util +- +- +-SOURCES += $$CLUCENEDIR/StdHeader.cpp \ +- $$CLUCENEDIR/analysis/AnalysisHeader.cpp \ +- $$CLUCENEDIR/analysis/Analyzers.cpp \ +- $$CLUCENEDIR/config/gunichartables.cpp \ +- $$CLUCENEDIR/config/repl_lltot.cpp \ +- $$CLUCENEDIR/config/repl_tcscasecmp.cpp \ +- $$CLUCENEDIR/config/repl_tcslwr.cpp \ +- $$CLUCENEDIR/config/repl_tcstod.cpp \ +- $$CLUCENEDIR/config/repl_tcstoll.cpp \ +- $$CLUCENEDIR/config/repl_tprintf.cpp \ +- $$CLUCENEDIR/config/threads.cpp \ +- $$CLUCENEDIR/config/utf8.cpp \ +- $$CLUCENEDIR/debug/condition.cpp \ +- $$CLUCENEDIR/debug/error.cpp \ +- $$CLUCENEDIR/debug/memtracking.cpp \ +- $$CLUCENEDIR/document/DateField.cpp \ +- $$CLUCENEDIR/document/Document.cpp \ +- $$CLUCENEDIR/document/Field.cpp \ +- $$CLUCENEDIR/index/CompoundFile.cpp \ +- $$CLUCENEDIR/index/DocumentWriter.cpp \ +- $$CLUCENEDIR/index/FieldInfos.cpp \ +- $$CLUCENEDIR/index/FieldsReader.cpp \ +- $$CLUCENEDIR/index/FieldsWriter.cpp \ +- $$CLUCENEDIR/index/IndexModifier.cpp \ +- $$CLUCENEDIR/index/IndexReader.cpp \ +- $$CLUCENEDIR/index/IndexWriter.cpp \ +- $$CLUCENEDIR/index/MultiReader.cpp \ +- $$CLUCENEDIR/index/SegmentInfos.cpp \ +- $$CLUCENEDIR/index/SegmentMergeInfo.cpp \ +- $$CLUCENEDIR/index/SegmentMergeQueue.cpp \ +- $$CLUCENEDIR/index/SegmentMerger.cpp \ +- $$CLUCENEDIR/index/SegmentReader.cpp \ +- $$CLUCENEDIR/index/SegmentTermDocs.cpp \ +- $$CLUCENEDIR/index/SegmentTermEnum.cpp \ +- $$CLUCENEDIR/index/SegmentTermPositions.cpp \ +- $$CLUCENEDIR/index/SegmentTermVector.cpp \ +- $$CLUCENEDIR/index/Term.cpp \ +- $$CLUCENEDIR/index/TermInfo.cpp \ +- $$CLUCENEDIR/index/TermInfosReader.cpp \ +- $$CLUCENEDIR/index/TermInfosWriter.cpp \ +- $$CLUCENEDIR/index/TermVectorReader.cpp \ +- $$CLUCENEDIR/index/TermVectorWriter.cpp \ +- $$CLUCENEDIR/queryParser/Lexer.cpp \ +- $$CLUCENEDIR/queryParser/MultiFieldQueryParser.cpp \ +- $$CLUCENEDIR/queryParser/QueryParser.cpp \ +- $$CLUCENEDIR/queryParser/QueryParserBase.cpp \ +- $$CLUCENEDIR/queryParser/QueryToken.cpp \ +- $$CLUCENEDIR/queryParser/TokenList.cpp \ +- $$CLUCENEDIR/search/BooleanQuery.cpp \ +- $$CLUCENEDIR/search/BooleanScorer.cpp \ +- $$CLUCENEDIR/search/CachingWrapperFilter.cpp \ +- $$CLUCENEDIR/search/ChainedFilter.cpp \ +- $$CLUCENEDIR/search/ConjunctionScorer.cpp \ +- $$CLUCENEDIR/search/DateFilter.cpp \ +- $$CLUCENEDIR/search/ExactPhraseScorer.cpp \ +- $$CLUCENEDIR/search/Explanation.cpp \ +- $$CLUCENEDIR/search/FieldCache.cpp \ +- $$CLUCENEDIR/search/FieldCacheImpl.cpp \ +- $$CLUCENEDIR/search/FieldDocSortedHitQueue.cpp \ +- $$CLUCENEDIR/search/FieldSortedHitQueue.cpp \ +- $$CLUCENEDIR/search/FilteredTermEnum.cpp \ +- $$CLUCENEDIR/search/FuzzyQuery.cpp \ +- $$CLUCENEDIR/search/HitQueue.cpp \ +- $$CLUCENEDIR/search/Hits.cpp \ +- $$CLUCENEDIR/search/IndexSearcher.cpp \ +- $$CLUCENEDIR/search/MultiSearcher.cpp \ +- $$CLUCENEDIR/search/MultiTermQuery.cpp \ +- $$CLUCENEDIR/search/PhrasePositions.cpp \ +- $$CLUCENEDIR/search/PhraseQuery.cpp \ +- $$CLUCENEDIR/search/PhraseScorer.cpp \ +- $$CLUCENEDIR/search/PrefixQuery.cpp \ +- $$CLUCENEDIR/search/QueryFilter.cpp \ +- $$CLUCENEDIR/search/RangeFilter.cpp \ +- $$CLUCENEDIR/search/RangeQuery.cpp \ +- $$CLUCENEDIR/search/SearchHeader.cpp \ +- $$CLUCENEDIR/search/Similarity.cpp \ +- $$CLUCENEDIR/search/SloppyPhraseScorer.cpp \ +- $$CLUCENEDIR/search/Sort.cpp \ +- $$CLUCENEDIR/search/TermQuery.cpp \ +- $$CLUCENEDIR/search/TermScorer.cpp \ +- $$CLUCENEDIR/search/WildcardQuery.cpp \ +- $$CLUCENEDIR/search/WildcardTermEnum.cpp \ +- $$CLUCENEDIR/store/FSDirectory.cpp \ +- $$CLUCENEDIR/store/IndexInput.cpp \ +- $$CLUCENEDIR/store/IndexOutput.cpp \ +- $$CLUCENEDIR/store/Lock.cpp \ +- $$CLUCENEDIR/store/MMapInput.cpp \ +- $$CLUCENEDIR/store/RAMDirectory.cpp \ +- $$CLUCENEDIR/store/TransactionalRAMDirectory.cpp \ +- $$CLUCENEDIR/util/BitSet.cpp \ +- $$CLUCENEDIR/util/Equators.cpp \ +- $$CLUCENEDIR/util/FastCharStream.cpp \ +- $$CLUCENEDIR/util/fileinputstream.cpp \ +- $$CLUCENEDIR/util/Misc.cpp \ +- $$CLUCENEDIR/util/Reader.cpp \ +- $$CLUCENEDIR/util/StringBuffer.cpp \ +- $$CLUCENEDIR/util/StringIntern.cpp \ +- $$CLUCENEDIR/util/ThreadLocal.cpp \ +- $$CLUCENEDIR/analysis/standard/StandardAnalyzer.cpp \ +- $$CLUCENEDIR/analysis/standard/StandardFilter.cpp \ +- $$CLUCENEDIR/analysis/standard/StandardTokenizer.cpp + ++INCLUDEPATH += /usr/include/clucene09 $$[QT_INSTALL_LIBS]/clucene09 $$[QT_INSTALL_LIBS] ++LIBS += -L$$[QT_INSTALL_LIBS]/clucene09 -lclucene ++#DEFINES += LUCENE_ENABLE_REFCOUNT (must be set at CLucene build time!) + + #Header files + HEADERS += qclucene_global_p.h \ +diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene-config_p.h qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene-config_p.h +--- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene-config_p.h 2014-04-10 20:37:12.000000000 +0200 ++++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene-config_p.h 2014-10-26 02:28:54.000000000 +0100 +@@ -15,6 +15,8 @@ + ** + ****************************************************************************/ + ++#error This header must not be included when building against system CLucene. ++ + #ifndef QCLUCENE_CONFIG_P_H + #define QCLUCENE_CONFIG_P_H + +diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene_global_p.h qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene_global_p.h +--- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene_global_p.h 2014-04-10 20:37:12.000000000 +0200 ++++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene_global_p.h 2014-10-26 02:31:54.000000000 +0100 +@@ -29,20 +29,10 @@ + // We mean it. + // + +-#if !defined(_MSC_VER) +-# include "qclucene-config_p.h" +-#endif +- + #include <QtCore/QChar> + #include <QtCore/QString> + +-#if !defined(_MSC_VER) && !defined(__MINGW32__) && defined(_CL_HAVE_WCHAR_H) && defined(_CL_HAVE_WCHAR_T) +-# if !defined(TCHAR) +-# define TCHAR wchar_t +-# endif +-#else +-# include <windows.h> +-#endif ++#include <CLucene/StdHeader.h> + + QT_BEGIN_HEADER + +@@ -56,52 +46,6 @@ + # define QHELP_EXPORT Q_DECL_IMPORT + #endif + +-// +-// W A R N I N G +-// ------------- +-// +-// adjustments here, need to be done in +-// QTDIR/src/3rdparty/clucene/src/CLucene/StdHeader.h as well +-// +-#if defined(_LUCENE_DONTIMPLEMENT_NS_MACROS) +- +-#elif !defined(DISABLE_NAMESPACE) +-# ifdef QT_NAMESPACE +-# define CL_NS_DEF(sub) namespace QT_NAMESPACE { namespace lucene{ namespace sub{ +-# define CL_NS_DEF2(sub,sub2) namespace QT_NAMESPACE { namespace lucene{ namespace sub{ namespace sub2 { +- +-# define CL_NS_END }}} +-# define CL_NS_END2 }}}} +- +-# define CL_NS_USE(sub) using namespace QT_NAMESPACE::lucene::sub; +-# define CL_NS_USE2(sub,sub2) using namespace QT_NAMESPACE::lucene::sub::sub2; +- +-# define CL_NS(sub) QT_NAMESPACE::lucene::sub +-# define CL_NS2(sub,sub2) QT_NAMESPACE::lucene::sub::sub2 +-# else +-# define CL_NS_DEF(sub) namespace lucene{ namespace sub{ +-# define CL_NS_DEF2(sub,sub2) namespace lucene{ namespace sub{ namespace sub2 { +- +-# define CL_NS_END }} +-# define CL_NS_END2 }}} +- +-# define CL_NS_USE(sub) using namespace lucene::sub; +-# define CL_NS_USE2(sub,sub2) using namespace lucene::sub::sub2; +- +-# define CL_NS(sub) lucene::sub +-# define CL_NS2(sub,sub2) lucene::sub::sub2 +-# endif +-#else +-# define CL_NS_DEF(sub) +-# define CL_NS_DEF2(sub, sub2) +-# define CL_NS_END +-# define CL_NS_END2 +-# define CL_NS_USE(sub) +-# define CL_NS_USE2(sub,sub2) +-# define CL_NS(sub) +-# define CL_NS2(sub,sub2) +-#endif +- + namespace { + TCHAR* QStringToTChar(const QString &str) + { +diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexreader.cpp qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexreader.cpp +--- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexreader.cpp 2014-04-10 20:37:12.000000000 +0200 ++++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexreader.cpp 2014-10-26 02:48:02.000000000 +0100 +@@ -18,6 +18,8 @@ + #include "qindexreader_p.h" + #include "qclucene_global_p.h" + ++#include <QtCore/QDir> ++ + #include <CLucene.h> + #include <CLucene/index/IndexReader.h> + +@@ -59,13 +61,13 @@ + { + using namespace lucene::index; + +- return IndexReader::isLuceneFile(filename); ++ return IndexReader::isLuceneFile(filename.toLocal8Bit().constData()); + } + + bool QCLuceneIndexReader::indexExists(const QString &directory) + { + using namespace lucene::index; +- return IndexReader::indexExists(directory); ++ return IndexReader::indexExists(directory.toLocal8Bit().constData()); + } + + QCLuceneIndexReader QCLuceneIndexReader::open(const QString &path) +@@ -73,7 +75,7 @@ + using namespace lucene::index; + + QCLuceneIndexReader indexReader; +- indexReader.d->reader = IndexReader::open(path); ++ indexReader.d->reader = IndexReader::open(path.toLocal8Bit().constData()); + + return indexReader; + } +@@ -81,25 +83,29 @@ + void QCLuceneIndexReader::unlock(const QString &path) + { + using namespace lucene::index; +- IndexReader::unlock(path); ++ IndexReader::unlock(path.toLocal8Bit().constData()); + } + + bool QCLuceneIndexReader::isLocked(const QString &directory) + { ++ // The system CLucene fails here if the directory does not exist yet, unlike ++ // the bundled one. Work around that. ++ QDir::current().mkpath(directory); ++ + using namespace lucene::index; +- return IndexReader::isLocked(directory); ++ return IndexReader::isLocked(directory.toLocal8Bit().constData()); + } + + quint64 QCLuceneIndexReader::lastModified(const QString &directory) + { + using namespace lucene::index; +- return quint64(IndexReader::lastModified(directory)); ++ return quint64(IndexReader::lastModified(directory.toLocal8Bit().constData())); + } + + qint64 QCLuceneIndexReader::getCurrentVersion(const QString &directory) + { + using namespace lucene::index; +- return qint64(IndexReader::getCurrentVersion(directory)); ++ return qint64(IndexReader::getCurrentVersion(directory.toLocal8Bit().constData())); + } + + void QCLuceneIndexReader::close() +@@ -155,7 +161,7 @@ + void QCLuceneIndexReader::setNorm(qint32 doc, const QString &field, qreal value) + { + TCHAR *fieldName = QStringToTChar(field); +- d->reader->setNorm(int32_t(doc), fieldName, qreal(value)); ++ d->reader->setNorm(int32_t(doc), fieldName, (float_t)value); + delete [] fieldName; + } + +diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexwriter.cpp qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexwriter.cpp +--- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexwriter.cpp 2014-04-10 20:37:12.000000000 +0200 ++++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexwriter.cpp 2014-10-26 02:48:27.000000000 +0100 +@@ -18,6 +18,8 @@ + #include "qindexwriter_p.h" + #include "qindexreader_p.h" + ++#include <QtCore/QDir> ++ + #include <CLucene.h> + #include <CLucene/index/IndexWriter.h> + +@@ -50,7 +52,12 @@ + : d(new QCLuceneIndexWriterPrivate()) + , analyzer(analyzer) + { +- d->writer = new lucene::index::IndexWriter(path, ++ // The system CLucene cannot create directories recursively, so do it here. ++ // Ignore failure: If it failed, we will get an error from CLucene anyway. ++ if (create) ++ QDir::current().mkpath(path); ++ ++ d->writer = new lucene::index::IndexWriter(path.toLocal8Bit().constData(), + analyzer.d->analyzer, create, closeDir); + } + +diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qsearchable.cpp qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qsearchable.cpp +--- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qsearchable.cpp 2014-04-10 20:37:12.000000000 +0200 ++++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qsearchable.cpp 2014-10-26 02:48:44.000000000 +0100 +@@ -95,7 +95,7 @@ + : QCLuceneSearcher() + { + lucene::search::IndexSearcher *searcher = +- new lucene::search::IndexSearcher(path); ++ new lucene::search::IndexSearcher(path.toLocal8Bit().constData()); + + reader.d->reader = searcher->getReader(); + reader.d->deleteCLuceneIndexReader = false; +diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/lib.pro qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/lib.pro +--- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/lib.pro 2014-04-10 20:37:12.000000000 +0200 ++++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/lib.pro 2014-10-26 02:27:55.000000000 +0100 +@@ -43,6 +43,7 @@ + qhelp_global.cpp + + # access to clucene ++INCLUDEPATH += /usr/include/clucene09 $$[QT_INSTALL_LIBS]/clucene09 $$[QT_INSTALL_LIBS] + SOURCES += qhelpsearchindexwriter_clucene.cpp \ + qhelpsearchindexreader_clucene.cpp + HEADERS += qhelpenginecore.h \ |