View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0013988 | CMake | CMake | public | 2013-03-06 17:59 | 2013-10-07 10:03 | ||||
Reporter | bamiaux | ||||||||
Assigned To | Peter Kuemmel | ||||||||
Priority | normal | Severity | major | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | windows | OS | windows | OS Version | 7 | ||||
Product Version | CMake 2.8.10.2 | ||||||||
Target Version | Fixed in Version | CMake 2.8.11 | |||||||
Summary | 0013988: Ninja: generated files like moc, huge deps list (bis) | ||||||||
Description | I believe the bug http://www.cmake.org/Bug/view.php?id=13874 [^] is still present. Compiling the included project mandelbrot with the nightly build taken at http://www.cmake.org/files/dev/cmake-2.8.10.20130305-gd559be-win32-x86.zip [^] still have cpp files which depend on every generated moc file. This is the same behavior I get in my own project. This is not restricted to moc files, actually all generated files get put as dependency to every cpp leading to very huge ninja dependencies. This bug is supposed to have been fixed by the following commit http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bbea30eec88fe6dc98d716f16141c6aab6a75314 [^] | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | |||||||||
Relationships | ||||||
|
Relationships |
Notes | |
(0032544) Peter Kuemmel (developer) 2013-03-09 03:03 |
Thanks for checking again. I did following steps. - unziped the cmake binary - set PATH so "cmake -version" prints "cmake version 2.8.10.20130305-gd559be" - called in a build dir "cmake -GNinja <source dir>" - ninja builds 8 files - opened a generated moc_ file - touched it - "ninja -v" builds 2 files: the moc_ and links This is the correct behavior. The old and buggy behavior could be reproduced by replacing in build.ninja all "|| moc_" strings with "| moc_", then ninja builds 6 files when a moc_ is touched. This bug is fixed. But maybe you found another bug. Could you check again? |
(0032598) bamiaux (reporter) 2013-03-13 05:28 |
I checked again, and you are right, it doesn't rebuild more files than necessary. I was confused by the fact that all moc files are still mentionned for every cpp object rule. Are those rules here to ensure every moc is generated before any cpp is compiled ? It seems to me that a moc should be made dependent only on its header |
(0032599) Peter Kuemmel (developer) 2013-03-13 06:22 |
Yes, principally the cpp files does not depend on the moc files. (only when you include the moc file in the cpp file). But this configures FindQt, and I don't know what the reasons where to add such dependency. |
(0033994) Robert Maynard (manager) 2013-10-07 10:03 |
Closing resolved issues that have not been updated in more than 4 months. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2013-03-06 17:59 | bamiaux | New Issue | |
2013-03-07 11:46 | Bill Hoffman | Assigned To | => Peter Kuemmel |
2013-03-07 11:46 | Bill Hoffman | Status | new => assigned |
2013-03-09 03:03 | Peter Kuemmel | Note Added: 0032544 | |
2013-03-09 06:11 | Peter Kuemmel | Relationship added | related to 0013592 |
2013-03-13 05:28 | bamiaux | Note Added: 0032598 | |
2013-03-13 06:22 | Peter Kuemmel | Note Added: 0032599 | |
2013-03-13 06:22 | Peter Kuemmel | Status | assigned => resolved |
2013-03-13 06:22 | Peter Kuemmel | Fixed in Version | => CMake 2.8.11 |
2013-03-13 06:22 | Peter Kuemmel | Resolution | open => fixed |
2013-10-07 10:03 | Robert Maynard | Note Added: 0033994 | |
2013-10-07 10:03 | Robert Maynard | Status | resolved => closed |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |