Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] CDT Include PathEntry Management


Good morning (and good evening to some),

We've developed a wrapper around the Standard Make CDT project that generates company standard makefiles for our developers.  As well as generating makefiles, it also auto-populates the CDT project properties including error parsers, binary parsers, make command, include paths, etc.

Unfortunately, our tool over-writes the CDT include paths whenever the user makes a change to our wrapper's settings.  In many cases, it would be desirable for the user to add CDT include paths manually and expect them not to be removed by our automated tool.  Our automated tool simply clears the existing includes and populates the list with its own.

Is there a way to define an include PathEntry subtype that still works as an include path for the CDT, but can easily be identified by our tool as removable.

Currently we use:

IIncludeEntry include = CoreModel.newIncludeEntry(...);
ICProject.setRawPathEntries({include...});

Is it possible, or allowed, to somehow implement IIncludeEntry as our own include type... but still be compatible with the CDT?  And, later, only remove those include paths that are based on our own implementation?  Scanning the CDT code, I see the implementation of IIncludeEntry, IncludeEntry, is internal and extends an internal APathEntry.

Would it be safe to simply extend IncludeEntry to give it a new type name (no actual changes to the methods) even though it is internal?

public class RCIncludeEntry extends IncludeEntry  { }

Then, we can add include paths to the CDT properties using this type, and subsequently manage only our type of include entry, leaving the base CDT stuff alone.

Thanks for your thoughts,

Chad Barnes
Rockwell Collins, Inc.





Back to the top