[CMake] CMake does not support the dep files for implicit dependency
https://bugs.webkit.org/show_bug.cgi?id=161433

Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2016-10-09
Reviewed by Brent Fulgham.

Created a Perl script to generate all IDL bindings for CMake.
This script can regenerate outdated bindings by based on the
supplemental dependency and dep files created by
'--write-dependencies' switch of generate-bindings.pl.

add_custom_target is used to invoke the script instead of
add_custom_command because Ninja deletes all output files before
executing the command in case of add_custom_command.

USES_TERMINAL option of add_custom_target has two effects:
1) Not buffering output of the command
2) Invoking the command in the special Ninja pool which inhibits parallel build
One needs to use CMake 3.2 or later to enable this feature.

.:

* Source/cmake/WebKitMacros.cmake (GENERATE_BINDINGS): Included
ProcessorCount.  Added a new argument 'target'.  Use
add_custom_target instead of add_custom_command.  Invoke the new
script.

Source/WebCore:

* CMakeLists.txt: Specified target names for
GENERATE_BINDINGS. Added dependency for the targets.
* bindings/scripts/generate-bindings-all.pl: Added.

Tools:

* DumpRenderTree/CMakeLists.txt: Specified a target name for
GENERATE_BINDINGS. Added dependency for the target.
* WebKitTestRunner/CMakeLists.txt: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@206972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
8 files changed