Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Rebuilding managed build project on properties change

>> Can you tell me how changes in CDT tool properties currently cause a
>> rebuild, so that I can figure out why the same code does not work for my
>> new options?

> [Mikhail] Most of the MBS model objects (Configuration, ToolChain, Tool,
> Option) maintain the rebuild state that gets set to "rebuild" when the
> property of the object is changed.
> The rebuild states are analyzed and the set of resources affected by the
> MBS Model changes is calculated. This is done by the MBS Build Model.
> The affected resources are then removed and rebuild.
> See org.eclipse.cdt.managedbuilder.buildmodel.BuildDescriptionManager
> class and the implementation of the 
> org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder.bu
> ild() method.
> The build/rebuild itself is caused by the .cdtbuild file update that is
> performed while persisting the MBS properties.

Mikhail,

I have looked further into this rebuild problem on change of
toolchain-level options.

It seems the ToolChain model object correctly signals that a rebuild is
required, and just like you explained the BuildDescriptionManager is called
to determine which resources are affected. However in this stage only
the (local) Tools are checked, and since these have not changed no
resources are affected. Result is that make is called, but it decides
nothing has changed and so nothing happens.

Shouldn't the BuildDescriptionManager take into account the ToolChain-level
options and effectively update all resources?

Regards,
  Wieant


Back to the top