Bug 254806
| Summary: | Consider merging MAIN_DEPENDENCY into DEPENDS throughout | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Anne van Kesteren <annevk> |
| Component: | CMake | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED WONTFIX | ||
| Severity: | Normal | CC: | fujii.hironori |
| Priority: | P2 | ||
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Anne van Kesteren
In https://github.com/WebKit/WebKit/pull/12173 I painstakingly discovered a couple things:
* The file names following MAIN_DEPENDENCY can contain a typo without any bot noticing.
* Merging MAIN_DEPENDENCY into DEPENDS makes WebKitGTK and WinCairo happy. (Thanks to Philn for the suggestion.)
I think that suggests deprecating MAIN_DEPENDENCY, but CMake experts would ideally make that call.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Fujii Hironori
MAIN_DEPENDENCY takes only a single argument.
https://cmake.org/cmake/help/latest/command/add_custom_command.html
But, original code specifies multiple files to MAIN_DEPENDENCY.
CMake ignored all of them but the last one xmlnsattrs.in.
> #############################################
> # Custom command for WebCore\DerivedSources\TagName.cpp
>
> build WebCore\DerivedSources\TagName.cpp WebCore\DerivedSources\TagName.h | ${cmake_ninja_workdir}WebCore\DerivedSources\TagName.cpp ${cmake_ninja_workdir}WebCore\DerivedSources\TagName.h: CUSTOM_COMMAND C$:\home\webkit\gb\Source\WebCore\xml\xmlnsattrs.in C$:\home\webkit\gb\Source\WebCore\bindings\scripts\Hasher.pm C$:\home\webkit\gb\Source\WebCore\bindings\scripts\StaticString.pm C$:\home\webkit\gb\Source\WebCore\dom\make_names.pl C$:\home\webkit\gb\Source\WebCore\bindings\scripts\CodeGenerator.pm C$:\home\webkit\gb\Source\WebCore\bindings\scripts\CodeGeneratorJS.pm C$:\home\webkit\gb\Source\WebCore\bindings\scripts\IDLParser.pm C$:\home\webkit\gb\Source\WebCore\bindings\scripts\InFilesParser.pm C$:\home\webkit\gb\Source\WebCore\bindings\scripts\preprocessor.pm || Source\JavaScriptCore\Bytecodes Source\JavaScriptCore\JSCBuiltins Source\JavaScriptCore\JavaScriptCoreSharedScripts Source\JavaScriptCore\JavaScriptCore_CopyHeaders Source\JavaScriptCore\JavaScriptCore_CopyPrivateHeaders Source\JavaScriptCore\LowLevelInterpreterLib Source\ThirdParty\ANGLE\ANGLE-webgl-headers Source\ThirdParty\ANGLE\LibGLESv2EntryPointsHeaders Source\ThirdParty\ANGLE\include\ANGLEWebGLHeaders Source\WTF\wtf\WTF_CopyHeaders Source\WTF\wtf\WTF_CopyPreferences Source\WebCore\PAL\pal\PAL Source\WebCore\PAL\pal\PAL_CopyHeaders Source\WebCore\WebCoreBindings Source\WebInspectorUI\WebInspectorUI bin64\JavaScriptCore.dll bin64\LLIntOffsetsExtractor.exe bin64\LLIntSettingsExtractor.exe bin64\WTF.dll bin64\libEGL.dll bin64\libGLESv2.dll lib64\ANGLE.lib
> COMMAND = cmd.exe /C "cd /D C:\home\webkit\gb\WebKitBuild\Debug\Source\WebCore && C:\xampp\perl\bin\perl.exe C:/home/webkit/gb/Source/WebCore/dom/make_names.pl --outputDir C:/home/webkit/gb/WebKitBuild/Debug/WebCore/DerivedSources --enum TagName --elements C:/home/webkit/gb/Source/WebCore/html/HTMLTagNames.in --elements C:/home/webkit/gb/Source/WebCore/svg/svgtags.in --elements C:/home/webkit/gb/Source/WebCore/mathml/mathtags.in --attrs C:/home/webkit/gb/Source/WebCore/html/HTMLAttributeNames.in --attrs C:/home/webkit/gb/Source/WebCore/mathml/mathattrs.in --attrs C:/home/webkit/gb/Source/WebCore/svg/svgattrs.in --attrs C:/home/webkit/gb/Source/WebCore/svg/xlinkattrs.in --attrs C:/home/webkit/gb/Source/WebCore/xml/xmlattrs.in --attrs C:/home/webkit/gb/Source/WebCore/xml/xmlnsattrs.in"
> DESC = Generating ../../WebCore/DerivedSources/TagName.cpp, ../../WebCore/DerivedSources/TagName.h
> restat = 1
Fujii Hironori
I checked MAIN_DEPENDENCY of other CMakeLists.txt.
I found no problems.
Closed.