Diff
Modified: trunk/Tools/ChangeLog (128460 => 128461)
--- trunk/Tools/ChangeLog 2012-09-13 14:59:22 UTC (rev 128460)
+++ trunk/Tools/ChangeLog 2012-09-13 15:03:24 UTC (rev 128461)
@@ -1,3 +1,25 @@
+2012-09-13 Simon Hausmann <[email protected]>
+
+ [Qt] Fix build of Qt WTR/MiniBrowser with MSVC and nmake
+ https://bugs.webkit.org/show_bug.cgi?id=96633
+
+ Reviewed by Csaba Osztrogonác.
+
+ WTR and MiniBrowser both have DRT in their include path (for the shared font stuff). Batch
+ builds with MSVC and nmake result in nmake picking up main.cpp from the wrong directory.
+ It's the usual problem and the usual solution is to rename one of the conflicting files.
+ This patch chooses to rename DRT instead of WTR and MBR.
+
+ Fixed include order at the same time to match style guide.
+
+ * DumpRenderTree/qt/DumpRenderTree.pro:
+ * DumpRenderTree/qt/DumpRenderTreeMain.cpp: Renamed from Tools/DumpRenderTree/qt/main.cpp.
+ (messageHandler):
+ (isOption):
+ (takeOptionValue):
+ (printUsage):
+ (main):
+
2012-09-13 Kenneth Rohde Christiansen <[email protected]>
The Script run-launcher should support -2 in combination with --efl
Modified: trunk/Tools/DumpRenderTree/qt/DumpRenderTree.pro (128460 => 128461)
--- trunk/Tools/DumpRenderTree/qt/DumpRenderTree.pro 2012-09-13 14:59:22 UTC (rev 128460)
+++ trunk/Tools/DumpRenderTree/qt/DumpRenderTree.pro 2012-09-13 15:03:24 UTC (rev 128461)
@@ -47,7 +47,7 @@
GCControllerQt.cpp \
QtInitializeTestFonts.cpp \
testplugin.cpp \
- main.cpp
+ DumpRenderTreeMain.cpp
wince*: {
INCLUDEPATH += $$QT.core.sources/../3rdparty/ce-compat $$WCECOMPAT/include
Copied: trunk/Tools/DumpRenderTree/qt/DumpRenderTreeMain.cpp (from rev 128460, trunk/Tools/DumpRenderTree/qt/main.cpp) (0 => 128461)
--- trunk/Tools/DumpRenderTree/qt/DumpRenderTreeMain.cpp (rev 0)
+++ trunk/Tools/DumpRenderTree/qt/DumpRenderTreeMain.cpp 2012-09-13 15:03:24 UTC (rev 128461)
@@ -0,0 +1,196 @@
+/*
+ * Copyright (C) 2006 Nikolas Zimmermann <[email protected]>
+ * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "DumpRenderTreeQt.h"
+
+#include "QtInitializeTestFonts.h"
+
+#include <qapplication.h>
+#include <qdebug.h>
+#include <qdir.h>
+#include <qfont.h>
+#include <qstringlist.h>
+#include <qtimer.h>
+#include <qurl.h>
+#include <qwebdatabase.h>
+#include <qwindowsstyle.h>
+
+#include <wtf/AlwaysInline.h>
+#include <wtf/ExportMacros.h>
+
+#ifdef Q_WS_X11
+#include <qx11info_x11.h>
+#endif
+
+#ifdef Q_OS_WIN
+#include <fcntl.h>
+#include <io.h>
+#endif
+
+#include <limits.h>
+
+#include <wtf/Assertions.h>
+
+void messageHandler(QtMsgType type, const char *message)
+{
+ if (type == QtCriticalMsg) {
+ fprintf(stderr, "%s\n", message);
+ return;
+ }
+ // do nothing
+}
+
+// We only support -v or --stdout or --stderr or -, all the others will be
+// pass as test case name (even -abc.html is a valid test case name)
+bool isOption(const QString& str)
+{
+ return str == QString("-v")
+ || str == QString("--stdout") || str == QString("--stderr")
+ || str == QString("--timeout") || str == QString("--no-timeout")
+ || str == QString("-");
+}
+
+QString takeOptionValue(QStringList& arguments, int index)
+{
+ QString result;
+
+ if (index + 1 < arguments.count() && !isOption(arguments.at(index + 1)))
+ result = arguments.takeAt(index + 1);
+ arguments.removeAt(index);
+
+ return result;
+}
+
+void printUsage()
+{
+ fprintf(stderr, "Usage: DumpRenderTree [-v] [--stdout output_filename] [-stderr error_filename] [--no-timeout] [--timeout timeout_MS] filename [filename2..n]\n");
+ fprintf(stderr, "Or folder containing test files: DumpRenderTree [-v] dirpath\n");
+ fflush(stderr);
+}
+
+int main(int argc, char* argv[])
+{
+#ifdef Q_OS_WIN
+ _setmode(1, _O_BINARY);
+ _setmode(2, _O_BINARY);
+#endif
+
+ // Suppress debug output from Qt if not started with -v
+ bool suppressQtDebugOutput = true;
+ for (int i = 1; i < argc; ++i) {
+ if (!qstrcmp(argv[i], "-v")) {
+ suppressQtDebugOutput = false;
+ break;
+ }
+ }
+
+ // Has to be done before QApplication is constructed in case
+ // QApplication itself produces debug output.
+ if (suppressQtDebugOutput)
+ qInstallMsgHandler(messageHandler);
+
+ WebKit::initializeTestFonts();
+
+ QApplication::setStyle(new QWindowsStyle);
+ QApplication::setDesktopSettingsAware(false);
+
+ QApplication app(argc, argv);
+ app.setQuitOnLastWindowClosed(false);
+
+ QCoreApplication::setAttribute(Qt::AA_Use96Dpi, true);
+
+ WTFInstallReportBacktraceOnCrashHook();
+
+ QStringList args = app.arguments();
+ if (args.count() < (!suppressQtDebugOutput ? 3 : 2)) {
+ printUsage();
+ exit(1);
+ }
+
+ // Remove the first arguments, it is application name itself
+ args.removeAt(0);
+
+ WebCore::DumpRenderTree dumper;
+
+ int index = args.indexOf(QLatin1String("--stdout"));
+ if (index != -1) {
+ QString fileName = takeOptionValue(args, index);
+ dumper.setRedirectOutputFileName(fileName);
+ if (fileName.isEmpty() || !freopen(qPrintable(fileName), "w", stdout)) {
+ fprintf(stderr, "STDOUT redirection failed.");
+ exit(1);
+ }
+ }
+ index = args.indexOf(QLatin1String("--stderr"));
+ if (index != -1) {
+ QString fileName = takeOptionValue(args, index);
+ dumper.setRedirectErrorFileName(fileName);
+ if (!freopen(qPrintable(fileName), "w", stderr)) {
+ fprintf(stderr, "STDERR redirection failed.");
+ exit(1);
+ }
+ }
+ QWebDatabase::removeAllDatabases();
+
+ index = args.indexOf(QLatin1String("--timeout"));
+ if (index != -1) {
+ int timeout = takeOptionValue(args, index).toInt();
+ dumper.setTimeout(timeout);
+ }
+
+ index = args.indexOf(QLatin1String("--no-timeout"));
+ if (index != -1) {
+ dumper.setShouldTimeout(false);
+ args.removeAt(index);
+ }
+
+ index = args.indexOf(QLatin1String("-"));
+ if (index != -1) {
+ args.removeAt(index);
+
+ // Continue waiting in STDIN for more test case after process one test case
+ QObject::connect(&dumper, SIGNAL(ready()), &dumper, SLOT(readLine()), Qt::QueuedConnection);
+
+ // Read and only read the first test case, ignore the others
+ if (args.size() > 0) {
+ // Process the argument first
+ dumper.processLine(args[0]);
+ } else
+ QTimer::singleShot(0, &dumper, SLOT(readLine()));
+ } else {
+ // Go into standalone mode
+ // Standalone mode need at least one test case
+ if (args.count() < 1) {
+ printUsage();
+ exit(1);
+ }
+ dumper.processArgsLine(args);
+ }
+ return app.exec();
+}
Deleted: trunk/Tools/DumpRenderTree/qt/main.cpp (128460 => 128461)
--- trunk/Tools/DumpRenderTree/qt/main.cpp 2012-09-13 14:59:22 UTC (rev 128460)
+++ trunk/Tools/DumpRenderTree/qt/main.cpp 2012-09-13 15:03:24 UTC (rev 128461)
@@ -1,196 +0,0 @@
-/*
- * Copyright (C) 2006 Nikolas Zimmermann <[email protected]>
- * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "DumpRenderTreeQt.h"
-
-#include "QtInitializeTestFonts.h"
-
-#include <wtf/AlwaysInline.h>
-
-#include <qstringlist.h>
-#include <qapplication.h>
-#include <qurl.h>
-#include <qdir.h>
-#include <qdebug.h>
-#include <qfont.h>
-#include <qwebdatabase.h>
-#include <qtimer.h>
-#include <qwindowsstyle.h>
-
-#ifdef Q_WS_X11
-#include <qx11info_x11.h>
-#endif
-
-#ifdef Q_OS_WIN
-#include <io.h>
-#include <fcntl.h>
-#endif
-
-#include <limits.h>
-
-#include <wtf/ExportMacros.h>
-#include <wtf/Assertions.h>
-
-void messageHandler(QtMsgType type, const char *message)
-{
- if (type == QtCriticalMsg) {
- fprintf(stderr, "%s\n", message);
- return;
- }
- // do nothing
-}
-
-// We only support -v or --stdout or --stderr or -, all the others will be
-// pass as test case name (even -abc.html is a valid test case name)
-bool isOption(const QString& str)
-{
- return str == QString("-v")
- || str == QString("--stdout") || str == QString("--stderr")
- || str == QString("--timeout") || str == QString("--no-timeout")
- || str == QString("-");
-}
-
-QString takeOptionValue(QStringList& arguments, int index)
-{
- QString result;
-
- if (index + 1 < arguments.count() && !isOption(arguments.at(index + 1)))
- result = arguments.takeAt(index + 1);
- arguments.removeAt(index);
-
- return result;
-}
-
-void printUsage()
-{
- fprintf(stderr, "Usage: DumpRenderTree [-v] [--stdout output_filename] [-stderr error_filename] [--no-timeout] [--timeout timeout_MS] filename [filename2..n]\n");
- fprintf(stderr, "Or folder containing test files: DumpRenderTree [-v] dirpath\n");
- fflush(stderr);
-}
-
-int main(int argc, char* argv[])
-{
-#ifdef Q_OS_WIN
- _setmode(1, _O_BINARY);
- _setmode(2, _O_BINARY);
-#endif
-
- // Suppress debug output from Qt if not started with -v
- bool suppressQtDebugOutput = true;
- for (int i = 1; i < argc; ++i) {
- if (!qstrcmp(argv[i], "-v")) {
- suppressQtDebugOutput = false;
- break;
- }
- }
-
- // Has to be done before QApplication is constructed in case
- // QApplication itself produces debug output.
- if (suppressQtDebugOutput)
- qInstallMsgHandler(messageHandler);
-
- WebKit::initializeTestFonts();
-
- QApplication::setStyle(new QWindowsStyle);
- QApplication::setDesktopSettingsAware(false);
-
- QApplication app(argc, argv);
- app.setQuitOnLastWindowClosed(false);
-
- QCoreApplication::setAttribute(Qt::AA_Use96Dpi, true);
-
- WTFInstallReportBacktraceOnCrashHook();
-
- QStringList args = app.arguments();
- if (args.count() < (!suppressQtDebugOutput ? 3 : 2)) {
- printUsage();
- exit(1);
- }
-
- // Remove the first arguments, it is application name itself
- args.removeAt(0);
-
- WebCore::DumpRenderTree dumper;
-
- int index = args.indexOf(QLatin1String("--stdout"));
- if (index != -1) {
- QString fileName = takeOptionValue(args, index);
- dumper.setRedirectOutputFileName(fileName);
- if (fileName.isEmpty() || !freopen(qPrintable(fileName), "w", stdout)) {
- fprintf(stderr, "STDOUT redirection failed.");
- exit(1);
- }
- }
- index = args.indexOf(QLatin1String("--stderr"));
- if (index != -1) {
- QString fileName = takeOptionValue(args, index);
- dumper.setRedirectErrorFileName(fileName);
- if (!freopen(qPrintable(fileName), "w", stderr)) {
- fprintf(stderr, "STDERR redirection failed.");
- exit(1);
- }
- }
- QWebDatabase::removeAllDatabases();
-
- index = args.indexOf(QLatin1String("--timeout"));
- if (index != -1) {
- int timeout = takeOptionValue(args, index).toInt();
- dumper.setTimeout(timeout);
- }
-
- index = args.indexOf(QLatin1String("--no-timeout"));
- if (index != -1) {
- dumper.setShouldTimeout(false);
- args.removeAt(index);
- }
-
- index = args.indexOf(QLatin1String("-"));
- if (index != -1) {
- args.removeAt(index);
-
- // Continue waiting in STDIN for more test case after process one test case
- QObject::connect(&dumper, SIGNAL(ready()), &dumper, SLOT(readLine()), Qt::QueuedConnection);
-
- // Read and only read the first test case, ignore the others
- if (args.size() > 0) {
- // Process the argument first
- dumper.processLine(args[0]);
- } else
- QTimer::singleShot(0, &dumper, SLOT(readLine()));
- } else {
- // Go into standalone mode
- // Standalone mode need at least one test case
- if (args.count() < 1) {
- printUsage();
- exit(1);
- }
- dumper.processArgsLine(args);
- }
- return app.exec();
-}