From 56a7984a90992371cd7f54a061dcc791e6f22cfd Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Thu, 26 Mar 2020 21:10:20 +0100 Subject: [PATCH] Remove QRegExp from the bootstrap library All it's uses have been replaces with QRegularExpression. Change-Id: I5bcdfdd8a39dad6d1288f18f1b24d2eea9e028d2 Reviewed-by: Simon Hausmann --- qmake/generators/makefile.cpp | 1 + src/corelib/global/qconfig-bootstrapped.h | 4 ++++ src/corelib/io/qdiriterator.cpp | 28 +++-------------------- src/tools/bootstrap/.prev_CMakeLists.txt | 1 - src/tools/bootstrap/CMakeLists.txt | 1 - src/tools/bootstrap/bootstrap.pro | 1 - 6 files changed, 8 insertions(+), 28 deletions(-) diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 3ccd53f0a23..1622a4b8565 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -41,6 +41,7 @@ #include #include #include +#include #if defined(Q_OS_UNIX) #include diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h index c943acb6025..349dfeea1c8 100644 --- a/src/corelib/global/qconfig-bootstrapped.h +++ b/src/corelib/global/qconfig-bootstrapped.h @@ -66,6 +66,10 @@ #define QT_NO_USING_NAMESPACE #define QT_NO_DEPRECATED +#ifndef QT_BUILD_QMAKE +#define QT_NO_REGEXP +#endif + // Keep feature-test macros in alphabetic order by feature name: #define QT_FEATURE_alloca 1 #define QT_FEATURE_alloca_h -1 diff --git a/src/corelib/io/qdiriterator.cpp b/src/corelib/io/qdiriterator.cpp index 7128435aa45..d77829e9f3a 100644 --- a/src/corelib/io/qdiriterator.cpp +++ b/src/corelib/io/qdiriterator.cpp @@ -93,9 +93,6 @@ #include "qdir_p.h" #include "qabstractfileengine_p.h" -#ifdef QT_BOOTSTRAPPED -#include -#endif #include #include #include @@ -144,10 +141,7 @@ public: const QDir::Filters filters; const QDirIterator::IteratorFlags iteratorFlags; -#if defined(QT_BOOTSTRAPPED) - // ### Qt6: Get rid of this once we don't bootstrap qmake anymore - QVector nameRegExps; -#elif QT_CONFIG(regularexpression) +#if QT_CONFIG(regularexpression) QVector nameRegExps; #endif @@ -173,15 +167,7 @@ QDirIteratorPrivate::QDirIteratorPrivate(const QFileSystemEntry &entry, const QS , filters(QDir::NoFilter == filters ? QDir::AllEntries : filters) , iteratorFlags(flags) { -#if defined(QT_BOOTSTRAPPED) - nameRegExps.reserve(nameFilters.size()); - for (const auto &filter : nameFilters) { - nameRegExps.append( - QRegExp(filter, - (filters & QDir::CaseSensitive) ? Qt::CaseSensitive : Qt::CaseInsensitive, - QRegExp::Wildcard)); - } -#elif QT_CONFIG(regularexpression) +#if QT_CONFIG(regularexpression) nameRegExps.reserve(nameFilters.size()); for (const auto &filter : nameFilters) { QString re = QRegularExpression::wildcardToRegularExpression(filter); @@ -352,23 +338,15 @@ bool QDirIteratorPrivate::matchesFilters(const QString &fileName, const QFileInf return false; // name filter -#if QT_CONFIG(regularexpression) || defined(QT_BOOTSTRAPPED) +#if QT_CONFIG(regularexpression) // Pass all entries through name filters, except dirs if the AllDirs if (!nameFilters.isEmpty() && !((filters & QDir::AllDirs) && fi.isDir())) { bool matched = false; for (const auto &re : nameRegExps) { -#if defined(QT_BOOTSTRAPPED) - QRegExp copy = re; - if (copy.exactMatch(fileName)) { - matched = true; - break; - } -#else if (re.match(fileName).hasMatch()) { matched = true; break; } -#endif } if (!matched) return false; diff --git a/src/tools/bootstrap/.prev_CMakeLists.txt b/src/tools/bootstrap/.prev_CMakeLists.txt index 90932f72650..ae7773a1654 100644 --- a/src/tools/bootstrap/.prev_CMakeLists.txt +++ b/src/tools/bootstrap/.prev_CMakeLists.txt @@ -103,7 +103,6 @@ qt_add_module(Bootstrap ../../corelib/text/qbytearraymatcher.cpp ../../corelib/text/qlocale.cpp ../../corelib/text/qlocale_tools.cpp - ../../corelib/text/qregexp.cpp ../../corelib/text/qregularexpression.cpp ../../corelib/text/qstring.cpp ../../corelib/text/qstring_compat.cpp diff --git a/src/tools/bootstrap/CMakeLists.txt b/src/tools/bootstrap/CMakeLists.txt index 65fb73da979..68c1fabe6d0 100644 --- a/src/tools/bootstrap/CMakeLists.txt +++ b/src/tools/bootstrap/CMakeLists.txt @@ -104,7 +104,6 @@ qt_extend_target(Bootstrap ../../corelib/text/qbytearraymatcher.cpp ../../corelib/text/qlocale.cpp ../../corelib/text/qlocale_tools.cpp - ../../corelib/text/qregexp.cpp ../../corelib/text/qregularexpression.cpp ../../corelib/text/qstring.cpp ../../corelib/text/qstring_compat.cpp diff --git a/src/tools/bootstrap/bootstrap.pro b/src/tools/bootstrap/bootstrap.pro index eb267fc7bb1..a3ecd3ee5fb 100644 --- a/src/tools/bootstrap/bootstrap.pro +++ b/src/tools/bootstrap/bootstrap.pro @@ -90,7 +90,6 @@ SOURCES += \ ../../corelib/text/qbytearraymatcher.cpp \ ../../corelib/text/qlocale.cpp \ ../../corelib/text/qlocale_tools.cpp \ - ../../corelib/text/qregexp.cpp \ ../../corelib/text/qregularexpression.cpp \ ../../corelib/text/qstring.cpp \ ../../corelib/text/qstringbuilder.cpp \