mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-09-10 12:03:16 +02:00
made the scanner config info to be rebuilt for the default setting cfg only
This commit is contained in:
parent
bc57f26a7c
commit
f901312dc7
1 changed files with 30 additions and 3 deletions
|
@ -20,8 +20,10 @@ import org.eclipse.cdt.build.internal.core.scannerconfig2.CfgScannerConfigProfil
|
|||
import org.eclipse.cdt.core.CCorePlugin;
|
||||
import org.eclipse.cdt.core.envvar.IEnvironmentVariable;
|
||||
import org.eclipse.cdt.core.envvar.IEnvironmentVariableManager;
|
||||
import org.eclipse.cdt.core.model.CoreModel;
|
||||
import org.eclipse.cdt.core.resources.ACBuilder;
|
||||
import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
|
||||
import org.eclipse.cdt.core.settings.model.ICProjectDescription;
|
||||
import org.eclipse.cdt.make.core.scannerconfig.IScannerConfigBuilderInfo2;
|
||||
import org.eclipse.cdt.make.internal.core.scannerconfig2.SCProfileInstance;
|
||||
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
||||
|
@ -56,6 +58,8 @@ public class ScannerConfigBuilder extends ACBuilder {
|
|||
public static final int FORCE_DISCOVERY = 1 << 1;
|
||||
|
||||
public final static String BUILDER_ID = ManagedBuilderCorePlugin.getUniqueIdentifier() + ".ScannerConfigBuilder"; //$NON-NLS-1$
|
||||
|
||||
private static final boolean BUILD_ALL_CONFIGS = false;
|
||||
|
||||
public ScannerConfigBuilder() {
|
||||
super();
|
||||
|
@ -74,9 +78,32 @@ public class ScannerConfigBuilder extends ACBuilder {
|
|||
if(bInfo != null){
|
||||
IConfiguration cfgs[] = bInfo.getManagedProject().getConfigurations();
|
||||
if(cfgs.length != 0){
|
||||
monitor.beginTask(MakeMessages.getString("ScannerConfigBuilder.Invoking_Builder"), cfgs.length); //$NON-NLS-1$
|
||||
for(int i = 0; i < cfgs.length; i++){
|
||||
build(cfgs[i], 0, new SubProgressMonitor(monitor, 1));
|
||||
if(!BUILD_ALL_CONFIGS){
|
||||
ICProjectDescription des = CoreModel.getDefault().getProjectDescription(getProject(), false);
|
||||
IConfiguration cfg = null;
|
||||
if(des != null){
|
||||
ICConfigurationDescription settingCfgDes = des.getDefaultSettingConfiguration();
|
||||
if(settingCfgDes != null){
|
||||
for(int i = 0; i < cfgs.length; i++){
|
||||
if(settingCfgDes.getId().equals(cfgs[i].getId())){
|
||||
cfg = cfgs[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(cfg != null){
|
||||
cfgs = new IConfiguration[]{cfg};
|
||||
} else {
|
||||
cfgs = new IConfiguration[0];
|
||||
}
|
||||
}
|
||||
int numWork = cfgs.length;
|
||||
if(numWork > 0){
|
||||
monitor.beginTask(MakeMessages.getString("ScannerConfigBuilder.Invoking_Builder"), numWork); //$NON-NLS-1$
|
||||
for(int i = 0; i < cfgs.length; i++){
|
||||
build(cfgs[i], 0, new SubProgressMonitor(monitor, 1));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue