Bug 163882
| Summary: | WriteFileIfChanged of preprocess-idls.pl causes infinite preprocessing | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Fujii Hironori <fujii.hironori> |
| Component: | Tools / Tests | Assignee: | Fujii Hironori <fujii.hironori> |
| Status: | ASSIGNED | ||
| Severity: | Normal | CC: | achristensen, cdumez, lforschler, mjs |
| Priority: | P2 | ||
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Fujii Hironori
Updating supplemental_dependency.tmp triggers regenerating all binding.
To solve this problem, WriteFileIfChanged of preprocess-idls.pl was introduced in Bug 117708.
But, this approach causes infinite preprocessing.
CMake build uses generate-bindings-all.pl which has solved the problem.
WriteFileIfChanged is useless for CMake build anymore, but causes unnecessary preprocessing.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Fujii Hironori
Just stopping using WriteFileIfChanged of preprocess-idls.pl
causes another problem. Modifying any IDL will trigger
recompiling DOMWindow.idl, DedicatedWorkerGlobalScope.idl and
WorkerGlobalScope.idl. Because preprocess-idls.pl generates
DOMWindowConstructors.idl, WorkerGlobalScopeConstructors.idl and
DedicatedWorkerGlobalScopeConstructors.idl. I think this is
better than the infinite preprocessing.
There is a solution to solve both problems. Remember time-stamps
of all IDL in a text file. If the time-stamp is changed, invoke
preprocess-idls.pl.