Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Gvozdev2013-03-10 11:21:32 +0000
committerAndrew Gvozdev2013-03-10 11:46:12 +0000
commit180b19205413a0d73baf1a19adf98c816b38d3fb (patch)
treefb2186b8701c4081f8f42b40659925897538a219 /build/org.eclipse.cdt.managedbuilder.gnu.ui
parent2bccd664165de845640fe615a7c5b1f0b87995e9 (diff)
downloadorg.eclipse.cdt-180b19205413a0d73baf1a19adf98c816b38d3fb.tar.gz
org.eclipse.cdt-180b19205413a0d73baf1a19adf98c816b38d3fb.tar.xz
org.eclipse.cdt-180b19205413a0d73baf1a19adf98c816b38d3fb.zip
bug 357442: Tidy EnvironmentVariableManagerToolChain
Diffstat (limited to 'build/org.eclipse.cdt.managedbuilder.gnu.ui')
-rw-r--r--build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/IsGnuCygwinToolChainSupported.java19
1 files changed, 17 insertions, 2 deletions
diff --git a/build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/IsGnuCygwinToolChainSupported.java b/build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/IsGnuCygwinToolChainSupported.java
index 9a2fd648827..21998a342dc 100644
--- a/build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/IsGnuCygwinToolChainSupported.java
+++ b/build/org.eclipse.cdt.managedbuilder.gnu.ui/src/org/eclipse/cdt/managedbuilder/gnu/cygwin/IsGnuCygwinToolChainSupported.java
@@ -11,9 +11,15 @@
*******************************************************************************/
package org.eclipse.cdt.managedbuilder.gnu.cygwin;
+import org.eclipse.cdt.core.envvar.IEnvironmentVariable;
+import org.eclipse.cdt.core.envvar.IEnvironmentVariableManager;
+import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
import org.eclipse.cdt.internal.core.Cygwin;
+import org.eclipse.cdt.internal.core.envvar.EnvironmentVariableManager;
+import org.eclipse.cdt.managedbuilder.core.IConfiguration;
import org.eclipse.cdt.managedbuilder.core.IManagedIsToolChainSupported;
import org.eclipse.cdt.managedbuilder.core.IToolChain;
+import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
import org.eclipse.cdt.managedbuilder.internal.envvar.EnvironmentVariableManagerToolChain;
import org.osgi.framework.Version;
@@ -27,8 +33,17 @@ public class IsGnuCygwinToolChainSupported implements IManagedIsToolChainSupport
@Override
public boolean isSupported(IToolChain toolChain, Version version, String instance) {
- String envPath = EnvironmentVariableManagerToolChain.getDefault().getVariableInConfigurationContext(ENV_PATH, toolChain, true);
+ IConfiguration cfg = toolChain.getParent();
+ ICConfigurationDescription cfgDescription = cfg != null ? ManagedBuildManager.getDescriptionForConfiguration(cfg) : null;
+
+ IEnvironmentVariableManager envMngr;
+ if (cfgDescription != null) {
+ envMngr = EnvironmentVariableManager.getDefault();
+ } else {
+ envMngr = new EnvironmentVariableManagerToolChain(toolChain);
+ }
+ IEnvironmentVariable var = envMngr.getVariable(ENV_PATH, cfgDescription, true);
+ String envPath = var != null ? var.getValue() : null;
return Cygwin.isAvailable(envPath);
}
-
}

Back to the top