Bug 163882

Summary: WriteFileIfChanged of preprocess-idls.pl causes infinite preprocessing
Product: WebKit Reporter: Fujii Hironori <fujii.hironori>
Component: Tools / TestsAssignee: 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
Reported 2016-10-24 02:18:51 PDT
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
Fujii Hironori
Comment 1 2016-10-27 21:22:19 PDT
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.
Note You need to log in before you can comment on or make changes to this bug.