string(TOLOWER ${PORT} WEBKIT_PORT_DIR)
-# -----------------------------------------------------------------------------
-# Find common packages (used by all ports)
-# -----------------------------------------------------------------------------
-find_package(BISON 2.3 REQUIRED)
-if (!APPLE)
- find_package(FLEX 2.5.34 REQUIRED)
-endif ()
-
-# TODO Enforce version requirement for gperf
-find_package(Gperf 3.0.1 REQUIRED)
-
-# TODO Enforce version requirement for perl
-find_package(Perl 5.10.0 REQUIRED)
-
-find_package(PythonInterp 2.7.0 REQUIRED)
-
-# We cannot check for RUBY_FOUND because it is set only when the full package is installed and
-# the only thing we need is the interpreter. Unlike Python, cmake does not provide a macro
-# for finding only the Ruby interpreter.
-find_package(Ruby 1.8.7)
-if (NOT RUBY_EXECUTABLE OR RUBY_VERSION VERSION_LESS 1.8.7)
- message(FATAL_ERROR "Ruby 1.8.7 or higher is required.")
-endif ()
-
# -----------------------------------------------------------------------------
# Determine the target processor
# -----------------------------------------------------------------------------
+2015-08-27 Alex Christensen <achristensen@webkit.org>
+
+ Isolate Source directories in CMake build
+ https://bugs.webkit.org/show_bug.cgi?id=148389
+
+ Reviewed by Brent Fulgham.
+
+ * CMakeLists.txt:
+ * Source/cmake/WebKitCommon.cmake:
+ Move package finding to WebKitCommon.
+
2015-08-26 Per Arne Vollan <peavo@outlook.com>
[Win] Build does not generate debug info.
+2015-08-27 Alex Christensen <achristensen@webkit.org>
+
+ Isolate Source directories in CMake build
+ https://bugs.webkit.org/show_bug.cgi?id=148389
+
+ Reviewed by Brent Fulgham.
+
+ * PlatformWin.cmake:
+ Include ../include/private to find WTF headers in internal build.
+ Don't use a script to generate forwarding headers.
+ * shell/PlatformWin.cmake:
+ Copy inspector scripts to the forwarding headers directory to be used by WebCore.
+
2015-08-27 Alex Christensen <achristensen@webkit.org>
[Win CMake] Fix incremental build after r188673
API/JSStringRefCF.cpp
)
+list(APPEND JavaScriptCore_INCLUDE_DIRECTORIES
+ ${CMAKE_BINARY_DIR}/../include/private
+)
+
if (WTF_PLATFORM_WIN_CAIRO)
list(APPEND JavaScriptCore_LIBRARIES
CFLite
)
endif ()
-if (MSVC AND "${JavaScriptCore_LIBRARY_TYPE}" MATCHES "SHARED")
- get_property(WTF_LIBRARY_LOCATION TARGET WTF PROPERTY LOCATION)
-
- add_custom_command(
- OUTPUT ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/forwarded-exports.cpp
- DEPENDS WTF
- COMMAND ${PYTHON_EXECUTABLE} ${TOOLS_DIR}/Scripts/generate-win32-export-forwards ${WTF_LIBRARY_LOCATION} ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/forwarded-exports.cpp
- VERBATIM)
- list(APPEND JavaScriptCore_SOURCES ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/forwarded-exports.cpp)
-endif ()
-
list(REMOVE_ITEM JavaScriptCore_SOURCES
inspector/JSGlobalObjectInspectorController.cpp
)
set(JavaScriptCore_POST_BUILD_COMMAND "${CMAKE_BINARY_DIR}/DerivedSources/JavaScriptCore/postBuild.cmd")
file(WRITE "${JavaScriptCore_POST_BUILD_COMMAND}" "@xcopy /y /d /f \"${DERIVED_SOURCES_DIR}/JavaScriptCore/*.h\" \"${DERIVED_SOURCES_DIR}/ForwardingHeaders/JavaScriptCore\" >nul 2>nul\n")
file(APPEND "${JavaScriptCore_POST_BUILD_COMMAND}" "@xcopy /y /d /f \"${DERIVED_SOURCES_DIR}/JavaScriptCore/inspector/*.h\" \"${DERIVED_SOURCES_DIR}/ForwardingHeaders/JavaScriptCore\" >nul 2>nul\n")
+file(APPEND "${JavaScriptCore_POST_BUILD_COMMAND}" "@xcopy /y /d /f /s \"${DERIVED_SOURCES_DIR}/JavaScriptCore/inspector/scripts/*.*\" \"${DERIVED_SOURCES_DIR}/ForwardingHeaders/JavaScriptCore\" >nul 2>nul\n")
foreach (_directory ${JavaScriptCore_FORWARDING_HEADERS_DIRECTORIES})
file(APPEND "${JavaScriptCore_POST_BUILD_COMMAND}" "@xcopy /y /d /f \"${JAVASCRIPTCORE_DIR}/${_directory}/*.h\" \"${DERIVED_SOURCES_DIR}/ForwardingHeaders/JavaScriptCore\" >nul 2>nul\n")
endforeach ()
include_directories(./ ${JavaScriptCore_INCLUDE_DIRECTORIES})
add_library(jscdll SHARED ${JSC_SOURCES})
+
+list(APPEND JSC_LIBRARIES
+ Winmm
+)
+
target_link_libraries(jscdll ${JSC_LIBRARIES})
set_target_properties(jscdll PROPERTIES FOLDER "JavaScriptCore")
set_target_properties(jscdll PROPERTIES OUTPUT_NAME "jsc${DEBUG_SUFFIX}")
add_definitions(-DWIN_CAIRO)
endif ()
-set(JSC_SOURCES ${TOOLS_DIR}/win/DLLLauncher/DLLLauncherMain.cpp)
+set(JSC_SOURCES ${JAVASCRIPTCORE_DIR}/JavaScriptCore.vcxproj/jsc/DLLLauncherMain.cpp)
set(JSC_LIBRARIES shlwapi)
add_definitions(-DUSE_CONSOLE_ENTRY_POINT)
${WebCore_SVG_IDL_FILES}
)
-set(WebCore_INSPECTOR_SCRIPTS_DIR "${JAVASCRIPTCORE_DIR}/inspector/scripts")
+if (WIN32)
+ if (INTERNAL_BUILD)
+ set(WebCore_INSPECTOR_SCRIPTS_DIR "${CMAKE_BINARY_DIR}/../include/private/JavaScriptCore")
+ else ()
+ set(WebCore_INSPECTOR_SCRIPTS_DIR "${JAVASCRIPTCORE_DIR}/inspector/scripts")
+ endif ()
+else ()
+ set(WebCore_INSPECTOR_SCRIPTS_DIR "${JAVASCRIPTCORE_DIR}/inspector/scripts")
+endif ()
set(WebCore_SOURCES
Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.cpp
GENERATE_DOM_NAMES(XML ${WEBCORE_DIR}/xml/xmlattrs.in)
list(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/XMLNames.cpp)
-if (NOT PORT STREQUAL "GTK")
- add_custom_command(
- OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/WebKitVersion.h
- MAIN_DEPENDENCY ${WEBKIT_DIR}/scripts/generate-webkitversion.pl
- DEPENDS ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig
- COMMAND ${PERL_EXECUTABLE} ${WEBKIT_DIR}/scripts/generate-webkitversion.pl --config ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig --outputDir ${DERIVED_SOURCES_WEBCORE_DIR}
- VERBATIM)
- list(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/WebKitVersion.h)
-endif ()
-
WEBKIT_WRAP_SOURCELIST(${WebCore_IDL_FILES} ${WebCore_SOURCES})
WEBKIT_WRAP_SOURCELIST(${WebCoreTestSupport_IDL_FILES} ${WebCoreTestSupport_SOURCES})
+2015-08-27 Alex Christensen <achristensen@webkit.org>
+
+ Isolate Source directories in CMake build
+ https://bugs.webkit.org/show_bug.cgi?id=148389
+
+ Reviewed by Brent Fulgham.
+
+ * CMakeLists.txt:
+ Use the forwarding header copy of the inspector scripts to avoid requiring JavaScriptCore directory to exist.
+ * PlatformAppleWin.cmake:
+ Add AVFoundation sources to build.
+ * PlatformEFL.cmake:
+ Moved WebKitVersion.h generating from CMakeLists.txt because it is now only used in WebCore by EFL.
+ * PlatformWin.cmake:
+ Include ../include/private to find forwarding headers in internal build.
+
2015-08-27 Alex Christensen <achristensen@webkit.org>
[Win CMake] Fix incremental build after r188673
"${WEBKIT_LIBRARIES_DIR}/include"
"${WEBKIT_LIBRARIES_DIR}/include/zlib"
"${WEBCORE_DIR}/loader/archive/cf"
+ "${WEBCORE_DIR}/platform/graphics/avfoundation"
+ "${WEBCORE_DIR}/platform/graphics/avfoundation/cf"
"${WEBCORE_DIR}/platform/graphics/ca"
"${WEBCORE_DIR}/platform/graphics/ca/win"
"${WEBCORE_DIR}/platform/graphics/cg"
platform/cf/CFURLExtras.cpp
platform/cf/URLCF.cpp
+ platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp
+ platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp
+ platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp
+ platform/graphics/avfoundation/MediaTimeAVFoundation.cpp
+ platform/graphics/avfoundation/WebMediaSessionManagerMac.cpp
+
+ platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.cpp
+ platform/graphics/avfoundation/cf/ImbandTextTrackPrivateLegacyAVCF.cpp
+ platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp
+ platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp
+ platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp
+
platform/graphics/ca/GraphicsLayerCA.cpp
platform/graphics/ca/LayerFlushScheduler.cpp
platform/graphics/ca/LayerPool.cpp
${WEBCORE_DIR}/Modules/mediacontrols/mediaControlsBase.js
)
+add_custom_command(
+ OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/WebKitVersion.h
+ MAIN_DEPENDENCY ${WEBKIT_DIR}/scripts/generate-webkitversion.pl
+ DEPENDS ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig
+ COMMAND ${PERL_EXECUTABLE} ${WEBKIT_DIR}/scripts/generate-webkitversion.pl --config ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig --outputDir ${DERIVED_SOURCES_WEBCORE_DIR}
+ VERBATIM)
+list(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/WebKitVersion.h)
+
set(WebCore_USER_AGENT_SCRIPTS_DEPENDENCIES ${WEBCORE_DIR}/platform/efl/RenderThemeEfl.cpp)
list(APPEND WebCore_LIBRARIES
add_definitions(/bigobj)
list(APPEND WebCore_INCLUDE_DIRECTORIES
+ "${CMAKE_BINARY_DIR}/../include/private"
+ "${CMAKE_BINARY_DIR}/../include/private/JavaScriptCore"
"${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE"
"${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE/include/KHR"
"${DERIVED_SOURCES_DIR}/ForwardingHeaders/JavaScriptCore"
+2015-08-27 Alex Christensen <achristensen@webkit.org>
+
+ Isolate Source directories in CMake build
+ https://bugs.webkit.org/show_bug.cgi?id=148389
+
+ Reviewed by Brent Fulgham.
+
+ * PlatformWin.cmake:
+ Moved WebKitVersion.h generation from WebCore because the scripts required for it are in WebKit.
+
2015-08-27 Timothy Horton <timothy_horton@apple.com>
Factor out Lookup invocation
)
endif ()
+add_custom_command(
+ OUTPUT ${DERIVED_SOURCES_WEBKIT_DIR}/WebKitVersion.h
+ MAIN_DEPENDENCY ${WEBKIT_DIR}/scripts/generate-webkitversion.pl
+ DEPENDS ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig
+ COMMAND ${PERL_EXECUTABLE} ${WEBKIT_DIR}/scripts/generate-webkitversion.pl --config ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig --outputDir ${DERIVED_SOURCES_WEBKIT_DIR}
+ VERBATIM)
+list(APPEND WebKit_SOURCES ${DERIVED_SOURCES_WEBKIT_DIR}/WebKitVersion.h)
+
list(APPEND WebKit_INCLUDE_DIRECTORIES
+ "${CMAKE_BINARY_DIR}/../include/private"
+ "${CMAKE_BINARY_DIR}/../include/private/JavaScriptCore"
+ "${CMAKE_BINARY_DIR}/../include/private/WebCore"
Storage
win
win/plugins
"${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE/include"
"${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE/include/egl"
"${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE/include/khr"
+ "${DERIVED_SOURCES_DIR}/WebKit"
)
list(APPEND WebKit_INCLUDES
add_custom_command(
OUTPUT ${DERIVED_SOURCES_WEBKIT_DIR}/autoversion.h
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
- COMMAND ${PERL_EXECUTABLE} ${CMAKE_SOURCE_DIR}/WebKitLibraries/win/tools/scripts/auto-version.pl ${DERIVED_SOURCES_WEBKIT_DIR}
+ COMMAND ${PERL_EXECUTABLE} ${WEBKIT_LIBRARIES_DIR}/tools/scripts/auto-version.pl ${DERIVED_SOURCES_WEBKIT_DIR}
VERBATIM)
GENERATE_INTERFACE(win/Interfaces/WebKit.idl ${MIDL_DEFINES} "${WEBKIT_IDL_DEPENDENCIES}")
)
endif ()
+set(WebKit_LIBRARY_TYPE SHARED)
+
# We need the webkit libraries to come before the system default libraries to prevent symbol conflicts with uuid.lib.
# To do this we add system default libs as webkit libs and zero out system default libs.
string(REPLACE " " "\;" CXX_LIBS ${CMAKE_CXX_STANDARD_LIBRARIES})
+# -----------------------------------------------------------------------------
+# Find common packages (used by all ports)
+# -----------------------------------------------------------------------------
+find_package(BISON 2.3 REQUIRED)
+if (!APPLE)
+ find_package(FLEX 2.5.34 REQUIRED)
+endif ()
+
+# TODO Enforce version requirement for gperf
+find_package(Gperf 3.0.1 REQUIRED)
+
+# TODO Enforce version requirement for perl
+find_package(Perl 5.10.0 REQUIRED)
+
+find_package(PythonInterp 2.7.0 REQUIRED)
+
+# We cannot check for RUBY_FOUND because it is set only when the full package is installed and
+# the only thing we need is the interpreter. Unlike Python, cmake does not provide a macro
+# for finding only the Ruby interpreter.
+find_package(Ruby 1.8.7)
+if (NOT RUBY_EXECUTABLE OR RUBY_VERSION VERSION_LESS 1.8.7)
+ message(FATAL_ERROR "Ruby 1.8.7 or higher is required.")
+endif ()
+
include(WebKitMacros)
include(WebKitFS)
include(WebKitHelpers)