View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0002058 | CMake | CMake | public | 2005-07-19 15:11 | 2005-08-05 13:06 | ||||
Reporter | Alex Neundorf | ||||||||
Assigned To | Ken Martin | ||||||||
Priority | normal | Severity | major | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | OS | OS Version | |||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0002058: check for usage of ADD_CUSTOM_COMMAND too simple | ||||||||
Description | Hi, the makefile generator v3 reports warnings if the file generated via ADD_CUSTOM_COMMAND doesn't appear as a source file in any of the targets. This is not enough, I get lots of invalid warnings. I have two types of rules where this happens: -the generation of moc files which are included in the source file instead of being compiled separatly -the creation of an external library on which all sources depends, but which doesn't appear as a source file In both cases the output of the ADD_CUSTOM_COMMAND is added via SET_SOURCE_FILES_PROPERTIES( OBJECT_DEPENDS) as a dependency to a source file. So these manually added dependencies should also be checked before warning about unused custom rules. Or it should be possible to disable this warning :-/ As it is, it makes the messages of cmake completely unusable, since everything is flooded by these (invalid) warnings. Alex | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | |||||||||
Relationships | |
Relationships |
Notes | |
(0002698) Bill Hoffman (manager) 2005-07-19 16:58 |
Sounds like the object_depends need to be checked. |
(0002706) Ken Martin (developer) 2005-07-20 13:06 |
OBJECT_DEPENDS is checked (line 64 of cmTarget.cxx) Are you sure these rules are used? The warning should only show up if the rules are not being used. It could be that these are extra rules and the required files are being generated by another set of rules. If you get the warning, but your build works, then grep -R in your build tree for the rule, to see where the rule is. The directory the rule is in will be the name of the target that is actually using the rule. A rule that isn't used by a target should not even be written to your binary tree, and I don't think they are. |
(0002707) Ken Martin (developer) 2005-07-20 13:07 |
Beforehand if you had extra rules that were not being used it silently ignored them, now it warns. |
(0002768) Ken Martin (developer) 2005-08-05 13:06 |
All custom commands are written for every target even if they are not used. This will be used in the future for chaining dependencies through generated header files (like for Qt 4) |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |