|View Issue Details [ Jump to Notes ] ||[ Issue History ] [ Print ] |
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000542||OMNeT++||IDE / C++ development||public||2012-02-22 14:15||2012-02-22 14:15|
|Assigned To|| |
|Product Version||4.2|| |
|Target Version||Fixed in Version|| |
|Summary||0000542: dependency scanner of the IDE only works when using .cc extension|
|Description||Starting with 4.2 the behavior of the new dependency scanner used by IDE and the old used by opp_makemake differs. The new dependency scanner only works for .cc files. When using .cpp files no dependencies are added to the makefile. |
For more details let me quote Rudolf Honing:
"Till 4.1 both the IDE and the command line opp_makemake generated the dependencies more or less the same way. It was basically scanning the files and looking for #include statements. Whatever it found it added to the dependency. While this works most of the time, this is not a correct solution because #include statements between #ifdef statements are always included too. With the introduction of "Project Features" in 4.2 we got a lot of similar ifdef blocks (in INET primarily) and the dependencies were incorrect in these cases (you had the dependencies from features that were turned out). To figure out which #includes are relevant and which ones are excluded we had to rely on CDT's indexer so the dependency generator was rewritten in the IDE to use the output from the CDT indexer.
The original approach for the opp_makemake was that you had to specify on the command line whether you are using .cc or .cpp files in your project (it was not possible to mix both). This is in fact also a bad behavior (it just should work without any issues with both extension (even if mixed)). This (bad) behavior was not re-implemented in IDE, but rather we opted to use only .cc for now and add *correct* support for both .cc and .cpp in a later release.
Long story short, this is a missing/postponed feature for the IDE "
|Additional Information||This issue was disscused at length on the mailing list, see http://groups.google.com/group/omnetpp/browse_thread/thread/d0e74f6e8b5a09cc/ [^] for details.|
|Tags||No tags attached.|