diff --git a/src/tools/qpatch/bootstrap.pri b/src/tools/qpatch/bootstrap.pri new file mode 100644 index 0000000000000000000000000000000000000000..b3ee948487b3ea6af91d2cc11ec8dd152b4eec0c --- /dev/null +++ b/src/tools/qpatch/bootstrap.pri @@ -0,0 +1,64 @@ +CONFIG += console qtinc +CONFIG -= qt +build_all:!build_pass { + CONFIG -= build_all + CONFIG += release +} +CONFIG -= app_bundle + +DEFINES += \ + QT_BOOTSTRAPPED \ + QT_LITE_UNICODE \ + QT_TEXTCODEC \ + QT_NO_CAST_FROM_ASCII \ + QT_NO_CAST_TO_ASCII \ + QT_NO_CODECS \ + QT_NO_DATASTREAM \ + QT_NO_GEOM_VARIANT \ + QT_NO_LIBRARY \ + QT_NO_QOBJECT \ + QT_NO_STL \ + QT_NO_SYSTEMLOCALE \ + QT_NO_TEXTSTREAM \ + QT_NO_THREAD \ + QT_NO_UNICODETABLES \ + QT_NO_USING_NAMESPACE +win32:DEFINES += QT_NODLL + +INCLUDEPATH += $$QT_BUILD_TREE/include \ + $$QT_BUILD_TREE/include/QtCore \ + $$QT_BUILD_TREE/include/QtXml \ + $$QT_SOURCE_TREE/src/xml +DEPENDPATH += $$INCLUDEPATH \ + $$QT_SOURCE_TREE/src/corelib/global \ + $$QT_SOURCE_TREE/src/corelib/kernel \ + $$QT_SOURCE_TREE/src/corelib/tools \ + $$QT_SOURCE_TREE/src/corelib/io \ + $$QT_SOURCE_TREE/src/corelib/codecs \ + $$QT_SOURCE_TREE/src/xml + +hpux-acc*|hpuxi-acc* { + LIBS += $$QT_BUILD_TREE/src/tools/bootstrap/libbootstrap.a +} else { + contains(CONFIG, debug_and_release_target) { + CONFIG(debug, debug|release) { + LIBS+=-L$$QT_BUILD_TREE/src/tools/bootstrap/debug + } else { + LIBS+=-L$$QT_BUILD_TREE/src/tools/bootstrap/release + } + } else { + LIBS += -L$$QT_BUILD_TREE/src/tools/bootstrap + } + LIBS += -lbootstrap +} +!contains(QT_CONFIG, zlib):!contains(QT_CONFIG, no-zlib) { + unix:LIBS += -lz +# win32:LIBS += libz.lib +} +win32:LIBS += -luser32 + +mac { + CONFIG -= incremental + LIBS += -framework CoreServices +} + diff --git a/src/tools/qpatch/qpatch.cpp b/src/tools/qpatch/qpatch.cpp index c6f29c794fecd5d0b901251497c3df2be8b76a78..972b1cda9df84839783669694c4adf1109778114 100644 --- a/src/tools/qpatch/qpatch.cpp +++ b/src/tools/qpatch/qpatch.cpp @@ -1,21 +1,21 @@ -#include <QtCore> +//#include <QCoreApplication> +#include <QStringList> +#include <QFile> +#include <QVector> +#include <QTextStream> #include <iostream> int main(int argc, char *argv[]) { - QCoreApplication app(argc, argv); - QStringList args = app.arguments(); - args.removeFirst(); - - if (args.size() != 3) { + if (argc != 4) { std::cerr << "Usage: qpatch file.list oldQtDir newQtDir" << std::endl; return EXIT_FAILURE; } - const QString files = args.takeFirst(); - const QByteArray qtDirPath = QFile::encodeName(args.takeFirst()); - const QByteArray newQtPath = QFile::encodeName(args.takeFirst()); + const QByteArray files = argv[1]; + const QByteArray qtDirPath = argv[2]; + const QByteArray newQtPath = argv[3]; if (qtDirPath.size() < newQtPath.size()) { std::cerr << "qpatch: error: newQtDir needs to be less than " << qtDirPath.size() << " characters." @@ -23,7 +23,7 @@ int main(int argc, char *argv[]) return EXIT_FAILURE; } - QFile fn(files); + QFile fn(QFile::decodeName(files)); if (! fn.open(QFile::ReadOnly)) { std::cerr << "qpatch: error: file not found" << std::endl; return EXIT_FAILURE; @@ -55,7 +55,7 @@ int main(int argc, char *argv[]) } foreach (QString fileName, filesToPatch) { - QString prefix = newQtPath; + QString prefix = QFile::decodeName(newQtPath); if (! prefix.endsWith(QLatin1Char('/'))) prefix += QLatin1Char('/'); @@ -126,7 +126,7 @@ int main(int argc, char *argv[]) } foreach (QString fileName, textFilesToPatch) { - QString prefix = newQtPath; + QString prefix = QFile::decodeName(newQtPath); if (! prefix.endsWith(QLatin1Char('/'))) prefix += QLatin1Char('/'); diff --git a/src/tools/qpatch/qpatch.pro b/src/tools/qpatch/qpatch.pro index f1bcab21b559555b7c5c1e52745fb09d09fb5900..c59c3dc91a918131bfa89bdcc27ec8e3a0978378 100644 --- a/src/tools/qpatch/qpatch.pro +++ b/src/tools/qpatch/qpatch.pro @@ -4,3 +4,11 @@ CONFIG += console macx:CONFIG -= app_bundle SOURCES += qpatch.cpp +QT_BUILD_TREE=$$fromfile($$(QTDIR)/.qmake.cache,QT_BUILD_TREE) +QT_SOURCE_TREE=$$fromfile($$(QTDIR)/.qmake.cache,QT_SOURCE_TREE) + +DEFINES += QT_UIC +include(bootstrap.pri) + +message($$QT_BUILD_TREE) +