haikuwebkit/Tools/WebKitTestRunner/CMakeLists.txt

153 lines
5.8 KiB
CMake
Raw Permalink Normal View History

set(WebKitTestRunner_DIR "${TOOLS_DIR}/WebKitTestRunner")
set(WebKitTestRunner_SHARED_DIR "${TOOLS_DIR}/TestRunnerShared/")
set(WebKitTestRunner_UISCRIPTCONTEXT_DIR "${WebKitTestRunner_SHARED_DIR}/UIScriptContext")
set(WebKitTestRunner_BINDINGS_DIR "${WebKitTestRunner_SHARED_DIR}/Bindings")
2012-07-05 08:47:49 +00:00
file(MAKE_DIRECTORY ${WebKitTestRunner_DERIVED_SOURCES_DIR}/InjectedBundle)
file(MAKE_DIRECTORY ${WebKitTestRunner_DERIVED_SOURCES_DIR}/UIScriptContext)
2012-07-05 08:47:49 +00:00
[CMake] Unify coding style for CMake files https://bugs.webkit.org/show_bug.cgi?id=103605 Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05 Reviewed by Laszlo Gombos. Update cmake files(.cmake, CMakeLists.txt) with following style rules: 1. Indentation 1.1 Use spaces, not tabs. 1.2 Four spaces as indent. 2. Spacing 2.1 Place one space between control statements and their parentheses. For eg, if (), else (), elseif (), endif (), foreach (), endforeach (), while (), endwhile (), break (). 2.2 Do not place spaces between function and macro statements and their parentheses. For eg, macro(), endmacro(), function(), endfunction(). 2.3 Do not place spaces between a command or function or macro and its parentheses, or between a parenthesis and its content. For eg, message("testing") not message( "testing") or message ("testing" ) 2.4 No space at line ending. 3. Lowercase when call commands macros and functions. For eg, add_executable() not ADD_EXECUTABLE(), set() not SET(). .: * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformEfl.cmake: * Source/cmake/EFLHelpers.cmake: * Source/cmake/FindATK.cmake: * Source/cmake/FindCFLite.cmake: * Source/cmake/FindCairo.cmake: * Source/cmake/FindDBus.cmake: * Source/cmake/FindDirectX.cmake: * Source/cmake/FindE_DBus.cmake: * Source/cmake/FindEcore.cmake: * Source/cmake/FindEdje.cmake: * Source/cmake/FindEet.cmake: * Source/cmake/FindEeze.cmake: * Source/cmake/FindEfreet.cmake: * Source/cmake/FindEina.cmake: * Source/cmake/FindElementary.cmake: * Source/cmake/FindEnchant.cmake: * Source/cmake/FindEvas.cmake: * Source/cmake/FindFontconfig.cmake: * Source/cmake/FindGLIB.cmake: * Source/cmake/FindGStreamer.cmake: * Source/cmake/FindGperf.cmake: * Source/cmake/FindHarfBuzz.cmake: * Source/cmake/FindICU.cmake: * Source/cmake/FindLibSoup.cmake: * Source/cmake/FindQuickTimeSDK.cmake: * Source/cmake/FindSqlite.cmake: * Source/cmake/OptionsBlackBerry.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/OptionsEfl.cmake: * Source/cmake/OptionsWinCE.cmake: * Source/cmake/OptionsWindows.cmake: * Source/cmake/WebKitFS.cmake: * Source/cmake/WebKitFeatures.cmake: * Source/cmake/WebKitHelpers.cmake: * Source/cmake/WebKitMacros.cmake: * Source/cmake/WebKitPackaging.cmake: * Source/cmake/gtest/CMakeLists.txt: Source/JavaScriptCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * shell/CMakeLists.txt: * shell/PlatformBlackBerry.cmake: * shell/PlatformEfl.cmake: * shell/PlatformWinCE.cmake: Source/WebCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * UseJSC.cmake: * UseV8.cmake: Source/WebKit: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: Source/WebKit/efl: * DefaultTheme/CMakeLists.txt: Source/WebKit2: * CMakeLists.txt: * PlatformEfl.cmake: * win/WebKit2ExportGenerator.vcproj: * win/WebKit2ExportGeneratorCommon.vsprops: Source/WTF: * CMakeLists.txt: * wtf/CMakeLists.txt: * wtf/PlatformBlackBerry.cmake: * wtf/PlatformEfl.cmake: * wtf/PlatformWinCE.cmake: Tools: * CMakeLists.txt: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * DumpRenderTree/efl/CMakeLists.txt: * EWebLauncher/CMakeLists.txt: * EWebLauncher/ControlTheme/CMakeLists.txt: * MiniBrowser/efl/CMakeLists.txt: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformEfl.cmake: * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/PlatformEfl.cmake: * WinCELauncher/CMakeLists.txt: * clang/ReportMemoryUsagePlugin/CMakeLists.txt: Canonical link: https://commits.webkit.org/122367@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
set(WebKitTestRunner_SOURCES
CyclicRedundancyCheck.cpp
GeolocationProviderMock.cpp
Options.cpp
PixelDumpSupport.cpp
TestController.cpp
TestInvocation.cpp
TestOptions.cpp
[TestRunnerShared] Add a new class UIScriptControllerCommon to implement UIScriptController::windowIsKey and UIScriptController::setWindowIsKey https://bugs.webkit.org/show_bug.cgi?id=216469 Reviewed by Darin Adler. Even though UIScriptController class is defined in TestRunnerShared, UIScriptController::windowIsKey and UIScriptController::setWindowIsKey methods were defined in the client modules DRT and WTR. I'd like to make TestRunnerShared a stand-alone library which doesn't depend on DRT and WTR (Bug 216465). Add a new class UIScriptControllerCommon to host the common methods by renaming UIScriptController.cpp. * DumpRenderTree/CMakeLists.txt: * TestRunnerShared/UIScriptContext/UIScriptController.h: (WTR::UIScriptController::windowIsKey const): (WTR::UIScriptController::setWindowIsKey): * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/UIScriptControllerCommon.cpp: Renamed from Tools/WebKitTestRunner/UIScriptController.cpp. (WTR::UIScriptControllerCommon::windowIsKey const): (WTR::UIScriptControllerCommon::setWindowIsKey): * WebKitTestRunner/UIScriptControllerCommon.h: Added. (WTR::UIScriptControllerCommon::UIScriptControllerCommon): * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: * WebKitTestRunner/cocoa/UIScriptControllerCocoa.h: * WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm: (WTR::UIScriptControllerCocoa::UIScriptControllerCocoa): * WebKitTestRunner/gtk/UIScriptControllerGtk.h: (WTR::UIScriptControllerGtk::UIScriptControllerGtk): * WebKitTestRunner/win/UIScriptControllerWin.h: (WTR::UIScriptControllerWin::UIScriptControllerWin): * WebKitTestRunner/wpe/UIScriptControllerWPE.h: Canonical link: https://commits.webkit.org/229396@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@267120 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-09-16 00:22:48 +00:00
UIScriptControllerCommon.cpp
WebNotificationProvider.cpp
WorkQueueManager.cpp
2012-07-05 08:47:49 +00:00
)
[CMake] Unify coding style for CMake files https://bugs.webkit.org/show_bug.cgi?id=103605 Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05 Reviewed by Laszlo Gombos. Update cmake files(.cmake, CMakeLists.txt) with following style rules: 1. Indentation 1.1 Use spaces, not tabs. 1.2 Four spaces as indent. 2. Spacing 2.1 Place one space between control statements and their parentheses. For eg, if (), else (), elseif (), endif (), foreach (), endforeach (), while (), endwhile (), break (). 2.2 Do not place spaces between function and macro statements and their parentheses. For eg, macro(), endmacro(), function(), endfunction(). 2.3 Do not place spaces between a command or function or macro and its parentheses, or between a parenthesis and its content. For eg, message("testing") not message( "testing") or message ("testing" ) 2.4 No space at line ending. 3. Lowercase when call commands macros and functions. For eg, add_executable() not ADD_EXECUTABLE(), set() not SET(). .: * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformEfl.cmake: * Source/cmake/EFLHelpers.cmake: * Source/cmake/FindATK.cmake: * Source/cmake/FindCFLite.cmake: * Source/cmake/FindCairo.cmake: * Source/cmake/FindDBus.cmake: * Source/cmake/FindDirectX.cmake: * Source/cmake/FindE_DBus.cmake: * Source/cmake/FindEcore.cmake: * Source/cmake/FindEdje.cmake: * Source/cmake/FindEet.cmake: * Source/cmake/FindEeze.cmake: * Source/cmake/FindEfreet.cmake: * Source/cmake/FindEina.cmake: * Source/cmake/FindElementary.cmake: * Source/cmake/FindEnchant.cmake: * Source/cmake/FindEvas.cmake: * Source/cmake/FindFontconfig.cmake: * Source/cmake/FindGLIB.cmake: * Source/cmake/FindGStreamer.cmake: * Source/cmake/FindGperf.cmake: * Source/cmake/FindHarfBuzz.cmake: * Source/cmake/FindICU.cmake: * Source/cmake/FindLibSoup.cmake: * Source/cmake/FindQuickTimeSDK.cmake: * Source/cmake/FindSqlite.cmake: * Source/cmake/OptionsBlackBerry.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/OptionsEfl.cmake: * Source/cmake/OptionsWinCE.cmake: * Source/cmake/OptionsWindows.cmake: * Source/cmake/WebKitFS.cmake: * Source/cmake/WebKitFeatures.cmake: * Source/cmake/WebKitHelpers.cmake: * Source/cmake/WebKitMacros.cmake: * Source/cmake/WebKitPackaging.cmake: * Source/cmake/gtest/CMakeLists.txt: Source/JavaScriptCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * shell/CMakeLists.txt: * shell/PlatformBlackBerry.cmake: * shell/PlatformEfl.cmake: * shell/PlatformWinCE.cmake: Source/WebCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * UseJSC.cmake: * UseV8.cmake: Source/WebKit: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: Source/WebKit/efl: * DefaultTheme/CMakeLists.txt: Source/WebKit2: * CMakeLists.txt: * PlatformEfl.cmake: * win/WebKit2ExportGenerator.vcproj: * win/WebKit2ExportGeneratorCommon.vsprops: Source/WTF: * CMakeLists.txt: * wtf/CMakeLists.txt: * wtf/PlatformBlackBerry.cmake: * wtf/PlatformEfl.cmake: * wtf/PlatformWinCE.cmake: Tools: * CMakeLists.txt: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * DumpRenderTree/efl/CMakeLists.txt: * EWebLauncher/CMakeLists.txt: * EWebLauncher/ControlTheme/CMakeLists.txt: * MiniBrowser/efl/CMakeLists.txt: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformEfl.cmake: * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/PlatformEfl.cmake: * WinCELauncher/CMakeLists.txt: * clang/ReportMemoryUsagePlugin/CMakeLists.txt: Canonical link: https://commits.webkit.org/122367@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
set(WebKitTestRunner_LIBRARIES
TestRunnerShared
[CMake] Determine when to use $<TARGET_OBJECTS> for executables https://bugs.webkit.org/show_bug.cgi?id=219648 Reviewed by Michael Catanzaro. .: When a WebKit framework is declared as an OBJECT library the WebKit::${framework} ALIAS does not propagate the objects to the executable being built. As a workaround ports will explicitly add $<TARGET_OBJECTS> to the list of libraries being linked. There is already enough information to determine when $<TARGET_OBJECTS> is needed so this decision is moved into the WEBKIT_EXECUTABLE macros. An additional ${taget_name}_FRAMEWORKS variable is added which specifies the WebKit frameworks being used. This will link the WebKit::${framework} alias and if necessary the associated $<TARGET_OBJECTS>. This functionality will be expanded upon when support for ${target_name}_FRAMEWORKS is added to WebKit frameworks to support hidden visibility across ports. * Source/cmake/WebKitMacros.cmake: Source/JavaScriptCore: Use ${taget_name}_FRAMEWORKS to specify WebKit frameworks when linking executables. * CMakeLists.txt: * shell/CMakeLists.txt: Source/WebDriver: Use ${taget_name}_FRAMEWORKS to specify WebKit frameworks when linking executables. Remove use of $<TARGET_OBJECTS>. * CMakeLists.txt: * PlatformPlayStation.cmake: * PlatformWin.cmake: Tools: Use ${taget_name}_FRAMEWORKS to specify WebKit frameworks when linking executables. Remove use of $<TARGET_OBJECTS>. * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformPlayStation.cmake: * TestWebKitAPI/PlatformWin.cmake: * WebKitTestRunner/CMakeLists.txt: Canonical link: https://commits.webkit.org/232316@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@270652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-12-10 21:28:18 +00:00
)
set(WebKitTestRunner_FRAMEWORKS
JavaScriptCore
WebCoreTestSupport
[CMake] Determine when to use $<TARGET_OBJECTS> for executables https://bugs.webkit.org/show_bug.cgi?id=219648 Reviewed by Michael Catanzaro. .: When a WebKit framework is declared as an OBJECT library the WebKit::${framework} ALIAS does not propagate the objects to the executable being built. As a workaround ports will explicitly add $<TARGET_OBJECTS> to the list of libraries being linked. There is already enough information to determine when $<TARGET_OBJECTS> is needed so this decision is moved into the WEBKIT_EXECUTABLE macros. An additional ${taget_name}_FRAMEWORKS variable is added which specifies the WebKit frameworks being used. This will link the WebKit::${framework} alias and if necessary the associated $<TARGET_OBJECTS>. This functionality will be expanded upon when support for ${target_name}_FRAMEWORKS is added to WebKit frameworks to support hidden visibility across ports. * Source/cmake/WebKitMacros.cmake: Source/JavaScriptCore: Use ${taget_name}_FRAMEWORKS to specify WebKit frameworks when linking executables. * CMakeLists.txt: * shell/CMakeLists.txt: Source/WebDriver: Use ${taget_name}_FRAMEWORKS to specify WebKit frameworks when linking executables. Remove use of $<TARGET_OBJECTS>. * CMakeLists.txt: * PlatformPlayStation.cmake: * PlatformWin.cmake: Tools: Use ${taget_name}_FRAMEWORKS to specify WebKit frameworks when linking executables. Remove use of $<TARGET_OBJECTS>. * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformPlayStation.cmake: * TestWebKitAPI/PlatformWin.cmake: * WebKitTestRunner/CMakeLists.txt: Canonical link: https://commits.webkit.org/232316@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@270652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-12-10 21:28:18 +00:00
WebKit
2012-07-05 08:47:49 +00:00
)
if (COMPILER_IS_GCC_OR_CLANG)
if (HAVE_STD_EXPERIMENTAL_FILESYSTEM)
list(APPEND WebKitTestRunner_LIBRARIES stdc++fs)
endif ()
endif ()
[CMake] Unify coding style for CMake files https://bugs.webkit.org/show_bug.cgi?id=103605 Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05 Reviewed by Laszlo Gombos. Update cmake files(.cmake, CMakeLists.txt) with following style rules: 1. Indentation 1.1 Use spaces, not tabs. 1.2 Four spaces as indent. 2. Spacing 2.1 Place one space between control statements and their parentheses. For eg, if (), else (), elseif (), endif (), foreach (), endforeach (), while (), endwhile (), break (). 2.2 Do not place spaces between function and macro statements and their parentheses. For eg, macro(), endmacro(), function(), endfunction(). 2.3 Do not place spaces between a command or function or macro and its parentheses, or between a parenthesis and its content. For eg, message("testing") not message( "testing") or message ("testing" ) 2.4 No space at line ending. 3. Lowercase when call commands macros and functions. For eg, add_executable() not ADD_EXECUTABLE(), set() not SET(). .: * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformEfl.cmake: * Source/cmake/EFLHelpers.cmake: * Source/cmake/FindATK.cmake: * Source/cmake/FindCFLite.cmake: * Source/cmake/FindCairo.cmake: * Source/cmake/FindDBus.cmake: * Source/cmake/FindDirectX.cmake: * Source/cmake/FindE_DBus.cmake: * Source/cmake/FindEcore.cmake: * Source/cmake/FindEdje.cmake: * Source/cmake/FindEet.cmake: * Source/cmake/FindEeze.cmake: * Source/cmake/FindEfreet.cmake: * Source/cmake/FindEina.cmake: * Source/cmake/FindElementary.cmake: * Source/cmake/FindEnchant.cmake: * Source/cmake/FindEvas.cmake: * Source/cmake/FindFontconfig.cmake: * Source/cmake/FindGLIB.cmake: * Source/cmake/FindGStreamer.cmake: * Source/cmake/FindGperf.cmake: * Source/cmake/FindHarfBuzz.cmake: * Source/cmake/FindICU.cmake: * Source/cmake/FindLibSoup.cmake: * Source/cmake/FindQuickTimeSDK.cmake: * Source/cmake/FindSqlite.cmake: * Source/cmake/OptionsBlackBerry.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/OptionsEfl.cmake: * Source/cmake/OptionsWinCE.cmake: * Source/cmake/OptionsWindows.cmake: * Source/cmake/WebKitFS.cmake: * Source/cmake/WebKitFeatures.cmake: * Source/cmake/WebKitHelpers.cmake: * Source/cmake/WebKitMacros.cmake: * Source/cmake/WebKitPackaging.cmake: * Source/cmake/gtest/CMakeLists.txt: Source/JavaScriptCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * shell/CMakeLists.txt: * shell/PlatformBlackBerry.cmake: * shell/PlatformEfl.cmake: * shell/PlatformWinCE.cmake: Source/WebCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * UseJSC.cmake: * UseV8.cmake: Source/WebKit: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: Source/WebKit/efl: * DefaultTheme/CMakeLists.txt: Source/WebKit2: * CMakeLists.txt: * PlatformEfl.cmake: * win/WebKit2ExportGenerator.vcproj: * win/WebKit2ExportGeneratorCommon.vsprops: Source/WTF: * CMakeLists.txt: * wtf/CMakeLists.txt: * wtf/PlatformBlackBerry.cmake: * wtf/PlatformEfl.cmake: * wtf/PlatformWinCE.cmake: Tools: * CMakeLists.txt: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * DumpRenderTree/efl/CMakeLists.txt: * EWebLauncher/CMakeLists.txt: * EWebLauncher/ControlTheme/CMakeLists.txt: * MiniBrowser/efl/CMakeLists.txt: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformEfl.cmake: * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/PlatformEfl.cmake: * WinCELauncher/CMakeLists.txt: * clang/ReportMemoryUsagePlugin/CMakeLists.txt: Canonical link: https://commits.webkit.org/122367@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
set(WebKitTestRunner_INCLUDE_DIRECTORIES
${CMAKE_BINARY_DIR}
Share TestFeatures and TestCommand infrastructure between DumpRenderTree and WebKitTestRunner https://bugs.webkit.org/show_bug.cgi?id=217614 Reviewed by Dean Jackson. Move TestFeatures and TestCommand code from WebKitTestRunner to TestRunnerShared and adopt shared code in both WebKitTestRunner and DumpRenderTree. This allows us to remove duplicate argument and test header parsing code and avoid updating both when we want want change things. To support different sets of test header options, featureDefaultsFromTestHeaderForTest now has a parameter for a key type map, rather than the old hardcoded set. This allows WebKitTestRunner and DumpRenderTree, which currently have slightly different options to continue to behave in the same way. Eventually, it will probably make sense to have these mostly generated from the WebPreferences*.yaml configuration files. Matching precedent, shared files use the WTR namespace. * DumpRenderTree/CMakeLists.txt: * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: * TestRunnerShared/CMakeLists.txt: * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Add new files. * DumpRenderTree/DumpRenderTree.h: Removes TestCommand and parseInputLine now that they come from shared TestCommand.h * DumpRenderTree/DumpRenderTreeCommon.cpp: Removed. Moved contents to shared TestCommand.cpp * DumpRenderTree/TestOptions.cpp: * DumpRenderTree/TestOptions.h: Adopt model from WebKitTestRunner and use initialization from TestFeatures. * DumpRenderTree/mac/DumpRenderTree.mm: Adopt shared TestFeatures and TestCommand infrastructure. Construct TestOptions in a similar manner to WebKitTestRunner by merging together hardcoded / path based features and test header based features. * DumpRenderTree/mac/UIDelegate.h: * DumpRenderTree/mac/UIDelegate.mm: Update for new namespace. * TestRunnerShared/TestCommand.cpp: Added. * TestRunnerShared/TestCommand.h: Added. * TestRunnerShared/TestFeatures.cpp: Added. * TestRunnerShared/TestFeatures.h: Added. * WebKitTestRunner/TestController.cpp: * WebKitTestRunner/TestController.h: * WebKitTestRunner/TestOptions.cpp: * WebKitTestRunner/TestOptions.h: Moved from WebKitTestRunner. Generalized to TestFeatures to take a key type map, rather than hard coding it. Replace use of WebKit types, like WKURLRef, with std::string and std::filesystem::path. Canonical link: https://commits.webkit.org/230379@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@268370 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-10-12 21:54:50 +00:00
${WebKitTestRunner_SHARED_DIR}
${WebKitTestRunner_BINDINGS_DIR}
[Testing] Support configuring any preference from test headers for WebKitTestRunner https://bugs.webkit.org/show_bug.cgi?id=217645 Reviewed by Tim Horton. Support using any preference defined in any of the WebPreference*.yaml configuration files as a test header command rather than limiting it to a hard coded subset by generating the list of supported commands and their types from the yaml files themselves. This currently only works for WebKitTestRunner, but will be made to work with DumpRenderTree in subsequent changes. * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/Configurations/Base.xcconfig: * WebKitTestRunner/DerivedSources-input.xcfilelist: * WebKitTestRunner/DerivedSources-output.xcfilelist: * WebKitTestRunner/DerivedSources.make: * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: * WebKitTestRunner/Scripts/PreferencesTemplates: Added. * WebKitTestRunner/Scripts/PreferencesTemplates/TestOptionsGeneratedKeys.h.erb: Added. Add generation of TestOptionsGeneratedKeys.h from the WebPreference*.yaml using the shared GeneratePreferences.rb script in WTF. * WebKitTestRunner/TestController.cpp: (WTR::TestController::resetPreferencesToConsistentValues): Move preference setting to the bottom of the file to allow any preference to be overriden. Also adds in support for double, uint32_t, and string preferences though none of those are currently being used. * WebKitTestRunner/TestOptions.cpp: (WTR::TestOptions::keyTypeMapping): Use generated macro GENERATED_WEB_PREFERENCE_KEY_TYPE_MAPPINGS rather than hardcoding all the preferences types. * WebKitTestRunner/TestOptions.h: (WTR::TestOptions::boolWebPreferenceFeatures const): (WTR::TestOptions::doubleWebPreferenceFeatures const): (WTR::TestOptions::uint32WebPreferenceFeatures const): (WTR::TestOptions::stringWebPreferenceFeatures const): Expose accessors for preferences values for use in setting the actual preference values. Rather than setting all preferences, we now only set preferences that have been explicitly requested, using the default value for any that have not. Canonical link: https://commits.webkit.org/230566@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@268604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-10-16 19:37:06 +00:00
${WebKitTestRunner_DERIVED_SOURCES_DIR}
${WebKitTestRunner_DERIVED_SOURCES_DIR}/UIScriptContext
${WebKitTestRunner_DIR}
${WebKitTestRunner_UISCRIPTCONTEXT_DIR}
)
list(APPEND WebKitTestRunner_INCLUDE_DIRECTORIES
2012-07-05 08:47:49 +00:00
${WEBCORE_DIR}/testing/js
)
list(APPEND WebKitTestRunner_INCLUDE_DIRECTORIES
${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR}
2012-07-05 08:47:49 +00:00
)
SET(WebKitTestRunner_LOCAL_INCLUDE_DIRECTORIES
${WEBCORE_DIR}/platform/graphics
)
[Testing] Support configuring any preference from test headers for WebKitTestRunner https://bugs.webkit.org/show_bug.cgi?id=217645 Reviewed by Tim Horton. Support using any preference defined in any of the WebPreference*.yaml configuration files as a test header command rather than limiting it to a hard coded subset by generating the list of supported commands and their types from the yaml files themselves. This currently only works for WebKitTestRunner, but will be made to work with DumpRenderTree in subsequent changes. * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/Configurations/Base.xcconfig: * WebKitTestRunner/DerivedSources-input.xcfilelist: * WebKitTestRunner/DerivedSources-output.xcfilelist: * WebKitTestRunner/DerivedSources.make: * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: * WebKitTestRunner/Scripts/PreferencesTemplates: Added. * WebKitTestRunner/Scripts/PreferencesTemplates/TestOptionsGeneratedKeys.h.erb: Added. Add generation of TestOptionsGeneratedKeys.h from the WebPreference*.yaml using the shared GeneratePreferences.rb script in WTF. * WebKitTestRunner/TestController.cpp: (WTR::TestController::resetPreferencesToConsistentValues): Move preference setting to the bottom of the file to allow any preference to be overriden. Also adds in support for double, uint32_t, and string preferences though none of those are currently being used. * WebKitTestRunner/TestOptions.cpp: (WTR::TestOptions::keyTypeMapping): Use generated macro GENERATED_WEB_PREFERENCE_KEY_TYPE_MAPPINGS rather than hardcoding all the preferences types. * WebKitTestRunner/TestOptions.h: (WTR::TestOptions::boolWebPreferenceFeatures const): (WTR::TestOptions::doubleWebPreferenceFeatures const): (WTR::TestOptions::uint32WebPreferenceFeatures const): (WTR::TestOptions::stringWebPreferenceFeatures const): Expose accessors for preferences values for use in setting the actual preference values. Rather than setting all preferences, we now only set preferences that have been explicitly requested, using the default value for any that have not. Canonical link: https://commits.webkit.org/230566@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@268604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-10-16 19:37:06 +00:00
set(WebKitTestRunner_WEB_PREFERENCES_TEMPLATES
${WebKitTestRunner_DIR}/Scripts/PreferencesTemplates/TestOptionsGeneratedKeys.h.erb
)
set(WebKitTestRunner_WEB_PREFERENCES
${WTF_SCRIPTS_DIR}/Preferences/WebPreferences.yaml
${WTF_SCRIPTS_DIR}/Preferences/WebPreferencesDebug.yaml
${WTF_SCRIPTS_DIR}/Preferences/WebPreferencesExperimental.yaml
${WTF_SCRIPTS_DIR}/Preferences/WebPreferencesInternal.yaml
)
set_source_files_properties(${WebKitTestRunner_WEB_PREFERENCES} PROPERTIES GENERATED TRUE)
add_custom_command(
OUTPUT ${WebKitTestRunner_DERIVED_SOURCES_DIR}/TestOptionsGeneratedKeys.h
DEPENDS ${WebKitTestRunner_WEB_PREFERENCES_TEMPLATES} ${WebKitTestRunner_WEB_PREFERENCES} WTF_CopyPreferences
COMMAND ${RUBY_EXECUTABLE} ${WTF_SCRIPTS_DIR}/GeneratePreferences.rb --frontend WebKit --base ${WTF_SCRIPTS_DIR}/Preferences/WebPreferences.yaml --debug ${WTF_SCRIPTS_DIR}/Preferences/WebPreferencesDebug.yaml --experimental ${WTF_SCRIPTS_DIR}/Preferences/WebPreferencesExperimental.yaml --internal ${WTF_SCRIPTS_DIR}/Preferences/WebPreferencesInternal.yaml --outputDir "${WebKitTestRunner_DERIVED_SOURCES_DIR}" --template ${WebKitTestRunner_DIR}/Scripts/PreferencesTemplates/TestOptionsGeneratedKeys.h.erb
VERBATIM)
list(APPEND WebKitTestRunner_SOURCES
${WebKitTestRunner_DERIVED_SOURCES_DIR}/TestOptionsGeneratedKeys.h
)
[CMake] Unify coding style for CMake files https://bugs.webkit.org/show_bug.cgi?id=103605 Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05 Reviewed by Laszlo Gombos. Update cmake files(.cmake, CMakeLists.txt) with following style rules: 1. Indentation 1.1 Use spaces, not tabs. 1.2 Four spaces as indent. 2. Spacing 2.1 Place one space between control statements and their parentheses. For eg, if (), else (), elseif (), endif (), foreach (), endforeach (), while (), endwhile (), break (). 2.2 Do not place spaces between function and macro statements and their parentheses. For eg, macro(), endmacro(), function(), endfunction(). 2.3 Do not place spaces between a command or function or macro and its parentheses, or between a parenthesis and its content. For eg, message("testing") not message( "testing") or message ("testing" ) 2.4 No space at line ending. 3. Lowercase when call commands macros and functions. For eg, add_executable() not ADD_EXECUTABLE(), set() not SET(). .: * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformEfl.cmake: * Source/cmake/EFLHelpers.cmake: * Source/cmake/FindATK.cmake: * Source/cmake/FindCFLite.cmake: * Source/cmake/FindCairo.cmake: * Source/cmake/FindDBus.cmake: * Source/cmake/FindDirectX.cmake: * Source/cmake/FindE_DBus.cmake: * Source/cmake/FindEcore.cmake: * Source/cmake/FindEdje.cmake: * Source/cmake/FindEet.cmake: * Source/cmake/FindEeze.cmake: * Source/cmake/FindEfreet.cmake: * Source/cmake/FindEina.cmake: * Source/cmake/FindElementary.cmake: * Source/cmake/FindEnchant.cmake: * Source/cmake/FindEvas.cmake: * Source/cmake/FindFontconfig.cmake: * Source/cmake/FindGLIB.cmake: * Source/cmake/FindGStreamer.cmake: * Source/cmake/FindGperf.cmake: * Source/cmake/FindHarfBuzz.cmake: * Source/cmake/FindICU.cmake: * Source/cmake/FindLibSoup.cmake: * Source/cmake/FindQuickTimeSDK.cmake: * Source/cmake/FindSqlite.cmake: * Source/cmake/OptionsBlackBerry.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/OptionsEfl.cmake: * Source/cmake/OptionsWinCE.cmake: * Source/cmake/OptionsWindows.cmake: * Source/cmake/WebKitFS.cmake: * Source/cmake/WebKitFeatures.cmake: * Source/cmake/WebKitHelpers.cmake: * Source/cmake/WebKitMacros.cmake: * Source/cmake/WebKitPackaging.cmake: * Source/cmake/gtest/CMakeLists.txt: Source/JavaScriptCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * shell/CMakeLists.txt: * shell/PlatformBlackBerry.cmake: * shell/PlatformEfl.cmake: * shell/PlatformWinCE.cmake: Source/WebCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * UseJSC.cmake: * UseV8.cmake: Source/WebKit: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: Source/WebKit/efl: * DefaultTheme/CMakeLists.txt: Source/WebKit2: * CMakeLists.txt: * PlatformEfl.cmake: * win/WebKit2ExportGenerator.vcproj: * win/WebKit2ExportGeneratorCommon.vsprops: Source/WTF: * CMakeLists.txt: * wtf/CMakeLists.txt: * wtf/PlatformBlackBerry.cmake: * wtf/PlatformEfl.cmake: * wtf/PlatformWinCE.cmake: Tools: * CMakeLists.txt: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * DumpRenderTree/efl/CMakeLists.txt: * EWebLauncher/CMakeLists.txt: * EWebLauncher/ControlTheme/CMakeLists.txt: * MiniBrowser/efl/CMakeLists.txt: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformEfl.cmake: * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/PlatformEfl.cmake: * WinCELauncher/CMakeLists.txt: * clang/ReportMemoryUsagePlugin/CMakeLists.txt: Canonical link: https://commits.webkit.org/122367@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
set(WebKitTestRunnerInjectedBundle_SOURCES
InjectedBundle/AccessibilityController.cpp
InjectedBundle/AccessibilityTextMarker.cpp
InjectedBundle/AccessibilityTextMarkerRange.cpp
InjectedBundle/AccessibilityUIElement.cpp
InjectedBundle/EventSendingController.cpp
InjectedBundle/GCController.cpp
InjectedBundle/InjectedBundle.cpp
InjectedBundle/InjectedBundleMain.cpp
InjectedBundle/InjectedBundlePage.cpp
InjectedBundle/TestRunner.cpp
InjectedBundle/TextInputController.cpp
)
set(WebKitTestRunnerInjectedBundle_INCLUDE_DIRECTORIES
${CMAKE_BINARY_DIR}
Send TestRendered event after running a test but before dumping https://bugs.webkit.org/show_bug.cgi?id=216428 Reviewed by Sam Weinig. Tools: * DumpRenderTree/CMakeLists.txt: Added the new files and directories. * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Ditto. * DumpRenderTree/PlatformWin.cmake: Temporarily disable precompiled headers on WinCairo since they were not working properly with JSBasics.cpp. * DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate readyToDumpState]): Added. Calls sendTestRenderedEvent. (-[FrameLoadDelegate processWork:]): Call readyToDumpState. (-[FrameLoadDelegate webView:locationChangeDone:forDataSource:]): Ditto. * DumpRenderTree/win/FrameLoadDelegate.cpp: (readyToDumpState): Added. Calls sendTestRenderedEvent. (FrameLoadDelegate::processWork): Call readyToDumpState. (FrameLoadDelegate::locationChangeDone): Ditto. * TestRunnerShared/Bindings/JSBasics.cpp: Added. (WTR::JSValueMakeBooleanOrNull): Moved from JSWrappable.h. (WTR::JSValueToNullableBoolean): Ditto. (WTR::JSValueMakeStringOrNull): Ditto. (WTR::createJSString): Ditto. (WTR::makeValue): Ditto. (WTR::objectProperty): Ditto. (WTR::setProperty): Added. Sets a named property value to a boolean. (WTR::call): Moved from JSWrappable.h. (WTR::callConstructor): Added. Gets a global constructor and calls it. * TestRunnerShared/Bindings/JSBasics.h: Added. Declares the above functions. * TestRunnerShared/Bindings/JSWrappable.h: (WTR::JSValueMakeBooleanOrNull): Deleted. (WTR::JSValueToNullableBoolean): Deleted. (WTR::JSValueMakeStringOrNull): Deleted. (WTR::createJSString): Deleted. (WTR::makeValue): Deleted. (WTR::objectProperty): Deleted. (WTR::call): Deleted. (WTR::hasRefTestWaitAttribute): Deleted. * TestRunnerShared/Bindings/JSWrapper.h: Updated includes. * TestRunnerShared/ReftestFunctions.cpp: Added. (WTR::sendTestRenderedEvent): Added. Creates and dispatches a TestRendered event. (WTR::hasReftestWaitAttribute): Moved from JSWrappable.h and renamed to use a lowercase T since that's how web-platform-tests names things. * TestRunnerShared/ReftestFunctions.h: Added. Declares the above functions. * WebKitTestRunner/CMakeLists.txt: Added the new files and directories. * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::InjectedBundlePage::frameDidChangeLocation): Call sendTestRenderedEvent before calling dumpAfterWaitAttributeIsRemoved. * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm: Added a missing include of "config.h" to fix build failures I was seeing. An alternative, since this is a Cocoa-only source file, would be to put config.h into a precompiled prefix header. * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm: Ditto. * WebKitTestRunner/PlatformWin.cmake: Temporarily disable precompiled headers on WinCairo since they were not working properly with JSBasics.cpp. * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Added the new files and directories. LayoutTests: * platform/gtk/TestExpectations: * platform/mac/TestExpectations: Unskip two tests that no longer time out since we are sending this event. * platform/win/TestExpectations: Add a failure expectation for a test that has a couple non-green pixels. Canonical link: https://commits.webkit.org/229278@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@266988 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-09-13 06:21:39 +00:00
${WebKitTestRunner_SHARED_DIR}
${WebKitTestRunner_BINDINGS_DIR}
${WebKitTestRunner_DERIVED_SOURCES_DIR}/InjectedBundle
${WebKitTestRunner_DIR}
${WebKitTestRunner_DIR}/InjectedBundle
)
list(APPEND WebKitTestRunnerInjectedBundle_INCLUDE_DIRECTORIES
${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR}
)
set(WebKitTestRunnerInjectedBundle_LIBRARIES
TestRunnerShared
WebKit::WebCoreTestSupport
WebKit::WebKit
2012-07-05 08:47:49 +00:00
)
[CMake] Unify coding style for CMake files https://bugs.webkit.org/show_bug.cgi?id=103605 Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05 Reviewed by Laszlo Gombos. Update cmake files(.cmake, CMakeLists.txt) with following style rules: 1. Indentation 1.1 Use spaces, not tabs. 1.2 Four spaces as indent. 2. Spacing 2.1 Place one space between control statements and their parentheses. For eg, if (), else (), elseif (), endif (), foreach (), endforeach (), while (), endwhile (), break (). 2.2 Do not place spaces between function and macro statements and their parentheses. For eg, macro(), endmacro(), function(), endfunction(). 2.3 Do not place spaces between a command or function or macro and its parentheses, or between a parenthesis and its content. For eg, message("testing") not message( "testing") or message ("testing" ) 2.4 No space at line ending. 3. Lowercase when call commands macros and functions. For eg, add_executable() not ADD_EXECUTABLE(), set() not SET(). .: * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformEfl.cmake: * Source/cmake/EFLHelpers.cmake: * Source/cmake/FindATK.cmake: * Source/cmake/FindCFLite.cmake: * Source/cmake/FindCairo.cmake: * Source/cmake/FindDBus.cmake: * Source/cmake/FindDirectX.cmake: * Source/cmake/FindE_DBus.cmake: * Source/cmake/FindEcore.cmake: * Source/cmake/FindEdje.cmake: * Source/cmake/FindEet.cmake: * Source/cmake/FindEeze.cmake: * Source/cmake/FindEfreet.cmake: * Source/cmake/FindEina.cmake: * Source/cmake/FindElementary.cmake: * Source/cmake/FindEnchant.cmake: * Source/cmake/FindEvas.cmake: * Source/cmake/FindFontconfig.cmake: * Source/cmake/FindGLIB.cmake: * Source/cmake/FindGStreamer.cmake: * Source/cmake/FindGperf.cmake: * Source/cmake/FindHarfBuzz.cmake: * Source/cmake/FindICU.cmake: * Source/cmake/FindLibSoup.cmake: * Source/cmake/FindQuickTimeSDK.cmake: * Source/cmake/FindSqlite.cmake: * Source/cmake/OptionsBlackBerry.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/OptionsEfl.cmake: * Source/cmake/OptionsWinCE.cmake: * Source/cmake/OptionsWindows.cmake: * Source/cmake/WebKitFS.cmake: * Source/cmake/WebKitFeatures.cmake: * Source/cmake/WebKitHelpers.cmake: * Source/cmake/WebKitMacros.cmake: * Source/cmake/WebKitPackaging.cmake: * Source/cmake/gtest/CMakeLists.txt: Source/JavaScriptCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * shell/CMakeLists.txt: * shell/PlatformBlackBerry.cmake: * shell/PlatformEfl.cmake: * shell/PlatformWinCE.cmake: Source/WebCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * UseJSC.cmake: * UseV8.cmake: Source/WebKit: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: Source/WebKit/efl: * DefaultTheme/CMakeLists.txt: Source/WebKit2: * CMakeLists.txt: * PlatformEfl.cmake: * win/WebKit2ExportGenerator.vcproj: * win/WebKit2ExportGeneratorCommon.vsprops: Source/WTF: * CMakeLists.txt: * wtf/CMakeLists.txt: * wtf/PlatformBlackBerry.cmake: * wtf/PlatformEfl.cmake: * wtf/PlatformWinCE.cmake: Tools: * CMakeLists.txt: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * DumpRenderTree/efl/CMakeLists.txt: * EWebLauncher/CMakeLists.txt: * EWebLauncher/ControlTheme/CMakeLists.txt: * MiniBrowser/efl/CMakeLists.txt: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformEfl.cmake: * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/PlatformEfl.cmake: * WinCELauncher/CMakeLists.txt: * clang/ReportMemoryUsagePlugin/CMakeLists.txt: Canonical link: https://commits.webkit.org/122367@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
set(WebKitTestRunnerInjectedBundle_IDL_FILES
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/AccessibilityController.idl"
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/AccessibilityTextMarker.idl"
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/AccessibilityTextMarkerRange.idl"
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/AccessibilityUIElement.idl"
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/EventSendingController.idl"
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/GCController.idl"
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/TestRunner.idl"
"${WebKitTestRunner_DIR}/InjectedBundle/Bindings/TextInputController.idl"
)
2012-07-05 08:47:49 +00:00
set(WebKitTestRunner_DEPENDENCIES
TestRunnerInjectedBundle
)
[CMake] CMake does not support the dep files for implicit dependency https://bugs.webkit.org/show_bug.cgi?id=161433 Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2016-10-20 Reviewed by Brent Fulgham. Created a Perl script to generate all IDL bindings for CMake. This script can regenerate outdated bindings by based on the supplemental dependency and dep files created by '--write-dependencies' switch of generate-bindings.pl. add_custom_target is used to invoke the script instead of add_custom_command because Ninja deletes all output files before executing the command in case of add_custom_command. USES_TERMINAL option of add_custom_target has two effects: 1) Not buffering output of the command 2) Invoking the command in the special Ninja pool which inhibits parallel build One needs to use CMake 3.2 or later to enable this feature. .: * Source/cmake/WebKitMacros.cmake (GENERATE_BINDINGS): Included ProcessorCount. Added a new argument 'target'. Use add_custom_target instead of add_custom_command. Invoke the new script. Source/WebCore: * CMakeLists.txt: Specified target names for GENERATE_BINDINGS. Added dependency for the targets. * bindings/scripts/generate-bindings-all.pl: Added. Tools: * DumpRenderTree/CMakeLists.txt: Specified a target name for GENERATE_BINDINGS. Added dependency for the target. * WebKitTestRunner/CMakeLists.txt: Ditto. Canonical link: https://commits.webkit.org/181504@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@207617 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2016-10-20 14:34:24 +00:00
GENERATE_BINDINGS(WebKitTestRunnerInjectedBundleBindings
OUTPUT_SOURCE WebKitTestRunnerInjectedBundle_SOURCES
INPUT_FILES ${WebKitTestRunnerInjectedBundle_IDL_FILES}
BASE_DIR ${WebKitTestRunner_DIR}/InjectedBundle/Bindings
IDL_INCLUDES ${WebKitTestRunner_DIR}/InjectedBundle/Bindings
FEATURES ${FEATURE_DEFINES_WITH_SPACE_SEPARATOR}
DESTINATION ${WebKitTestRunner_DERIVED_SOURCES_DIR}/InjectedBundle
GENERATOR TestRunner)
WEBKIT_EXECUTABLE_DECLARE(WebKitTestRunner)
WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
2012-07-05 08:47:49 +00:00
[CMake] Unify coding style for CMake files https://bugs.webkit.org/show_bug.cgi?id=103605 Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05 Reviewed by Laszlo Gombos. Update cmake files(.cmake, CMakeLists.txt) with following style rules: 1. Indentation 1.1 Use spaces, not tabs. 1.2 Four spaces as indent. 2. Spacing 2.1 Place one space between control statements and their parentheses. For eg, if (), else (), elseif (), endif (), foreach (), endforeach (), while (), endwhile (), break (). 2.2 Do not place spaces between function and macro statements and their parentheses. For eg, macro(), endmacro(), function(), endfunction(). 2.3 Do not place spaces between a command or function or macro and its parentheses, or between a parenthesis and its content. For eg, message("testing") not message( "testing") or message ("testing" ) 2.4 No space at line ending. 3. Lowercase when call commands macros and functions. For eg, add_executable() not ADD_EXECUTABLE(), set() not SET(). .: * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformEfl.cmake: * Source/cmake/EFLHelpers.cmake: * Source/cmake/FindATK.cmake: * Source/cmake/FindCFLite.cmake: * Source/cmake/FindCairo.cmake: * Source/cmake/FindDBus.cmake: * Source/cmake/FindDirectX.cmake: * Source/cmake/FindE_DBus.cmake: * Source/cmake/FindEcore.cmake: * Source/cmake/FindEdje.cmake: * Source/cmake/FindEet.cmake: * Source/cmake/FindEeze.cmake: * Source/cmake/FindEfreet.cmake: * Source/cmake/FindEina.cmake: * Source/cmake/FindElementary.cmake: * Source/cmake/FindEnchant.cmake: * Source/cmake/FindEvas.cmake: * Source/cmake/FindFontconfig.cmake: * Source/cmake/FindGLIB.cmake: * Source/cmake/FindGStreamer.cmake: * Source/cmake/FindGperf.cmake: * Source/cmake/FindHarfBuzz.cmake: * Source/cmake/FindICU.cmake: * Source/cmake/FindLibSoup.cmake: * Source/cmake/FindQuickTimeSDK.cmake: * Source/cmake/FindSqlite.cmake: * Source/cmake/OptionsBlackBerry.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/OptionsEfl.cmake: * Source/cmake/OptionsWinCE.cmake: * Source/cmake/OptionsWindows.cmake: * Source/cmake/WebKitFS.cmake: * Source/cmake/WebKitFeatures.cmake: * Source/cmake/WebKitHelpers.cmake: * Source/cmake/WebKitMacros.cmake: * Source/cmake/WebKitPackaging.cmake: * Source/cmake/gtest/CMakeLists.txt: Source/JavaScriptCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * shell/CMakeLists.txt: * shell/PlatformBlackBerry.cmake: * shell/PlatformEfl.cmake: * shell/PlatformWinCE.cmake: Source/WebCore: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: * UseJSC.cmake: * UseV8.cmake: Source/WebKit: * CMakeLists.txt: * PlatformBlackBerry.cmake: * PlatformEfl.cmake: * PlatformWinCE.cmake: Source/WebKit/efl: * DefaultTheme/CMakeLists.txt: Source/WebKit2: * CMakeLists.txt: * PlatformEfl.cmake: * win/WebKit2ExportGenerator.vcproj: * win/WebKit2ExportGeneratorCommon.vsprops: Source/WTF: * CMakeLists.txt: * wtf/CMakeLists.txt: * wtf/PlatformBlackBerry.cmake: * wtf/PlatformEfl.cmake: * wtf/PlatformWinCE.cmake: Tools: * CMakeLists.txt: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * DumpRenderTree/efl/CMakeLists.txt: * EWebLauncher/CMakeLists.txt: * EWebLauncher/ControlTheme/CMakeLists.txt: * MiniBrowser/efl/CMakeLists.txt: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformEfl.cmake: * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/PlatformEfl.cmake: * WinCELauncher/CMakeLists.txt: * clang/ReportMemoryUsagePlugin/CMakeLists.txt: Canonical link: https://commits.webkit.org/122367@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
add_library(TestRunnerInjectedBundle SHARED ${WebKitTestRunnerInjectedBundle_SOURCES})
target_include_directories(TestRunnerInjectedBundle PRIVATE ${WebKitTestRunnerInjectedBundle_INCLUDE_DIRECTORIES})
target_link_libraries(TestRunnerInjectedBundle PRIVATE ${WebKitTestRunnerInjectedBundle_LIBRARIES})
[CMake] CMake does not support the dep files for implicit dependency https://bugs.webkit.org/show_bug.cgi?id=161433 Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2016-10-20 Reviewed by Brent Fulgham. Created a Perl script to generate all IDL bindings for CMake. This script can regenerate outdated bindings by based on the supplemental dependency and dep files created by '--write-dependencies' switch of generate-bindings.pl. add_custom_target is used to invoke the script instead of add_custom_command because Ninja deletes all output files before executing the command in case of add_custom_command. USES_TERMINAL option of add_custom_target has two effects: 1) Not buffering output of the command 2) Invoking the command in the special Ninja pool which inhibits parallel build One needs to use CMake 3.2 or later to enable this feature. .: * Source/cmake/WebKitMacros.cmake (GENERATE_BINDINGS): Included ProcessorCount. Added a new argument 'target'. Use add_custom_target instead of add_custom_command. Invoke the new script. Source/WebCore: * CMakeLists.txt: Specified target names for GENERATE_BINDINGS. Added dependency for the targets. * bindings/scripts/generate-bindings-all.pl: Added. Tools: * DumpRenderTree/CMakeLists.txt: Specified a target name for GENERATE_BINDINGS. Added dependency for the target. * WebKitTestRunner/CMakeLists.txt: Ditto. Canonical link: https://commits.webkit.org/181504@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@207617 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2016-10-20 14:34:24 +00:00
add_dependencies(TestRunnerInjectedBundle WebKitTestRunnerInjectedBundleBindings)
2012-07-05 08:47:49 +00:00
WEBKIT_EXECUTABLE(WebKitTestRunner)
2012-07-05 08:47:49 +00:00
[CMake] Properly test if compiler supports compiler flags https://bugs.webkit.org/show_bug.cgi?id=174490 Reviewed by Konstantin Tokarev. .: This turned out to be a massive pain. I didn't want to merely check options before using them: I also wanted to organize the code to avoid setting similar flags in different places. Right now we set a bunch of global flags in OptionsCommon.cmake, and a bunch more flags in WEBKIT_SET_EXTRA_COMPILER_FLAGS on a per-target basis. Setting flags per-target seems better in general, e.g. because it makes it very easy to disable warnings for particular ThirdParty targets. But it turns out that all the flags set on a per-target basis get passed to both the C compiler and the C++ compiler, so it's impossible to pass C++-only flags there. That's terrible. It's possible to make the flags language-conditional using generator expressions, but that doesn't work for the Visual Studio backend, so we would have to drop support for that (not going to happen). The CMake documentation suggests that C and C++ files ought to be built in separate targets to avoid this. It's a mess, basically. So I've wound up removing WEBKIT_SET_EXTRA_COMPILER_FLAGS and adding most of those flags to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS instead. Really the only disadvantage of this is we now have to suppress individual warnings when building ANGLESupport in WebCore. That's not the end of the world. The only remaining useful feature of WEBKIT_SET_EXTRA_COMPILER_FLAGS was to add -fPIC to static library targets, but turns out CMake does that for us if we just set the variable CMAKE_POSITION_INDEPENDENT_CODE, so we can get rid of it completely. Of course there are also macros for setting target-specific compiler flags, which we frequently need in order to suppress specific warnings, particularly warnings coming from third-party libraries like ANGLE and gtest. But remember the footgun: these macros will test the flag against only one compiler, but must work with both C and C++ compilers unless the build target exclusively contains targets built with just one of those compilers. Yuck. * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformGTK.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/WebKitCommon.cmake: * Source/cmake/WebKitCompilerFlags.cmake: Added. * Source/cmake/WebKitMacros.cmake: Source/JavaScriptCore: * API/tests/PingPongStackOverflowTest.cpp: (testPingPongStackOverflow): * API/tests/testapi.c: * b3/testb3.cpp: (JSC::B3::testPatchpointLotsOfLateAnys): Source/ThirdParty: * brotli/CMakeLists.txt: * gtest/CMakeLists.txt: * woff2/CMakeLists.txt: * xdgmime/CMakeLists.txt: Source/WebCore: * CMakeLists.txt: * PlatformGTK.cmake: * PlatformWPE.cmake: Source/WebDriver: * WebDriverService.cpp: (WebDriver::WebDriverService::run): * glib/SessionHostGlib.cpp: Source/WebKit: * CMakeLists.txt: * PlatformGTK.cmake: Source/WTF: * wtf/Compiler.h: Tools: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * MiniBrowser/gtk/CMakeLists.txt: * TestRunnerShared/Bindings/JSWrapper.cpp: (WTR::JSWrapper::initialize): * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformGTK.cmake: * TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp: (TestWebKitAPI::CheckedArithmeticTester::run): * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: (formControlsAssociatedCallback): * TestWebKitAPI/glib/CMakeLists.txt: * TestWebKitAPI/glib/WebKitGLib/TestMain.h: (Test::getResourcesDir): * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/InjectedBundle/EventSendingController.cpp: (WTR::menuItemClickCallback): (WTR::staticConvertMenuItemToType): * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::setUseDashboardCompatibilityMode): * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp: (WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks): * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: (WTR::AccessibilityUIElement::helpText const): (WTR::AccessibilityUIElement::attributedStringForRange): * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp: (WTR::EventSenderProxy::updateTouchPoint): (WTR::EventSenderProxy::releaseTouchPoint): Canonical link: https://commits.webkit.org/192040@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@220403 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2017-08-08 15:03:48 +00:00
if (COMPILER_IS_GCC_OR_CLANG)
WEBKIT_ADD_TARGET_CXX_FLAGS(TestRunnerInjectedBundle -Wno-unused-parameter)
WEBKIT_ADD_TARGET_CXX_FLAGS(WebKitTestRunner -Wno-unused-parameter)
endif ()