My previous patch (Bug 180521) doesn't solve the issue perfectly. Another incremental build failure happens. https://build.webkit.org/builders/WinCairo%2064-Bit%20Release/builds/9336
WTF forwarding headers are generated by using WTF_PRE_BUILD_COMMAND in Source/WTF/wtf/PlatformWin.cmake. But, BYPRODUCTS of add_custom_target is not specified. <https://cmake.org/cmake/help/v3.10/command/add_custom_target.html> So, Ninja doesn't know the forwarding headers are generated.
Make sure that cmake property GENERATED is enabled for generates files
Just setting GENERATED source file property isn't enough in this case. Ninja have to know which command generates the dependent files.
Created attachment 329868 [details] WIP patch
Created attachment 329899 [details] WIP patch
Unfortunately, this WIP patch doen't work as expected. Modifying WTF header doesn't trigger the recompilation of TestWTF. I guess this is caused by case insensitive file system. Condition.cpp.obj of TestWTF depends on ForwardingHeaders/wtf/Condition.h. > C:\webkit\ga\WebKitBuild\Debug>ninja -t deps Tools\TestWebKitAPI\CMakeFiles\TestWTFLib.dir\Tests\WTF\Condition.cpp.obj > (...) > DerivedSources/ForwardingHeaders/wtf/Condition.h > (...) It's a lowercase wtf. But, actual build rule is uppercase WTF. > C:\webkit\ga\WebKitBuild\Debug>ninja -t query DerivedSources/ForwardingHeaders/WTF/Condition.h > DerivedSources/ForwardingHeaders/WTF/Condition.h: > input: CUSTOM_COMMAND > ../../Source/WTF/wtf/Condition.h > outputs: > cmake_object_order_depends_target_WTF > Source/WTF/wtf/WTFForwardingHeaders > Source/WTF/wtf/CMakeFiles/WTFForwardingHeaders
I've confirmed my speculation is right. I'll fix it beforehand in Bug 181022.
Created attachment 329995 [details] Patch
Created attachment 330100 [details] Patch
Created attachment 330109 [details] Patch
Comment on attachment 330109 [details] Patch r=me
Comment on attachment 330109 [details] Patch Clearing flags on attachment: 330109 Committed r226306: <https://trac.webkit.org/changeset/226306>
All reviewed patches have been landed. Closing bug.
<rdar://problem/36260870>
REGRESSION: Bug 181324