Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [cdt-dev] Extending exportArtifactInfo in Configuration class


Thanks for the suggestions. I'll try it out and see if I can get what I need.


-----Original Message-----
From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of James Blackburn
Sent: 20 May 2010 10:32
To: CDT General developers list.
Subject: Re: [cdt-dev] Extending exportArtifactInfo in Configuration class

On 20 May 2010 10:07, Matthew Fortune <Matthew.Fortune@xxxxxxxxxx> wrote:
> To make this work with the minimum user effort I'm trying to create external
> settings so that I can pass the names of the artifacts from each referenced
> project, to the top level project. This kind of feature is implemented for
> shared libraries and static libraries in exportArtifactInfo in the
> Configuration class.  I have not been able to find any way of extending this
> so that I can export settings for other project types.

This is how I would do it. I did something similar to allow
propagating pre-include (-include) files around between referenced
projects in the workspace:

To do what you want is just a little bit of plumbing:
  - You'll need to add a new ICSettingEntry type for an executable -
the external settings will be contributed in this form
  - Add an new IOption type to represent the executable setting entry
in the build model
  - Map the build option type to ICSettingEntry (see examples in
managedbuild BuildLanguageData).
  - Add an 'Export Settings' page (+ paths and symbols if you want)
for the type (this is very few lines of code, see bug 115601)

Then you'll be able to export these settings from one configuration
and have them automatically picked up in referencing configs.

You can have this working automatically by taking a look at

The plumbing isn't hard, do submit patches for additional option
types. It makes sense that the cdt platform supports all the option
types required by integrators. Though the UI is probably too
specialist to be provided by CDT out the box (just extend the existing
tabs and contribute them in your own plugins).

cdt-dev mailing list

Back to the top