<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - [CMake] CMake does not support the dep file of preprocess-idls.pl --supplementalMakefileDeps"
href="https://bugs.webkit.org/show_bug.cgi?id=161433">161433</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>[CMake] CMake does not support the dep file of preprocess-idls.pl --supplementalMakefileDeps
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr>
<tr>
<th>Product</th>
<td>WebKit
</td>
</tr>
<tr>
<th>Version</th>
<td>WebKit Nightly Build
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Unspecified
</td>
</tr>
<tr>
<th>OS</th>
<td>Unspecified
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>Normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P2
</td>
</tr>
<tr>
<th>Component</th>
<td>Tools / Tests
</td>
</tr>
<tr>
<th>Assignee</th>
<td>webkit-unassigned@lists.webkit.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>Hironori.Fujii@sony.com
</td>
</tr>
<tr>
<th>CC</th>
<td>lforschler@apple.com
</td>
</tr></table>
<p>
<div>
<pre>[CMake] CMake does not support the dep file of preprocess-idls.pl --supplementalMakefileDeps
preprocess-idls.pl has a switch --supplementalMakefileDeps to generate dynamic dependency file (SupplementalDependencies.dep).
And, Source/WebCore/DerivedSources.make includes the file:
<span class="quote">> -include $(SUPPLEMENTAL_MAKEFILE_DEPS)</span >
But, CMake does not support the dynamic custom dependencies.
For example, we have a following problem of incremental build:
1) Build
<span class="quote">> ./Tools/Scripts/build-webkit --gtk --debug --64-bit</span >
2) Rename webkitBattery to webkitBattery2
<span class="quote">> sed -i s/webkitBattery/webkitBattery2/ Source/WebCore/Modules/battery/NavigatorBattery.*</span >
3) Build again
<span class="quote">> ./Tools/Scripts/build-webkit --gtk --debug --64-bit</span >
4) But, WebKitBuild/Debug/DerivedSources/WebCore/JSNavigator.cpp is not updated
5) We need to manually touch supplemented IDL files.
<span class="quote">> touch Source/WebCore/page/Navigator.idl</span >
There are three solutions:
A) Use DerivedSources.make (<a class="bz_bug_link
bz_status_NEW "
title="NEW - [meta] Make cmake build system use DerivedSources.make"
href="show_bug.cgi?id=130339">Bug 130339</a>)
B) Generate Makefile for preprocess-idls.pl and generate-bindings.pl and invoke 'make'
C) Implement Make-like tool in Python or Perl</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>