Title: [256419] trunk/Source/WebKitLegacy
- Revision
- 256419
- Author
- hironori.fu...@sony.com
- Date
- 2020-02-11 17:50:19 -0800 (Tue, 11 Feb 2020)
Log Message
[Win][CMake][WK1] WebKitLegacyGUID doesn't get recompiled by updating IDL files
https://bugs.webkit.org/show_bug.cgi?id=207456
Reviewed by Don Olmstead.
In GENERATE_INTERFACE macro, only *.h files were specified to
OUTPUT of add_custom_command. Generated *_i.c files were just
marked GENERATED source file property. So, WebKitLegacyGUID didn't
know which command generates *_i.c files.
Added a new option HEADER_ONLY to GENERATE_INTERFACE. If
HEADER_ONLY is not specified, append ${_filewe}_i.c to the OUTPUT.
Only AccessibleStates.idl and IA2CommonTypes.idl are marked with
HEADER_ONLY.
Removed _defines and _depends options to simplify
GENERATE_INTERFACE.
* PlatformWin.cmake:
Modified Paths
Diff
Modified: trunk/Source/WebKitLegacy/ChangeLog (256418 => 256419)
--- trunk/Source/WebKitLegacy/ChangeLog 2020-02-12 01:21:09 UTC (rev 256418)
+++ trunk/Source/WebKitLegacy/ChangeLog 2020-02-12 01:50:19 UTC (rev 256419)
@@ -1,3 +1,25 @@
+2020-02-11 Fujii Hironori <hironori.fu...@sony.com>
+
+ [Win][CMake][WK1] WebKitLegacyGUID doesn't get recompiled by updating IDL files
+ https://bugs.webkit.org/show_bug.cgi?id=207456
+
+ Reviewed by Don Olmstead.
+
+ In GENERATE_INTERFACE macro, only *.h files were specified to
+ OUTPUT of add_custom_command. Generated *_i.c files were just
+ marked GENERATED source file property. So, WebKitLegacyGUID didn't
+ know which command generates *_i.c files.
+
+ Added a new option HEADER_ONLY to GENERATE_INTERFACE. If
+ HEADER_ONLY is not specified, append ${_filewe}_i.c to the OUTPUT.
+ Only AccessibleStates.idl and IA2CommonTypes.idl are marked with
+ HEADER_ONLY.
+
+ Removed _defines and _depends options to simplify
+ GENERATE_INTERFACE.
+
+ * PlatformWin.cmake:
+
2020-02-10 Truitt Savell <tsav...@apple.com>
Unreviewed, rolling out r256091.
Modified: trunk/Source/WebKitLegacy/PlatformWin.cmake (256418 => 256419)
--- trunk/Source/WebKitLegacy/PlatformWin.cmake 2020-02-12 01:21:09 UTC (rev 256418)
+++ trunk/Source/WebKitLegacy/PlatformWin.cmake 2020-02-12 01:50:19 UTC (rev 256419)
@@ -274,19 +274,6 @@
source_group(Classes FILES ${WebKitLegacy_SOURCES_Classes})
source_group(WebCoreSupport FILES ${WebKitLegacy_SOURCES_WebCoreSupport})
-# Build the COM interface:
-macro(GENERATE_INTERFACE _infile _defines _depends)
- get_filename_component(_filewe ${_infile} NAME_WE)
- add_custom_command(
- OUTPUT ${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/${_filewe}.h
- MAIN_DEPENDENCY ${_infile}
- DEPENDS ${_depends}
- COMMAND midl.exe /I "${CMAKE_CURRENT_SOURCE_DIR}/win/Interfaces" /I "${CMAKE_CURRENT_SOURCE_DIR}/win/Interfaces/Accessible2" /I "${WebKitLegacy_DERIVED_SOURCES_DIR}/include" /I "${CMAKE_CURRENT_SOURCE_DIR}/win" /WX /char signed /env win32 /tlb "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${_filewe}.tlb" /out "${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces" /h "${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/${_filewe}.h" /iid "${_filewe}_i.c" ${_defines} "${CMAKE_CURRENT_SOURCE_DIR}/${_infile}"
- USES_TERMINAL VERBATIM)
- set_source_files_properties(${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/${_filewe}.h PROPERTIES GENERATED TRUE)
- set_source_files_properties(${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/${_filewe}_i.c PROPERTIES GENERATED TRUE)
-endmacro()
-
set(MIDL_DEFINES /D\ \"__PRODUCTION__=01\")
set(WEBKITLEGACY_IDL_DEPENDENCIES
@@ -384,6 +371,22 @@
"${WebKitLegacy_DERIVED_SOURCES_DIR}/include/autoversion.h"
)
+# Build the COM interface:
+function(GENERATE_INTERFACE _infile)
+ cmake_parse_arguments(opt "HEADER_ONLY" "" "" ${ARGN})
+ get_filename_component(_filewe ${_infile} NAME_WE)
+ set(output ${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/${_filewe}.h)
+ if (NOT ${opt_HEADER_ONLY})
+ list(APPEND output ${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/${_filewe}_i.c)
+ endif ()
+ add_custom_command(
+ OUTPUT ${output}
+ MAIN_DEPENDENCY ${_infile}
+ DEPENDS ${WEBKITLEGACY_IDL_DEPENDENCIES}
+ COMMAND midl.exe /I "${CMAKE_CURRENT_SOURCE_DIR}/win/Interfaces" /I "${CMAKE_CURRENT_SOURCE_DIR}/win/Interfaces/Accessible2" /I "${WebKitLegacy_DERIVED_SOURCES_DIR}/include" /I "${CMAKE_CURRENT_SOURCE_DIR}/win" /WX /char signed /env win32 /tlb "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${_filewe}.tlb" /out "${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces" /h "${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/${_filewe}.h" /iid "${_filewe}_i.c" ${MIDL_DEFINES} "${CMAKE_CURRENT_SOURCE_DIR}/${_infile}"
+ USES_TERMINAL VERBATIM)
+endfunction()
+
add_custom_command(
OUTPUT ${WebKitLegacy_DERIVED_SOURCES_DIR}/include/autoversion.h
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
@@ -390,16 +393,16 @@
COMMAND ${PERL_EXECUTABLE} ${WEBKIT_LIBRARIES_DIR}/tools/scripts/auto-version.pl ${WebKitLegacy_DERIVED_SOURCES_DIR}
VERBATIM)
-GENERATE_INTERFACE(win/Interfaces/WebKit.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleApplication.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/Accessible2.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/Accessible2_2.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleRelation.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleStates.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/IA2CommonTypes.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleEditableText.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleText.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
-GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleText2.idl ${MIDL_DEFINES} "${WEBKITLEGACY_IDL_DEPENDENCIES}")
+GENERATE_INTERFACE(win/Interfaces/WebKit.idl)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleApplication.idl)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/Accessible2.idl)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/Accessible2_2.idl)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleRelation.idl)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleStates.idl HEADER_ONLY)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/IA2CommonTypes.idl HEADER_ONLY)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleEditableText.idl)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleText.idl)
+GENERATE_INTERFACE(win/Interfaces/Accessible2/AccessibleText2.idl)
add_library(WebKitLegacyGUID STATIC
"${WebKitLegacy_DERIVED_SOURCES_DIR}/Interfaces/WebKit.h"
@@ -435,7 +438,7 @@
Shlwapi
Usp10
Version
- WebKitGUID${DEBUG_SUFFIX}
+ WebKitLegacyGUID
WindowsCodecs
Winmm
dxguid
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes