diff options
author | Konstantin Tokarev <annulen@yandex.ru> | 2016-11-22 08:08:05 +0300 |
---|---|---|
committer | Konstantin Tokarev <annulen@yandex.ru> | 2017-02-02 12:31:16 +0000 |
commit | 1c8f056531c65706b85c44c2db657ea891be868d (patch) | |
tree | 29c2cd2bf06230e9e76945990ef9c0e70cfb483e | |
parent | 8f2cfe80a5fb6632b4bbb9181db28f0505058128 (diff) | |
download | qtwebkit-1c8f056531c65706b85c44c2db657ea891be868d.tar.gz |
Imported WebKit commit a16099e901e36e6d298dd30c0694a2130052d70e
Change-Id: I484731400983d1d964bdcf4afc4007f41ca1bb8a
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
-rw-r--r-- | Source/WebCore/bindings/scripts/preprocessor.pm | 11 | ||||
-rw-r--r-- | Source/WebCore/css/makegrammar.pl | 4 | ||||
-rw-r--r-- | Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp | 6 | ||||
-rw-r--r-- | Source/cmake/OptionsQt.cmake | 2 | ||||
-rw-r--r-- | Source/cmake/WebKitFeatures.cmake | 2 | ||||
-rw-r--r-- | Source/cmake/WebKitMacros.cmake | 2 | ||||
-rw-r--r-- | Tools/PlatformQt.cmake | 12 | ||||
-rw-r--r-- | Tools/qmake/projects/run_cmake.pro | 29 |
8 files changed, 49 insertions, 19 deletions
diff --git a/Source/WebCore/bindings/scripts/preprocessor.pm b/Source/WebCore/bindings/scripts/preprocessor.pm index a34e8461b..5d9376d65 100644 --- a/Source/WebCore/bindings/scripts/preprocessor.pm +++ b/Source/WebCore/bindings/scripts/preprocessor.pm @@ -24,6 +24,7 @@ use warnings; use Config; use IPC::Open2; use IPC::Open3; +use Text::ParseWords; BEGIN { use Exporter (); @@ -59,6 +60,9 @@ sub applyPreprocessor } else { push(@args, qw(-E -P -x c++)); } + } else { + @args = shellwords($preprocessor); + $preprocessor = shift @args; } if ($Config::Config{"osname"} eq "darwin") { @@ -99,9 +103,12 @@ sub applyPreprocessor } }; } elsif ($Config::Config{"osname"} eq "MSWin32") { - $pid = open2(\*PP_OUT, \*PP_IN, $preprocessor, @args, @macros, $fileName); + # Suppress STDERR so that if we're using cl.exe, the output + # name isn't needlessly echoed. + use Symbol 'gensym'; my $err = gensym; + $pid = open3(\*PP_IN, \*PP_OUT, $err, $preprocessor, @args, @macros, $fileName); } else { - $pid = open2(\*PP_OUT, \*PP_IN, split(' ', $preprocessor), @args, @macros, $fileName); + $pid = open2(\*PP_OUT, \*PP_IN, $preprocessor, @args, @macros, $fileName); } close PP_IN; my @documentContent = <PP_OUT>; diff --git a/Source/WebCore/css/makegrammar.pl b/Source/WebCore/css/makegrammar.pl index 47cbc2f47..5d63b0810 100644 --- a/Source/WebCore/css/makegrammar.pl +++ b/Source/WebCore/css/makegrammar.pl @@ -73,7 +73,9 @@ if ($suffix eq ".y.in") { } my $fileBase = File::Spec->join($outputDir, $filename); -system("\"$bison\" -d -p $symbolsPrefix $grammarFilePath -o $fileBase.cpp"); +my @bisonCommand = ($bison, "-d", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp"); +push @bisonCommand, "--no-lines" if $^O eq "MSWin32"; # Work around bug in bison >= 3.0 on Windows where it puts backslashes into #line directives. +system(@bisonCommand) == 0 or die; open HEADER, ">$fileBase.h" or die; print HEADER << "EOF"; diff --git a/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp b/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp index 69c72309f..e94367287 100644 --- a/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp +++ b/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp @@ -70,7 +70,11 @@ bool FormDataIODevice::reset() m_currentFile->close(); m_currentDelta = 0; - m_formElements = m_formData->elements(); + + if (m_formData) + m_formElements = m_formData->elements(); + else + m_formElements.clear(); prepareCurrentElement(); return true; diff --git a/Source/cmake/OptionsQt.cmake b/Source/cmake/OptionsQt.cmake index 68d95e1e5..378158615 100644 --- a/Source/cmake/OptionsQt.cmake +++ b/Source/cmake/OptionsQt.cmake @@ -319,7 +319,7 @@ list(APPEND QT_REQUIRED_COMPONENTS ) set(QT_OPTIONAL_COMPONENTS OpenGL) -if (ENABLE_TEST_SUPPORT) +if (ENABLE_API_TESTS OR ENABLE_TEST_SUPPORT) list(APPEND QT_REQUIRED_COMPONENTS Test ) diff --git a/Source/cmake/WebKitFeatures.cmake b/Source/cmake/WebKitFeatures.cmake index fe680b181..b52084f48 100644 --- a/Source/cmake/WebKitFeatures.cmake +++ b/Source/cmake/WebKitFeatures.cmake @@ -269,7 +269,7 @@ macro(WEBKIT_OPTION_END) endif () option(${_name} "${_WEBKIT_AVAILABLE_OPTIONS_DESCRIPTION_${_name}}" ${_WEBKIT_AVAILABLE_OPTIONS_INITIAL_VALUE_${_name}}) - if (NOT _WEBKIT_AVAILABLE_OPTIONS_IS_PUBLIC_${_name}) + if (NOT ${_WEBKIT_AVAILABLE_OPTIONS_IS_PUBLIC_${_name}}) mark_as_advanced(FORCE ${_name}) endif () endforeach () diff --git a/Source/cmake/WebKitMacros.cmake b/Source/cmake/WebKitMacros.cmake index d7baa6b81..8879ec75a 100644 --- a/Source/cmake/WebKitMacros.cmake +++ b/Source/cmake/WebKitMacros.cmake @@ -364,7 +364,7 @@ endmacro() macro(MAKE_JS_FILE_ARRAYS _output_cpp _output_h _scripts _scripts_dependencies) if (WIN32) - set(_python_path set "PYTHONPATH=${JavaScriptCore_SCRIPTS_DIR}" COMMAND) + set(_python_path set "PYTHONPATH=${JavaScriptCore_SCRIPTS_DIR}" &&) else () set(_python_path "PYTHONPATH=${JavaScriptCore_SCRIPTS_DIR}") endif () diff --git a/Tools/PlatformQt.cmake b/Tools/PlatformQt.cmake index 4894e4b69..5b1783887 100644 --- a/Tools/PlatformQt.cmake +++ b/Tools/PlatformQt.cmake @@ -1,6 +1,10 @@ -add_subdirectory(DumpRenderTree) -add_subdirectory(ImageDiff) -if (ENABLE_TEST_SUPPORT) +add_subdirectory(QtTestBrowser) + +if (ENABLE_API_TESTS) add_subdirectory(TestWebKitAPI) - add_subdirectory(QtTestBrowser) +endif () + +if (ENABLE_TEST_SUPPORT) + add_subdirectory(DumpRenderTree) + add_subdirectory(ImageDiff) endif () diff --git a/Tools/qmake/projects/run_cmake.pro b/Tools/qmake/projects/run_cmake.pro index d564ad262..55e4ccc17 100644 --- a/Tools/qmake/projects/run_cmake.pro +++ b/Tools/qmake/projects/run_cmake.pro @@ -20,38 +20,51 @@ build_pass|!debug_and_release { CMAKE_TOOLCHAIN_FILE=$$toolchain_file \ CMAKE_PREFIX_PATH=\"$$[QT_INSTALL_PREFIX];$$ROOT_QT_BUILD_DIR/qtbase;$$ROOT_QT_BUILD_DIR/qtlocation;$$ROOT_QT_BUILD_DIR/qtsensors\" \ CMAKE_INSTALL_PREFIX=\"$$[QT_INSTALL_PREFIX]\" \ - KDE_INSTALL_LIBDIR=\"$$relative_path($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX])\" \ + ENABLE_TEST_SUPPORT=OFF \ USE_LIBHYPHEN=OFF QT_FOR_CONFIG += gui-private !qtConfig(system-jpeg):exists($$QTBASE_DIR) { CMAKE_CONFIG += \ QT_BUNDLED_JPEG=1 \ - JPEG_INCLUDE_DIR=$$system_path($$QTBASE_DIR/src/3rdparty/libjpeg) \ - JPEG_LIBRARIES=$$system_path($$ROOT_BUILD_DIR/lib/libqtjpeg.$$QMAKE_EXTENSION_STATICLIB) + JPEG_INCLUDE_DIR=$$QTBASE_DIR/src/3rdparty/libjpeg \ + JPEG_LIBRARIES=$$ROOT_BUILD_DIR/lib/$${QMAKE_PREFIX_STATICLIB}qtjpeg.$$QMAKE_EXTENSION_STATICLIB } !qtConfig(system-png):qtConfig(png):exists($$QTBASE_DIR) { CMAKE_CONFIG += \ QT_BUNDLED_PNG=1 \ - PNG_INCLUDE_DIRS=$$system_path($$QTBASE_DIR/src/3rdparty/libpng) \ - PNG_LIBRARIES=$$system_path($$ROOT_BUILD_DIR/lib/libqtpng.$$QMAKE_EXTENSION_STATICLIB) + PNG_INCLUDE_DIRS=$$QTBASE_DIR/src/3rdparty/libpng \ + PNG_LIBRARIES=$$ROOT_BUILD_DIR/lib/$${QMAKE_PREFIX_STATICLIB}qtpng.$$QMAKE_EXTENSION_STATICLIB } !qtConfig(system-zlib):exists($$QTBASE_DIR) { CMAKE_CONFIG += \ QT_BUNDLED_ZLIB=1 \ - ZLIB_INCLUDE_DIRS=$$system_path($$QTBASE_DIR/src/3rdparty/zlib) + ZLIB_INCLUDE_DIRS=$$QTBASE_DIR/src/3rdparty/zlib } - equals(QMAKE_HOST.os, Windows): cmake_args += "-G \"NMake Makefiles JOM\"" + equals(QMAKE_HOST.os, Windows) { + if(equals(MAKEFILE_GENERATOR, MSVC.NET)|equals(MAKEFILE_GENERATOR, MSBUILD)) { + cmake_generator = "NMake Makefiles JOM" + } else: if(equals(MAKEFILE_GENERATOR, MINGW)) { + cmake_generator = "MinGW Makefiles" + } else { + cmake_generator = "Unix Makefiles" + } + cmake_args += "-G \"$$cmake_generator\"" + } !silent: make_args += "VERBOSE=1" # Append additional platform options defined in CMAKE_CONFIG for (config, CMAKE_CONFIG): cmake_args += "-D$$config" - cmake_cmd_base = "$$QMAKE_MKDIR $$cmake_build_dir && cd $$cmake_build_dir &&" + !exists($$cmake_build_dir) { + !system("$$QMAKE_MKDIR $$cmake_build_dir"): error("Failed to create cmake build directory") + } + + cmake_cmd_base = "cd $$cmake_build_dir &&" log("$${EOL}Running $$cmake_env cmake $$ROOT_WEBKIT_DIR $$cmake_args $${EOL}$${EOL}") !system("$$cmake_cmd_base $$cmake_env cmake $$ROOT_WEBKIT_DIR $$cmake_args"): error("Running cmake failed") |