diff options
author | Mikhail Sennikovsky | 2007-05-24 10:19:36 +0000 |
---|---|---|
committer | Mikhail Sennikovsky | 2007-05-24 10:19:36 +0000 |
commit | f901312dc72901017d71594226862cf500d8db80 (patch) | |
tree | 4e60bbc31d7eeef86cd4b5a77e7e61b1a93f1279 /build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build | |
parent | bc57f26a7ce283a046ac6ff7cda1a90fcc14748d (diff) | |
download | org.eclipse.cdt-f901312dc72901017d71594226862cf500d8db80.tar.gz org.eclipse.cdt-f901312dc72901017d71594226862cf500d8db80.tar.xz org.eclipse.cdt-f901312dc72901017d71594226862cf500d8db80.zip |
made the scanner config info to be rebuilt for the default setting cfg only
Diffstat (limited to 'build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build')
-rw-r--r-- | build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ScannerConfigBuilder.java | 33 |
1 files changed, 30 insertions, 3 deletions
diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ScannerConfigBuilder.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ScannerConfigBuilder.java index 6b345d142c4..02d0364fa4b 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ScannerConfigBuilder.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/build/core/scannerconfig/ScannerConfigBuilder.java @@ -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)); + } } } |