diff options
author | Sean Evoy | 2004-03-16 22:12:27 +0000 |
---|---|---|
committer | Sean Evoy | 2004-03-16 22:12:27 +0000 |
commit | 1661bb802280c66eb06adca1ff4d5b1bdbabccc2 (patch) | |
tree | 30919b528d2b47131e5a60cb5575d07b261191c5 | |
parent | 4fdafaa433452f441b264855e3fbc15302d32a4d (diff) | |
download | org.eclipse.cdt-1661bb802280c66eb06adca1ff4d5b1bdbabccc2.tar.gz org.eclipse.cdt-1661bb802280c66eb06adca1ff4d5b1bdbabccc2.tar.xz org.eclipse.cdt-1661bb802280c66eb06adca1ff4d5b1bdbabccc2.zip |
Changes for bugzilla 54202 - Changing the active configuration forces a save in the cdtbuildfile.
13 files changed, 1147 insertions, 958 deletions
diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConfiguration.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConfiguration.java index 6399b4165e5..6b8ba50656d 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConfiguration.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/IConfiguration.java @@ -46,6 +46,19 @@ public interface IConfiguration extends IBuildObject { public ITool[] getTools(); /** + * Answers <code>true</code> the receiver has changes that need to be saved + * in the project file, else <code>false</code>. + * + * @return boolean + */ + public boolean isDirty(); + + /** + * @param isDirty + */ + public void setDirty(boolean isDirty); + + /** * Sets the name of the receiver to the value specified in the argument * * @param name @@ -57,6 +70,7 @@ public interface IConfiguration extends IBuildObject { * * @param option The option to change. * @param value The value to apply to the option. + * * @throws BuildException */ public void setOption(IOption option, boolean value) @@ -67,6 +81,8 @@ public interface IConfiguration extends IBuildObject { * * @param option The option that will be effected by change. * @param value The value to apply to the option. + * + * @throws BuildException */ public void setOption(IOption option, String value) throws BuildException; @@ -76,6 +92,8 @@ public interface IConfiguration extends IBuildObject { * * @param option The option to change. * @param value The values to apply to the option. + * + * @throws BuildException */ public void setOption(IOption option, String[] value) throws BuildException; @@ -83,8 +101,8 @@ public interface IConfiguration extends IBuildObject { /** * Overrides the tool command for a tool defined in the receiver. * - * @param tool - * @param command + * @param tool The tool that will have its command modified + * @param command The command */ public void setToolCommand(ITool tool, String command); diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ITarget.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ITarget.java index 201dc8ea48a..b9acca8b7ed 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ITarget.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ITarget.java @@ -67,6 +67,11 @@ public interface ITarget extends IBuildObject { public String getArtifactName(); /** + * @param isDirty + */ + public void setDirty(boolean isDirty); + + /** * Answers the unique ID of the binary parser associated with the target. * * @return String @@ -171,6 +176,14 @@ public interface ITarget extends IBuildObject { * @return boolean */ public boolean isAbstract(); + + /** + * Answers <code>true</code> the receiver has changes that need to be saved + * in the project file, else <code>false</code>. + * + * @return boolean + */ + public boolean isDirty(); /** * Answers <code>true</code> if the receiver is a target that is defined @@ -232,5 +245,4 @@ public interface ITarget extends IBuildObject { * @param resource */ public void updateOwner(IResource resource); - } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedBuildManager.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedBuildManager.java index 0bc952db459..27d65f99fbc 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedBuildManager.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/core/ManagedBuildManager.java @@ -35,6 +35,7 @@ import org.eclipse.cdt.core.parser.IScannerInfoChangeListener; import org.eclipse.cdt.core.parser.IScannerInfoProvider; import org.eclipse.cdt.managedbuilder.internal.core.Configuration; import org.eclipse.cdt.managedbuilder.internal.core.ManagedBuildInfo; +import org.eclipse.cdt.managedbuilder.internal.core.ToolReference; import org.eclipse.cdt.managedbuilder.core.ManagedBuilderCorePlugin; import org.eclipse.cdt.managedbuilder.internal.core.Target; import org.eclipse.cdt.managedbuilder.internal.core.Tool; @@ -206,18 +207,14 @@ public class ManagedBuildManager extends AbstractCExtension implements IScannerI * @param config * @param option */ - private static void setDirty(IConfiguration config, IOption option) { - // Set the build info dirty so builder will rebuild - IResource resource = config.getOwner(); - IManagedBuildInfo info = getBuildInfo(resource); - info.setDirty(true); - + private static void notifyListeners(IConfiguration config, IOption option) { // Continue if change is something that effect the scanner if (!(option.getValueType() == IOption.INCLUDE_PATH || option.getValueType() == IOption.PREPROCESSOR_SYMBOLS)) { return; } // Figure out if there is a listener for this change + IResource resource = config.getOwner(); List listeners = (List) getBuildModelListeners().get(resource); if (listeners == null) { return; @@ -237,8 +234,9 @@ public class ManagedBuildManager extends AbstractCExtension implements IScannerI */ public static void setOption(IConfiguration config, IOption option, boolean value) { try { + // Request a value change and set dirty if real change results config.setOption(option, value); - setDirty(config, option); + notifyListeners(config, option); } catch (BuildException e) { return; } @@ -254,7 +252,7 @@ public class ManagedBuildManager extends AbstractCExtension implements IScannerI public static void setOption(IConfiguration config, IOption option, String value) { try { config.setOption(option, value); - setDirty(config, option); + notifyListeners(config, option); } catch (BuildException e) { return; } @@ -270,19 +268,35 @@ public class ManagedBuildManager extends AbstractCExtension implements IScannerI public static void setOption(IConfiguration config, IOption option, String[] value) { try { config.setOption(option, value); - setDirty(config, option); + notifyListeners(config, option); } catch (BuildException e) { return; } } /** + * @param config + * @param tool + * @param command + */ + public static void setToolCommand(IConfiguration config, ITool tool, String command) { + // The tool may be a reference. + if (tool instanceof ToolReference) { + // If so, just set the command in the reference + ((ToolReference)tool).setToolCommand(command); + } else { + config.setToolCommand(tool, command); + } + } + + /** * Saves the build information associated with a project and all resources * in the project to the build info file. * * @param project + * @param force */ - public static void saveBuildInfo(IProject project) { + public static void saveBuildInfo(IProject project, boolean force) { // Create document Document doc = new DocumentImpl(); Element rootElement = doc.createElement(ROOT_ELEM_NAME); @@ -290,30 +304,31 @@ public class ManagedBuildManager extends AbstractCExtension implements IScannerI // Save the build info ManagedBuildInfo buildInfo = (ManagedBuildInfo) getBuildInfo(project); - if (buildInfo != null) + if (buildInfo != null && (force == true || buildInfo.isDirty())) { buildInfo.serialize(doc, rootElement); - // Save the document - ByteArrayOutputStream s = new ByteArrayOutputStream(); - OutputFormat format = new OutputFormat(); - format.setIndenting(true); - format.setLineSeparator(System.getProperty("line.separator")); //$NON-NLS-1$ - String xml = null; - try { - Serializer serializer + // Save the document + ByteArrayOutputStream s = new ByteArrayOutputStream(); + OutputFormat format = new OutputFormat(); + format.setIndenting(true); + format.setLineSeparator(System.getProperty("line.separator")); //$NON-NLS-1$ + String xml = null; + try { + Serializer serializer = SerializerFactory.getSerializerFactory(Method.XML).makeSerializer(new OutputStreamWriter(s, "UTF8"), format); //$NON-NLS-1$ - serializer.asDOMSerializer().serialize(doc); - xml = s.toString("UTF8"); //$NON-NLS-1$ - IFile rscFile = project.getFile(FILE_NAME); - InputStream inputStream = new ByteArrayInputStream(xml.getBytes()); - // update the resource content - if (rscFile.exists()) { - rscFile.setContents(inputStream, IResource.FORCE, null); - } else { - rscFile.create(inputStream, IResource.FORCE, null); + serializer.asDOMSerializer().serialize(doc); + xml = s.toString("UTF8"); //$NON-NLS-1$ + IFile rscFile = project.getFile(FILE_NAME); + InputStream inputStream = new ByteArrayInputStream(xml.getBytes()); + // update the resource content + if (rscFile.exists()) { + rscFile.setContents(inputStream, IResource.FORCE, null); + } else { + rscFile.create(inputStream, IResource.FORCE, null); + } + } catch (Exception e) { + return; } - } catch (Exception e) { - return; } } @@ -542,7 +557,9 @@ public class ManagedBuildManager extends AbstractCExtension implements IScannerI if (buildInfo == null && create) { try { + // Create a new build info object for the project buildInfo = new ManagedBuildInfo(resource); + // Associate the build info with the project for the duration of the session resource.setSessionProperty(buildInfoProperty, buildInfo); } catch (CoreException e) { buildInfo = null; @@ -668,5 +685,5 @@ public class ManagedBuildManager extends AbstractCExtension implements IScannerI public static IConfigurationElement getConfigElement(IBuildObject buildObj) { return (IConfigurationElement)getConfigElementMap().get(buildObj); } - + } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Configuration.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Configuration.java index c9e65438b12..bb87dbc6af5 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Configuration.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Configuration.java @@ -33,11 +33,11 @@ import org.w3c.dom.Node; import org.w3c.dom.NodeList; public class Configuration extends BuildObject implements IConfiguration { - - private ITarget target; + private boolean isDirty = false; private IConfiguration parent; - private List toolReferences; private boolean resolved = true; + private ITarget target; + private List toolReferences; /** * Build a configuration from the project manifest file. @@ -308,6 +308,14 @@ public class Configuration extends BuildObject implements IConfiguration { } /* (non-Javadoc) + * @see org.eclipse.cdt.managedbuilder.core.IConfiguration#isDirty() + */ + public boolean isDirty() { + return isDirty; + } + + + /* (non-Javadoc) * @see org.eclipse.cdt.core.build.managed.IConfiguration#getParent() */ public IConfiguration getParent() { @@ -418,15 +426,27 @@ public class Configuration extends BuildObject implements IConfiguration { element.appendChild(toolRefElement); toolRef.serialize(doc, toolRefElement); } + + // I am clean now + isDirty = false; } /* (non-Javadoc) + * @see org.eclipse.cdt.managedbuilder.core.IConfiguration#setDirty(boolean) + */ + public void setDirty(boolean isDirty) { + this.isDirty = isDirty; + } + + /* (non-Javadoc) * @see org.eclipse.cdt.core.build.managed.IConfiguration#setOption(org.eclipse.cdt.core.build.managed.IOption, boolean) */ public void setOption(IOption option, boolean value) throws BuildException { // Is there a delta - if (option.getBooleanValue() != value) + if (option.getBooleanValue() != value) { createOptionReference(option).setValue(value); + isDirty = true; + } } /* (non-Javadoc) @@ -441,8 +461,10 @@ public class Configuration extends BuildObject implements IConfiguration { else { oldValue = option.getStringValue(); } - if (oldValue != null && !oldValue.equals(value)) + if (oldValue != null && !oldValue.equals(value)) { createOptionReference(option).setValue(value); + isDirty = true; + } } /* (non-Javadoc) @@ -471,8 +493,10 @@ public class Configuration extends BuildObject implements IConfiguration { oldValue = new String[0]; break; } - if(!Arrays.equals(value, oldValue)) + if(!Arrays.equals(value, oldValue)) { createOptionReference(option).setValue(value); + isDirty = true; + } } /* (non-Javadoc) @@ -489,8 +513,9 @@ public class Configuration extends BuildObject implements IConfiguration { } // Set the ref's command if (ref != null) { - ref.setToolCommand(command); + isDirty = ref.setToolCommand(command); } } } + } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java index 44e9527d84b..b61c618c7da 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java @@ -45,8 +45,10 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { public static final String MINOR_SEPERATOR = "::"; //$NON-NLS-1$ private static final QualifiedName defaultConfigProperty = new QualifiedName(ManagedBuilderCorePlugin.getUniqueIdentifier(), "defaultConfig"); //$NON-NLS-1$ private static final QualifiedName defaultTargetProperty = new QualifiedName(ManagedBuilderCorePlugin.getUniqueIdentifier(), "defaultTarget"); //$NON-NLS-1$ + private String defaultConfigIds; private Map defaultConfigMap; private ITarget defaultTarget; + private String defaultTargetId; private boolean isDirty; private IResource owner; private Map targetMap; @@ -58,8 +60,28 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { * @param owner */ public ManagedBuildInfo(IResource owner) { - targetList = new ArrayList(); this.owner = owner; + isDirty = false; + + // The id of the default target from the project persistent settings store + IProject project = (IProject)owner; + defaultTargetId = null; + try { + defaultTargetId = project.getPersistentProperty(defaultTargetProperty); + } catch (CoreException e) { + // We have all the build elements so we can stop if this occurs + return; + } + + // Get the default configs for every target out of the same store + defaultConfigIds = null; + try { + defaultConfigIds = project.getPersistentProperty(defaultConfigProperty); + } catch (CoreException e) { + // Again, hitting this error just means the default config is not set + return; + } + } /** @@ -70,7 +92,6 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { * @param element */ public ManagedBuildInfo(IResource owner, Element element) { - // Store the IProject the info is for this(owner); // Read in the top-level info objects @@ -81,70 +102,14 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { } child = child.getNextSibling(); } - - // The id of the default configuration from the persistent store - IProject project = (IProject)getOwner(); - String defaultTargetId = null; - try { - defaultTargetId = project.getPersistentProperty(defaultTargetProperty); - } catch (CoreException e) { - // We have all the build elements so we can stop if this occurs - return; - } - - // All targets have been read in so set the default from the persisted ID - if (defaultTargetId != null) { - defaultTarget = (ITarget) getTargetMap().get(defaultTargetId); - } - - // Get the string of all default config IDs from the store - String defaultIds = null; - try { - defaultIds = project.getPersistentProperty(defaultConfigProperty); - } catch (CoreException e1) { - // Again, hitting this error just means the default config is not set - return; - } - if (defaultIds != null) { - String[] majorTokens = defaultIds.split(MAJOR_SEPERATOR); - for (int index = majorTokens.length - 1; index >= 0; --index) { - // Now split each token into the target and config id component - String idToken = majorTokens[index]; - if (idToken != null) { - String[] minorTokens = idToken.split(MINOR_SEPERATOR); - // The first token is the target ID - ITarget target = getTarget(minorTokens[0]); - // The second is the configuration ID - IConfiguration config = target.getConfiguration(minorTokens[1]); - if (config != null) { - getDefaultConfigMap().put(target.getId(), config); - } - } - } - } - -/* // Now we have a miserable O(N^2) operation (oh well, the data sets are small) - ListIterator stringIter = configIds.listIterator(); - while (stringIter.hasNext()){ - String confId = (String) stringIter.next(); - ListIterator targIter = targetList.listIterator(); - while (targIter.hasNext()) { - Target targ = (Target) targIter.next(); - IConfiguration conf = targ.getConfiguration(confId); - if (conf != null) { - defaultConfigMap.put(targ.getId(), conf); - break; - } - } - } -*/ } + } /* (non-Javadoc) * @see org.eclipse.cdt.core.build.managed.IManagedBuildInfo#addTarget(org.eclipse.cdt.core.build.managed.ITarget) */ public void addTarget(ITarget target) { getTargetMap().put(target.getId(), target); - targetList.add(target); + getTargets().add(target); } /* (non-Javadoc) @@ -250,6 +215,25 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { private Map getDefaultConfigMap() { if (defaultConfigMap == null) { defaultConfigMap = new HashMap(); + // We read this as part of the constructor + if (defaultConfigIds != null) { + String[] majorTokens = defaultConfigIds.split(MAJOR_SEPERATOR); + for (int index = majorTokens.length - 1; index >= 0; --index) { + // Now split each token into the target and config id component + String idToken = majorTokens[index]; + if (idToken != null) { + String[] minorTokens = idToken.split(MINOR_SEPERATOR); + // The first token is the target ID + ITarget target = getTarget(minorTokens[0]); + if (target == null) continue; + // The second is the configuration ID + IConfiguration config = target.getConfiguration(minorTokens[1]); + if (config != null) { + defaultConfigMap.put(target.getId(), config); + } + } + } + } } return defaultConfigMap; } @@ -276,7 +260,14 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { */ public ITarget getDefaultTarget() { if (defaultTarget == null) { - defaultTarget = (ITarget) targetList.get(0); + // See if there is a target that was persisted + if (defaultTargetId != null) { + defaultTarget = (ITarget) getTargetMap().get(defaultTargetId); + } + // If that failed, look for anything + if (defaultTarget == null) { + defaultTarget = (ITarget) getTargets().get(0); + } } return defaultTarget; } @@ -709,6 +700,9 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { * @see org.eclipse.cdt.core.build.managed.IManagedBuildInfo#getTargets(org.eclipse.cdt.core.build.managed.IConfiguration) */ public List getTargets() { + if (targetList == null) { + targetList = new ArrayList(); + } return targetList; } @@ -840,7 +834,20 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { * @see org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo#isDirty() */ public boolean isDirty() { - return isDirty; + // If the info has been flagged dirty, answer true + if (isDirty) { + return true; + } + + // Check if any of the defined targets are dirty + Iterator iter = getTargets().listIterator(); + while (iter.hasNext()) { + if (((ITarget)iter.next()).isDirty()) { + return true; + } + } + + return false; } /* (non-Javadoc) @@ -877,27 +884,17 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { return false; } - /** - * Write the contents of the build model to the persistent store specified in the - * argument. + + /* (non-Javadoc) * - * @param doc - * @param element */ - public void serialize(Document doc, Element element) { + private void persistDefaultConfigurations() { // Create a buffer of the default configuration IDs StringBuffer defaultConfigs = new StringBuffer(); - - // Write out each target and their default config - Iterator iter = targetList.listIterator(); + Iterator iter = getTargets().listIterator(); while (iter.hasNext()) { - // Get the target - Target targ = (Target)iter.next(); - // Create an XML element to hold the target settings - Element targetElement = doc.createElement(ITarget.TARGET_ELEMENT_NAME); - element.appendChild(targetElement); - targ.serialize(doc, targetElement); // Persist the default target configuration pair as <targ_ID>::<conf_ID> + ITarget targ = (ITarget)iter.next(); IConfiguration config = getDefaultConfiguration((ITarget)targ); if (config != null) { defaultConfigs.append(targ.getId()); @@ -906,65 +903,105 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { defaultConfigs.append(MAJOR_SEPERATOR); } } - -/* for (int i = 0; i < targets.size(); ++i) { - Element targetElement = doc.createElement(ITarget.TARGET_ELEMENT_NAME); - element.appendChild(targetElement); - ((Target)targets.get(i)).serialize(doc, targetElement); - IConfiguration config = getDefaultConfiguration((ITarget)targets.get(i)); - if (config != null) { - Element configEl = doc.createElement(DEFAULT_CONFIGURATION); - element.appendChild(configEl); - configEl.setAttribute(IConfiguration.ID, config.getId()); - } + // Persist the default configurations + IProject project = (IProject) getOwner(); + try { + project.setPersistentProperty(defaultConfigProperty, defaultConfigs.toString().trim()); + } catch (CoreException e) { + // Too bad } -*/ // Persist the default target as a project setting + } + + /* (non-Javadoc) + * + */ + private void persistDefaultTarget() { + // Persist the default target as a project setting IProject project = (IProject) getOwner(); ITarget defTarget = getDefaultTarget(); if (defTarget != null){ try { project.setPersistentProperty(defaultTargetProperty, defTarget.getId()); } catch (CoreException e) { - // There is no point in storing the default configurations - return; + // Tough } } - - try { - // Persist the default configurations - project.setPersistentProperty(defaultConfigProperty, defaultConfigs.toString().trim()); - } catch (CoreException e) { - // Too bad + } + + /** + * Write the contents of the build model to the persistent store + * specified in the argument. + * + * @param doc + * @param element + */ + public void serialize(Document doc, Element element) { + // Write out each target + Iterator iter = getTargets().listIterator(); + while (iter.hasNext()) { + // Get the target + Target targ = (Target)iter.next(); + // Create an XML element to hold the target settings + Element targetElement = doc.createElement(ITarget.TARGET_ELEMENT_NAME); + element.appendChild(targetElement); + targ.serialize(doc, targetElement); } - + // Remember the default target and configurations + persistDefaultTarget(); + persistDefaultConfigurations(); + // I'm clean now + setDirty(false); } /* (non-Javadoc) * @see org.eclipse.cdt.core.build.managed.IManagedBuildInfo#setDefaultConfiguration(org.eclipse.cdt.core.build.managed.IConfiguration) */ public void setDefaultConfiguration(IConfiguration configuration) { + // Sanity + if (configuration== null) return; + // Get the target associated with the argument ITarget target = configuration.getTarget(); - // Make sure it is the default - setDefaultTarget(target); - getDefaultConfigMap().put(target.getId(), configuration); + + // See if there is anything to be done + IConfiguration oldDefault = getDefaultConfiguration(target); + if (!configuration.equals(oldDefault)) { + // Make sure it is the default + setDefaultTarget(target); + // Make the argument the + getDefaultConfigMap().put(target.getId(), configuration); + // Save it + persistDefaultConfigurations(); + } } /* (non-Javadoc) * @see org.eclipse.cdt.core.build.managed.IManagedBuildInfo#setDefaultTarget(org.eclipse.cdt.core.build.managed.ITarget) */ public void setDefaultTarget(ITarget target) { - if (defaultTarget != null && defaultTarget.getId().equals(target.getId())) { - return; + // Sanity + if (target == null) return; + + // Make sure there is something to change + if (!target.equals(defaultTarget)) { + defaultTarget = target; + defaultTargetId = target.getId(); + persistDefaultTarget(); } - defaultTarget = target; } /* (non-Javadoc) * @see org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo#setDirty(boolean) */ public void setDirty(boolean isDirty) { + // Reset the dirty status here this.isDirty = isDirty; + // and in the contained targets + Iterator iter = getTargets().listIterator(); + while (iter.hasNext()) { + ITarget target = (ITarget)iter.next(); + target.setDirty(isDirty); + } } /** @@ -979,7 +1016,7 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { if (!owner.equals(resource)) { owner = resource; // Do the same for the targets - Iterator iter = targetList.listIterator(); + Iterator iter = getTargets().listIterator(); while(iter.hasNext()) { ITarget target = (ITarget) iter.next(); target.updateOwner(resource); diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Target.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Target.java index 8ce66c321ea..9cc271aa90e 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Target.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Target.java @@ -37,11 +37,12 @@ public class Target extends BuildObject implements ITarget { private String artifactName; private String binaryParserId; private String cleanCommand; + private List configList; private Map configMap; - private List configurations; private String defaultExtension; private String extension; private boolean isAbstract = false; + private boolean isDirty = false; private boolean isTest = false; private String makeArguments; private String makeCommand; @@ -252,12 +253,10 @@ public class Target extends BuildObject implements ITarget { ToolReference current = (ToolReference)refIter.next(); current.resolveReferences(); } - if (configurations != null) { - Iterator configIter = configurations.iterator(); - while (configIter.hasNext()) { - Configuration current = (Configuration)configIter.next(); - current.resolveReferences(); - } + Iterator configIter = getConfigurationList().iterator(); + while (configIter.hasNext()) { + Configuration current = (Configuration)configIter.next(); + current.resolveReferences(); } } } @@ -267,12 +266,13 @@ public class Target extends BuildObject implements ITarget { */ public void removeConfiguration(String id) { // Remove the specified configuration from the list and map - Iterator iter = configurations.listIterator(); + Iterator iter = getConfigurationList().listIterator(); while (iter.hasNext()) { IConfiguration config = (IConfiguration)iter.next(); if (config.getId().equals(id)) { - configurations.remove(config); - configMap.remove(id); + getConfigurationList().remove(config); + getConfigurationMap().remove(id); + isDirty = true; break; } } @@ -310,14 +310,18 @@ public class Target extends BuildObject implements ITarget { if (makeArguments != null) { element.setAttribute(MAKE_ARGS, makeArguments); } - - if (configurations != null) - for (int i = 0; i < configurations.size(); ++i) { - Configuration config = (Configuration)configurations.get(i); - Element configElement = doc.createElement(IConfiguration.CONFIGURATION_ELEMENT_NAME); - element.appendChild(configElement); - config.serialize(doc, configElement); - } + + // Serialize the configuration settings + Iterator iter = getConfigurationList().listIterator(); + while (iter.hasNext()) { + Configuration config = (Configuration) iter.next(); + Element configElement = doc.createElement(IConfiguration.CONFIGURATION_ELEMENT_NAME); + element.appendChild(configElement); + config.serialize(doc, configElement); + } + + // I am clean now + isDirty = false; } /* (non-javadoc) @@ -567,13 +571,34 @@ public class Target extends BuildObject implements ITarget { } /* (non-Javadoc) + * Safe accessor for the list of configurations. + * + * @return List containing the configurations + */ + private List getConfigurationList() { + if (configList == null) { + configList = new ArrayList(); + } + return configList; + } + + /* (non-Javadoc) + * Safe accessor for the map of configuration ids to configurations + * + * @return + */ + private Map getConfigurationMap() { + if (configMap == null) { + configMap = new HashMap(); + } + return configMap; + } + + /* (non-Javadoc) * @see org.eclipse.cdt.managedbuilder.core.ITarget#getConfigurations() */ public IConfiguration[] getConfigurations() { - if (configurations != null) - return (IConfiguration[])configurations.toArray(new IConfiguration[configurations.size()]); - else - return emptyConfigs; + return (IConfiguration[])getConfigurationList().toArray(new IConfiguration[getConfigurationList().size()]); } @@ -665,19 +690,15 @@ public class Target extends BuildObject implements ITarget { * @see org.eclipse.cdt.core.build.managed.ITarget#getConfiguration() */ public IConfiguration getConfiguration(String id) { - return (IConfiguration)configMap.get(id); + return (IConfiguration)getConfigurationMap().get(id); } /** * @param configuration */ public void addConfiguration(IConfiguration configuration) { - if (configurations == null) { - configurations = new ArrayList(); - configMap = new HashMap(); - } - configurations.add(configuration); - configMap.put(configuration.getId(), configuration); + getConfigurationList().add(configuration); + getConfigurationMap().put(configuration.getId(), configuration); } /* (non-Javadoc) @@ -688,6 +709,25 @@ public class Target extends BuildObject implements ITarget { } /* (non-Javadoc) + * @see org.eclipse.cdt.managedbuilder.core.ITarget#isDirty() + */ + public boolean isDirty() { + // If I need saving, just say yes + if (isDirty) { + return true; + } + + // Iterate over the configurations and ask them if they need saving + Iterator iter = getConfigurationList().listIterator(); + while (iter.hasNext()) { + if (((IConfiguration)iter.next()).isDirty()) { + return true; + } + } + + return false; + } + /* (non-Javadoc) * @see org.eclipse.cdt.core.build.managed.ITarget#isTestTarget() */ public boolean isTestTarget() { @@ -705,6 +745,7 @@ public class Target extends BuildObject implements ITarget { * @see org.eclipse.cdt.core.build.managed.ITarget#createConfiguration(org.eclipse.cdt.core.build.managed.IConfiguration) */ public IConfiguration createConfiguration(IConfiguration parent, String id) { + isDirty = true; return new Configuration(this, parent, id); } @@ -723,6 +764,7 @@ public class Target extends BuildObject implements ITarget { public void setArtifactExtension(String extension) { if (extension != null) { this.extension = extension; + isDirty = true; } } @@ -731,16 +773,32 @@ public class Target extends BuildObject implements ITarget { */ public void setArtifactName(String name) { if (name != null) { - artifactName = name; + artifactName = name; + isDirty = true; } } /* (non-Javadoc) + * @see org.eclipse.cdt.managedbuilder.core.ITarget#setDirty(boolean) + */ + public void setDirty(boolean isDirty) { + // Override the dirty flag here + this.isDirty = isDirty; + // and in the configurations + Iterator iter = getConfigurationList().listIterator(); + while (iter.hasNext()) { + IConfiguration config = (IConfiguration)iter.next(); + config.setDirty(isDirty); + } + } + + /* (non-Javadoc) * @see org.eclipse.cdt.managedbuilder.core.ITarget#setMakeArguments(java.lang.String) */ public void setMakeArguments(String makeArgs) { if (makeArgs != null && !getMakeArguments().equals(makeArgs)) { makeArguments = makeArgs; + isDirty = true; } } @@ -750,6 +808,7 @@ public class Target extends BuildObject implements ITarget { public void setMakeCommand(String command) { if (command != null && !getMakeCommand().equals(command)) { makeCommand = command; + isDirty = true; } } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolReference.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolReference.java index 624f500cd42..133c0ec2ab8 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolReference.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolReference.java @@ -366,10 +366,14 @@ public class ToolReference extends AbstractToolReference { * Sets the command in the receiver to be the argument. * * @param cmd - */ - public void setToolCommand(String cmd) { + * @return <code>true</code> if the call results in a chnaged command, else <code>false</code> + */ + public boolean setToolCommand(String cmd) { if (cmd != null && !cmd.equals(command)) { command = cmd; + return true; + } else { + return false; } } diff --git a/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml b/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml index 2abdd9dddaf..b02d4f6d41d 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml +++ b/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml @@ -31,8 +31,8 @@ icon="icons/full/wizban/newmngcc_app.gif" category="org.eclipse.cdt.ui.newCCWizards" class="org.eclipse.cdt.managedbuilder.ui.wizards.NewManagedCCProjectWizard" - finalPerspective="org.eclipse.cdt.ui.CPerspective" project="true" + finalPerspective="org.eclipse.cdt.ui.CPerspective" id="org.eclipse.cdt.managedbuilder.ui.wizards.StdCCWizard"> <description> %MngCCWizard.description @@ -43,8 +43,8 @@ icon="icons/full/wizban/newmngc_app.gif" category="org.eclipse.cdt.ui.newCWizards" class="org.eclipse.cdt.managedbuilder.ui.wizards.NewManagedCProjectWizard" - finalPerspective="org.eclipse.cdt.ui.CPerspective" project="true" + finalPerspective="org.eclipse.cdt.ui.CPerspective" id="org.eclipse.cdt.managedbuilder.ui.wizards.StdCWizard"> <description> %MngCWizard.description @@ -54,8 +54,8 @@ <extension point="org.eclipse.ui.propertyPages"> <page - adaptable="true" objectClass="org.eclipse.core.resources.IProject" + adaptable="true" name="%MngBuildProp.name" class="org.eclipse.cdt.managedbuilder.ui.properties.BuildPropertyPage" id="org.eclipse.cdt.managedbuilder.ui.properties.BuildProperties"> @@ -82,12 +82,12 @@ osList="win32"> <tool natureFilter="cnature" - name="%ToolName.compiler.c" sources="c" + name="%ToolName.compiler.c" headerExtensions="h" outputFlag="-o" - command="gcc" outputs="o" + command="gcc" id="cdt.build.tool.cygwin.gnu.c.compiler"> <optionCategory owner="cdt.build.tool.cygwin.gnu.c.compiler" @@ -99,16 +99,16 @@ name="%Option.Posix.Nostdinc" category="cygwin.gnu.c.compiler.category.preprocessor" command="-nostdinc" - id="cygwin.gnu.c.compiler.preprocessor.nostdinc" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.preprocessor.nostdinc"> </option> <option defaultValue="false" name="%Option.Posix.PreprocOnly" category="cygwin.gnu.c.compiler.category.preprocessor" command="-E" - id="cygwin.gnu.c.compiler.preprocessor.preprocess" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.preprocessor.preprocess"> </option> <optionCategory owner="cdt.build.tool.cygwin.gnu.c.compiler" @@ -119,105 +119,105 @@ name="%Option.Posix.DefSym" category="cygwin.gnu.c.compiler.category.symbols" command="-D" - id="cygwin.gnu.c.preprocessor.def.symbols" - valueType="definedSymbols"> + valueType="definedSymbols" + id="cygwin.gnu.c.preprocessor.def.symbols"> <listOptionValue - builtIn="true" - value="_X86_=1"> + value="_X86_=1" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__OPTIMIZE__"> + value="__OPTIMIZE__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__STDC_HOSTED__=1"> + value="__STDC_HOSTED__=1" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="i386"> + value="i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386"> + value="__i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386__"> + value="__i386__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_i686__"> + value="__tune_i686__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_pentiumpro__"> + value="__tune_pentiumpro__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_pentium2__"> + value="__tune_pentium2__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_pentium3__"> + value="__tune_pentium3__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__stdcall=__attribute__((__stdcall__))"> + value="__stdcall=__attribute__((__stdcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__fastcall=__attribute__((__fastcall__))"> + value="__fastcall=__attribute__((__fastcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__cdecl=__attribute__((__cdecl__))"> + value="__cdecl=__attribute__((__cdecl__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_stdcall=__attribute__((__stdcall__))"> + value="_stdcall=__attribute__((__stdcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_fastcall=__attribute__((__fastcall__))"> + value="_fastcall=__attribute__((__fastcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_cdecl=__attribute__((__cdecl__))"> + value="_cdecl=__attribute__((__cdecl__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__declspec(x)=__attribute__((x))"> + value="__declspec(x)=__attribute__((x))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__CYGWIN32__"> + value="__CYGWIN32__" + builtIn="true"> </listOptionValue> - <!-- +<!-- <listOptionValue builtIn="true" value="__CYGWIN__"> </listOptionValue> --> <listOptionValue - builtIn="true" - value="unix"> + value="unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix__"> + value="__unix__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix"> + value="__unix" + builtIn="true"> </listOptionValue> </option> <option name="%Option.Posix.UndefSym" category="cygwin.gnu.c.compiler.category.symbols" command="-U" - id="cygwin.gnu.c.preprocessor.undef.symbol" - valueType="stringList"> + valueType="stringList" + id="cygwin.gnu.c.preprocessor.undef.symbol"> </option> <optionCategory owner="cdt.build.tool.cygwin.gnu.c.compiler" @@ -228,15 +228,15 @@ name="%Option.Posix.InclPaths" category="cygwin.gnu.c.compiler.category.dirs" command="-I" - id="cygwin.gnu.c.compiler.general.include.paths" - valueType="includePath"> + valueType="includePath" + id="cygwin.gnu.c.compiler.general.include.paths"> <listOptionValue - builtIn="true" - value="C:\Cygwin\usr\include"> + value="C:\Cygwin\usr\include" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="C:\cygwin\usr\include\w32api"> + value="C:\cygwin\usr\include\w32api" + builtIn="true"> </listOptionValue> </option> <optionCategory @@ -247,8 +247,8 @@ <option name="%Option.Posix.OptLevel" category="cygwin.gnu.c.compiler.category.optimization" - id="cygwin.gnu.c.compiler.general.optimization.level" - valueType="enumerated"> + valueType="enumerated" + id="cygwin.gnu.c.compiler.general.optimization.level"> <enumeratedOptionValue name="%Option.Posix.Optimize.None" isDefault="false" @@ -275,8 +275,8 @@ <option name="%Option.Posix.Optimize.Flags" category="cygwin.gnu.c.compiler.category.optimization" - id="cygwin.gnu.c.compiler.optimization.flags" - valueType="string"> + valueType="string" + id="cygwin.gnu.c.compiler.optimization.flags"> </option> <optionCategory owner="cdt.build.tool.cygwin.gnu.c.compiler" @@ -286,8 +286,8 @@ <option name="%Option.Posix.DebugLevel" category="cygwin.gnu.c.compiler.category.debug" - id="cygwin.c.compiler.debugging.level" - valueType="enumerated"> + valueType="enumerated" + id="cygwin.c.compiler.debugging.level"> <enumeratedOptionValue name="%Option.Posix.Debug.None" isDefault="false" @@ -312,27 +312,27 @@ </enumeratedOptionValue> </option> <option - defaultValue="-gstabs" + defaultValue="-gstabs -fmessage-length=0" name="%Option.Posix.Debug.Other" category="cygwin.gnu.c.compiler.category.debug" - id="cygwin.gnu.c.compiler.debugging.other" - valueType="string"> + valueType="string" + id="cygwin.gnu.c.compiler.debugging.other"> </option> <option defaultValue="false" name="%Option.Posix.Debug.gprof" category="cygwin.gnu.c.compiler.category.debug" command="-pg" - id="cygwin.gnu.c.compiler.debugging.gprof" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.debugging.gprof"> </option> <option defaultValue="false" name="%Option.Posix.Debug.prof" category="cygwin.gnu.c.compiler.category.debug" command="-p" - id="cygwin.gnu.c.compiler.debugging.prof" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.debugging.prof"> </option> <optionCategory owner="cdt.build.tool.cygwin.gnu.c.compiler" @@ -344,48 +344,48 @@ name="%Option.Posix.Warn.Syntax" category="cygwin.c.compiler.category.warnings" command="-fsyntax-only" - id="cygwin.gnu.c.compiler.warnings.syntax" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.warnings.syntax"> </option> <option defaultValue="false" name="%Option.Posix.Warn.Pedandic" category="cygwin.c.compiler.category.warnings" command="-pedantic" - id="cygwin.gnu.c.compiler.warnings.pedantic" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.warnings.pedantic"> </option> <option defaultValue="false" name="%Option.Posix.Warn.PedErrors" category="cygwin.c.compiler.category.warnings" command="-pedantic-errors" - id="cygwin.gnu.c.compiler.warnings.pedantic.error" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.warnings.pedantic.error"> </option> <option defaultValue="false" name="%Option.Posix.Warn.nowarn" category="cygwin.c.compiler.category.warnings" command="-w" - id="cygwin.gnu.c.compiler.warnings.nowarn" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.warnings.nowarn"> </option> <option defaultValue="true" name="%Option.Posix.Warn.allwarn" category="cygwin.c.compiler.category.warnings" command="-Wall" - id="cygwin.gnu.c.compiler.warnings.allwarn" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.warnings.allwarn"> </option> <option defaultValue="false" name="%Option.Posix.Warn.toerrs" category="cygwin.c.compiler.category.warnings" command="-Werror" - id="cygwin.gnu.c.compiler.warnings.toerrors" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.warnings.toerrors"> </option> <optionCategory owner="cdt.build.tool.cygwin.gnu.c.compiler" @@ -396,34 +396,34 @@ defaultValue="-c" name="%Option.OtherFlags" category="cygwin.c.compiler.category.other" - id="cygwin.gnu.c.compiler.misc.other" - valueType="string"> + valueType="string" + id="cygwin.gnu.c.compiler.misc.other"> </option> <option defaultValue="false" name="%Option.Posix.Verbose" category="cygwin.c.compiler.category.other" command="-v" - id="cygwin.gnu.c.compiler.misc.verbose" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.misc.verbose"> </option> <option defaultValue="false" name="%Option.Posix.Ansi" category="cygwin.c.compiler.category.other" command="-ansi" - id="cygwin.gnu.c.compiler.misc.ansi" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.compiler.misc.ansi"> </option> </tool> <tool natureFilter="ccnature" - name="%ToolName.compiler.cpp" sources="c,cc,cpp,cxx,C" + name="%ToolName.compiler.cpp" headerExtensions="h,H,hpp" outputFlag="-o" - command="g++" outputs="o" + command="g++" id="org.eclipse.cdt.build.tool.cygwin.compiler"> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.compiler" @@ -435,16 +435,16 @@ name="%Option.Posix.Nostdinc" category="cygwin.compiler.category.preprocessor" command="-nostdinc" - id="cygwin.gnu.compiler.preprocessor.nostdinc" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.preprocessor.nostdinc"> </option> <option defaultValue="false" name="%Option.Posix.PreprocOnly" category="cygwin.compiler.category.preprocessor" command="-E" - id="cygwin.gnu.compiler.preprocessor.preprocess" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.preprocessor.preprocess"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.compiler" @@ -455,113 +455,113 @@ name="%Option.Posix.DefSym" category="cygwin.gnu.compiler.category.symbols" command="-D" - id="cygwin.preprocessor.def.symbols" - valueType="definedSymbols"> + valueType="definedSymbols" + id="cygwin.preprocessor.def.symbols"> <listOptionValue - builtIn="true" - value="_X86_=1"> + value="_X86_=1" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__OPTIMIZE__"> + value="__OPTIMIZE__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__STDC_HOSTED__=1"> + value="__STDC_HOSTED__=1" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="i386"> + value="i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386"> + value="__i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386__"> + value="__i386__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_i686__"> + value="__tune_i686__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_pentiumpro__"> + value="__tune_pentiumpro__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_pentium2__"> + value="__tune_pentium2__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_pentium3__"> + value="__tune_pentium3__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__stdcall=__attribute__((__stdcall__))"> + value="__stdcall=__attribute__((__stdcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__fastcall=__attribute__((__fastcall__))"> + value="__fastcall=__attribute__((__fastcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__cdecl=__attribute__((__cdecl__))"> + value="__cdecl=__attribute__((__cdecl__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_stdcall=__attribute__((__stdcall__))"> + value="_stdcall=__attribute__((__stdcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_fastcall=__attribute__((__fastcall__))"> + value="_fastcall=__attribute__((__fastcall__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_cdecl=__attribute__((__cdecl__))"> + value="_cdecl=__attribute__((__cdecl__))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__declspec(x)=__attribute__((x))"> + value="__declspec(x)=__attribute__((x))" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__CYGWIN32__"> + value="__CYGWIN32__" + builtIn="true"> </listOptionValue> - <!-- +<!-- <listOptionValue builtIn="true" value="__CYGWIN__"> </listOptionValue> --> <listOptionValue - builtIn="true" - value="unix"> + value="unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix__"> + value="__unix__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix"> + value="__unix" + builtIn="true"> </listOptionValue> <listOptionValue - value="__cplusplus" - builtIn="true"> + builtIn="true" + value="__cplusplus"> </listOptionValue> <listOptionValue - value="_GLIBCPP_USE_NAMESPACES=0" - builtIn="true"> + builtIn="true" + value="_GLIBCPP_USE_NAMESPACES=0"> </listOptionValue> </option> <option name="%Option.Posix.UndefSym" category="cygwin.gnu.compiler.category.symbols" command="-U" - id="cygwin.preprocessor.undef.symbol" - valueType="stringList"> + valueType="stringList" + id="cygwin.preprocessor.undef.symbol"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.compiler" @@ -572,31 +572,31 @@ name="%Option.Posix.InclPaths" category="cygwin.gnu.compiler.category.dirs" command="-I" - id="cygwin.compiler.general.include.paths" - valueType="includePath"> + valueType="includePath" + id="cygwin.compiler.general.include.paths"> <listOptionValue - builtIn="true" - value="C:\cygwin\usr\include\c++\3.3.1"> - </listOptionValue> - <listOptionValue - value="C:\cygwin\usr\include\c++\3.3.1\i686-pc-cygwin" + value="C:\cygwin\usr\include\c++\3.3.1" builtIn="true"> </listOptionValue> <listOptionValue builtIn="true" - value="C:\cygwin\usr\include\c++\3.3.1\backward"> + value="C:\cygwin\usr\include\c++\3.3.1\i686-pc-cygwin"> </listOptionValue> <listOptionValue - builtIn="true" - value="C:\cygwin\lib\gcc-lib\i686-pc-cygwin\3.3.1\include"> + value="C:\cygwin\usr\include\c++\3.3.1\backward" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="C:\cygwin\usr\include"> + value="C:\cygwin\lib\gcc-lib\i686-pc-cygwin\3.3.1\include" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="C:\cygwin\usr\include\w32api"> + value="C:\cygwin\usr\include" + builtIn="true"> + </listOptionValue> + <listOptionValue + value="C:\cygwin\usr\include\w32api" + builtIn="true"> </listOptionValue> </option> <optionCategory @@ -607,8 +607,8 @@ <option name="%Option.Posix.OptLevel" category="cygwin.gnu.compiler.category.optimization" - id="cygwin.compiler.general.optimization.level" - valueType="enumerated"> + valueType="enumerated" + id="cygwin.compiler.general.optimization.level"> <enumeratedOptionValue name="%Option.Posix.Optimize.None" isDefault="false" @@ -635,8 +635,8 @@ <option name="%Option.Posix.Optimize.Flags" category="cygwin.gnu.compiler.category.optimization" - id="cygwin.compiler.optimization.flags" - valueType="string"> + valueType="string" + id="cygwin.compiler.optimization.flags"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.compiler" @@ -646,8 +646,8 @@ <option name="%Option.Posix.DebugLevel" category="cygwin.gnu.compiler.category.debug" - id="cygwin.compiler.debugging.level" - valueType="enumerated"> + valueType="enumerated" + id="cygwin.compiler.debugging.level"> <enumeratedOptionValue name="%Option.Posix.Debug.None" isDefault="false" @@ -672,27 +672,27 @@ </enumeratedOptionValue> </option> <option - defaultValue="-gstabs" + defaultValue="-gstabs -fmessage-length=0" name="%Option.Posix.Debug.Other" category="cygwin.gnu.compiler.category.debug" - id="cygwin.gnu.compiler.debugging.other" - valueType="string"> + valueType="string" + id="cygwin.gnu.compiler.debugging.other"> </option> <option defaultValue="false" name="%Option.Posix.Debug.prof" category="cygwin.gnu.compiler.category.debug" command="-p" - id="cygwin.gnu.compiler.debugging.prof" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.debugging.prof"> </option> <option defaultValue="false" name="%Option.Posix.Debug.gprof" category="cygwin.gnu.compiler.category.debug" command="-pg" - id="cygwin.gnu.compiler.debugging.gprof" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.debugging.gprof"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.compiler" @@ -704,48 +704,48 @@ name="%Option.Posix.Warn.Syntax" category="cygwin.compiler.category.warnings" command="-fsyntax-only" - id="cygwin.gnu.compiler.warnings.syntax" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.warnings.syntax"> </option> <option defaultValue="false" name="%Option.Posix.Warn.Pedandic" category="cygwin.compiler.category.warnings" command="-pedantic" - id="cygwin.gnu.compiler.warnings.pedantic" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.warnings.pedantic"> </option> <option defaultValue="false" name="%Option.Posix.Warn.PedErrors" category="cygwin.compiler.category.warnings" command="-pedantic-errors" - id="cygwin.gnu.compiler.warnings.pedantic.error" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.warnings.pedantic.error"> </option> <option defaultValue="false" name="%Option.Posix.Warn.nowarn" category="cygwin.compiler.category.warnings" command="-w" - id="cygwin.gnu.compiler.warnings.nowarn" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.warnings.nowarn"> </option> <option defaultValue="true" name="%Option.Posix.Warn.allwarn" category="cygwin.compiler.category.warnings" command="-Wall" - id="cygwin.gnu.compiler.warnings.allwarn" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.warnings.allwarn"> </option> <option defaultValue="false" name="%Option.Posix.Warn.toerrs" category="cygwin.compiler.category.warnings" command="-Werror" - id="cygwin.gnu.compiler.warnings.toerrors" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.compiler.warnings.toerrors"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.compiler" @@ -756,24 +756,24 @@ defaultValue="-c" name="%Option.OtherFlags" category="cygwin.compiler.category.other" - id="cygwin.compiler.misc.other" - valueType="string"> + valueType="string" + id="cygwin.compiler.misc.other"> </option> <option defaultValue="false" name="%Option.Posix.Verbose" category="cygwin.compiler.category.other" command="-v" - id="cygwin.compiler.misc.verbose" - valueType="boolean"> + valueType="boolean" + id="cygwin.compiler.misc.verbose"> </option> </tool> </target> <target isTest="false" name="%TargetName.cygw.exe" - binaryParser="org.eclipse.cdt.core.PE" parent="cygwin" + binaryParser="org.eclipse.cdt.core.PE" defaultExtension="exe" isAbstract="false" id="cygwin.exec"> @@ -836,8 +836,8 @@ natureFilter="cnature" name="%ToolName.linker.c" outputFlag="-o" - command="gcc" outputs="exe" + command="gcc" id="cdt.build.tool.cygwin.c.link"> <optionCategory owner="cdt.build.tool.cygwin.c.link" @@ -849,40 +849,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="cygwin.gnu.c.linker.category.general" command="-nostartfiles" - id="cygwin.gnu.c.link.options.nostart" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.link.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="cygwin.gnu.c.linker.category.general" command="-nodefaultlibs" - id="cygwin.gnu.c.link.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.link.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="cygwin.gnu.c.linker.category.general" command="-nostdlib" - id="cygwin.gnu.c.link.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.link.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="cygwin.gnu.c.linker.category.general" command="-s" - id="cygwin.gnu.c.link.options.strip" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.link.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="cygwin.gnu.c.linker.category.general" command="-static" - id="cygwin.gnu.c.link.options.noshared" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.link.options.noshared"> </option> <optionCategory owner="cdt.build.tool.cygwin.c.link" @@ -893,15 +893,15 @@ name="%Option.Posix.Libs" category="cygwin.gnu.c.linker.category.libs" command="-l" - id="cygwin.gnu.c.link.libs" - valueType="libs"> + valueType="libs" + id="cygwin.gnu.c.link.libs"> </option> <option name="%Option.Posix.Libsearch" category="cygwin.gnu.c.linker.category.libs" command="-L" - id="cygwin.gnu.c.link.paths" - valueType="stringList"> + valueType="stringList" + id="cygwin.gnu.c.link.paths"> </option> <optionCategory owner="cdt.build.tool.cygwin.c.link" @@ -909,31 +909,32 @@ id="cygwin.gnu.c.linker.category.other"> </optionCategory> <option + defaultValue="-fmessage-length=0" name="%Option.Posix.Linker.Flags" category="cygwin.gnu.c.linker.category.other" - id="cygwin.gnu.c.link.ldflags" - valueType="string"> + valueType="string" + id="cygwin.gnu.c.link.ldflags"> </option> <option name="%Option.Posix.Linker.XLinker" category="cygwin.gnu.c.linker.category.other" command="-Xlinker" - id="cygwin.gnu.c.link.options.other" - valueType="stringList"> + valueType="stringList" + id="cygwin.gnu.c.link.options.other"> </option> <option name="%Option.Posix.UserObjs" category="cygwin.gnu.c.linker.category.other" - id="cygwin.gnu.c.link.ld.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="cygwin.gnu.c.link.ld.userobjs"> </option> </tool> <tool natureFilter="ccnature" name="%ToolName.linker.cpp" outputFlag="-o" - command="g++" outputs="exe" + command="g++" id="org.eclipse.cdt.build.tool.cygwin.link"> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.link" @@ -945,40 +946,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="cygwin.linker.category.general" command="-nostartfiles" - id="cygwin.gnu.linker.options.nostart" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.linker.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="cygwin.linker.category.general" command="-nodefaultlibs" - id="cygwin.gnu.linker.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.linker.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="cygwin.linker.category.general" command="-nostdlib" - id="cygwin.gnu.linker.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.linker.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="cygwin.linker.category.general" command="-s" - id="cygwin.gnu.linker.options.strip" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.linker.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="cygwin.linker.category.general" command="-static" - id="cygwin.gnu.linker.options.noshared" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.linker.options.noshared"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.link" @@ -989,15 +990,15 @@ name="%Option.Posix.Libs" category="cygwin.gnu.linker.category.libs" command="-l" - id="cygwin.link.libs" - valueType="libs"> + valueType="libs" + id="cygwin.link.libs"> </option> <option name="%Option.Posix.Libsearch" category="cygwin.gnu.linker.category.libs" command="-L" - id="cygwin.link.ld.paths" - valueType="stringList"> + valueType="stringList" + id="cygwin.link.ld.paths"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.link" @@ -1005,31 +1006,32 @@ id="cygwin.gnu.linker.category.other"> </optionCategory> <option + defaultValue="-fmessage-length=0" name="%Option.Posix.Linker.Flags" category="cygwin.gnu.linker.category.other" - id="cygwin.link.ld.flags" - valueType="string"> + valueType="string" + id="cygwin.link.ld.flags"> </option> <option name="%Option.Posix.Linker.XLinker" category="cygwin.gnu.linker.category.other" command="-Xlinker" - id="cygwin.gnu.linker.options.other" - valueType="stringList"> + valueType="stringList" + id="cygwin.gnu.linker.options.other"> </option> <option name="%Option.Posix.UserObjs" category="cygwin.gnu.linker.category.other" - id="cygwin.gnu.link.ld.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="cygwin.gnu.link.ld.userobjs"> </option> </tool> </target> <target isTest="false" name="%TargetName.cygw.so" - binaryParser="org.eclipse.cdt.core.PE" parent="cygwin" + binaryParser="org.eclipse.cdt.core.PE" defaultExtension="dll" isAbstract="false" id="cygwin.so"> @@ -1092,9 +1094,9 @@ natureFilter="cnature" name="%ToolName.linker.c" outputFlag="-o" - command="gcc" - outputPrefix="lib" outputs="dll" + outputPrefix="lib" + command="gcc" id="cdt.build.tool.cygwin.c.solink"> <optionCategory owner="cdt.build.tool.cygwin.c.solink" @@ -1106,40 +1108,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="cygwin.gnu.c.solink.category.general" command="-nostartfiles" - id="cygwin.gnu.c.solink.options.nostart" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.solink.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="cygwin.gnu.c.solink.category.general" command="-nodefaultlibs" - id="cygwin.gnu.c.solink.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.solink.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="cygwin.gnu.c.solink.category.general" command="-nostdlib" - id="cygwin.gnu.c.solink.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.solink.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="cygwin.gnu.c.solink.category.general" command="-s" - id="cygwin.gnu.c.solink.options.strip" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.solink.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="cygwin.gnu.c.solink.category.general" command="-static" - id="cygwin.gnu.c.solink.options.noshared" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.c.solink.options.noshared"> </option> <optionCategory owner="cdt.build.tool.cygwin.c.solink" @@ -1150,15 +1152,15 @@ name="%Option.Posix.Libs" category="cygwin.gnu.c.solink.category.libs" command="-l" - id="cygwin.gnu.c.solink.libs" - valueType="libs"> + valueType="libs" + id="cygwin.gnu.c.solink.libs"> </option> <option name="%Option.Posix.Libsearch" category="cygwin.gnu.c.solink.category.libs" command="-L" - id="cygwin.gnu.c.solink.paths" - valueType="stringList"> + valueType="stringList" + id="cygwin.gnu.c.solink.paths"> </option> <optionCategory owner="cdt.build.tool.cygwin.c.solink" @@ -1166,33 +1168,33 @@ id="cygwin.gnu.c.solink.category.other"> </optionCategory> <option - defaultValue="-shared" + defaultValue="-shared -fmessage-length=0" name="%Option.Posix.Linker.Flags" category="cygwin.gnu.c.solink.category.other" - id="cygwin.gnu.c.solink.ldflags" - valueType="string"> + valueType="string" + id="cygwin.gnu.c.solink.ldflags"> </option> <option name="%Option.Posix.Linker.XLinker" category="cygwin.gnu.c.solink.category.other" command="-Xlinker" - id="cygwin.gnu.c.solink.options.other" - valueType="stringList"> + valueType="stringList" + id="cygwin.gnu.c.solink.options.other"> </option> <option name="%Option.Posix.UserObjs" category="cygwin.gnu.c.solink.category.other" - id="cygwin.gnu.c.solink.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="cygwin.gnu.c.solink.userobjs"> </option> </tool> <tool natureFilter="ccnature" name="%ToolName.linker.cpp" outputFlag="-o" - command="g++" - outputPrefix="lib" outputs="dll" + outputPrefix="lib" + command="g++" id="org.eclipse.cdt.build.tool.cygwin.solink"> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.solink" @@ -1204,32 +1206,32 @@ name="%Option.Posix.Linker.NoStartFiles" category="cygwin.gnu.solink.category.general" command="-nostartfiles" - id="cygwin.gnu.solink.options.nostart" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.solink.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="cygwin.gnu.solink.category.general" command="-nodefaultlibs" - id="cygwin.gnu.solink.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.solink.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="cygwin.gnu.solink.category.general" command="-nostdlib" - id="cygwin.gnu.solink.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.solink.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="cygwin.gnu.solink.category.general" command="-s" - id="cygwin.gnu.solink.options.strip" - valueType="boolean"> + valueType="boolean" + id="cygwin.gnu.solink.options.strip"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.solink" @@ -1240,15 +1242,15 @@ name="%Option.Posix.Libs" category="cygwin.gnu.solink.category.libs" command="-l" - id="cygwin.solink.libs" - valueType="libs"> + valueType="libs" + id="cygwin.solink.libs"> </option> <option name="%Option.Posix.Libsearch" category="cygwin.gnu.solink.category.libs" command="-L" - id="cygwin.solink.ld.paths" - valueType="stringList"> + valueType="stringList" + id="cygwin.solink.ld.paths"> </option> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.solink" @@ -1256,32 +1258,32 @@ id="cygwin.gnu.solink.category.other"> </optionCategory> <option - defaultValue="-shared" + defaultValue="-shared -fmessage-length=0" name="%Option.Posix.Linker.Flags" category="cygwin.gnu.solink.category.other" - id="cygwin.solink.ld.flags" - valueType="string"> + valueType="string" + id="cygwin.solink.ld.flags"> </option> <option name="%Option.Posix.Linker.XLinker" category="cygwin.gnu.solink.category.other" command="-Xlinker" - id="cygwin.gnu.solinker.options.other" - valueType="stringList"> + valueType="stringList" + id="cygwin.gnu.solinker.options.other"> </option> <option name="%Option.Posix.UserObjs" category="cygwin.gnu.solink.category.other" - id="cygwin.gnu.solink.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="cygwin.gnu.solink.userobjs"> </option> </tool> </target> <target isTest="true" name="%TargetName.cygw.dll" - binaryParser="org.eclipse.cdt.core.PE" parent="cygwin" + binaryParser="org.eclipse.cdt.core.PE" defaultExtension="dll.a" isAbstract="false" id="cygwin.exp"> @@ -1322,9 +1324,9 @@ natureFilter="ccnature" name="%ToolName.linker.cpp" outputFlag="-o" - command="g++ -shared" - outputPrefix="cyg" outputs="dll" + outputPrefix="cyg" + command="g++ -shared" id="org.eclipse.cdt.build.tool.cygwin.explink"> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.explink" @@ -1335,30 +1337,30 @@ defaultValue="-Wl,--export-all-symbols -Wl,--enable-auto-import" name="%Option.Posix.Linker.Flags" category="cygwin.explink.category.general" - id="cygwin.explink.ld.flags" - valueType="string"> + valueType="string" + id="cygwin.explink.ld.flags"> </option> <option name="%Option.Posix.Libs" category="cygwin.explink.category.general" command="-l" - id="cygwin.explink.libs" - valueType="libs"> + valueType="libs" + id="cygwin.explink.libs"> </option> <option name="%Option.Posix.Libsearch" category="cygwin.explink.category.general" command="-L" - id="cygwin.explink.ld.paths" - valueType="stringList"> + valueType="stringList" + id="cygwin.explink.ld.paths"> </option> </tool> </target> <target isTest="false" name="%TargetName.cygw.lib" - binaryParser="org.eclipse.cdt.core.PE" parent="cygwin" + binaryParser="org.eclipse.cdt.core.PE" defaultExtension="a" isAbstract="false" id="cygwin.lib"> @@ -1420,9 +1422,9 @@ <tool natureFilter="both" name="%ToolName.archiver" - command="ar" - outputPrefix="lib" outputs="a" + outputPrefix="lib" + command="ar" id="org.eclipse.cdt.build.tool.cygwin.ar"> <optionCategory owner="org.eclipse.cdt.build.tool.cygwin.ar" @@ -1433,8 +1435,8 @@ defaultValue="-r" name="%Option.Posix.Archiver.Flags" category="cygwin.ar.category.general" - id="cygwin.ar.flags" - valueType="string"> + valueType="string" + id="cygwin.ar.flags"> </option> </tool> </target> @@ -1450,12 +1452,12 @@ osList="linux"> <tool natureFilter="cnature" - name="%ToolName.compiler.c" sources="c" + name="%ToolName.compiler.c" headerExtensions="h" outputFlag="-o" - command="gcc" outputs="o" + command="gcc" id="cdt.build.tool.linux.gnu.c.compiler"> <optionCategory owner="cdt.build.tool.linux.gnu.c.compiler" @@ -1467,16 +1469,16 @@ name="%Option.Posix.Nostdinc" category="linux.gnu.c.compiler.category.preprocessor" command="-nostdinc" - id="linux.gnu.c.compiler.preprocessor.nostdinc" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.preprocessor.nostdinc"> </option> <option defaultValue="false" name="%Option.Posix.PreprocOnly" category="linux.gnu.c.compiler.category.preprocessor" command="-E" - id="linux.gnu.c.compiler.preprocessor.preprocess" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.preprocessor.preprocess"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.compiler" @@ -1487,75 +1489,75 @@ name="%Option.Posix.DefSym" category="linux.gnu.c.compiler.category.symbols" command="-D" - id="linux.gnu.c.preprocessor.def.symbols" - valueType="definedSymbols"> + valueType="definedSymbols" + id="linux.gnu.c.preprocessor.def.symbols"> <listOptionValue - builtIn="true" - value="__ELF__"> + value="__ELF__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="unix"> + value="unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__gnu_linux__"> + value="__gnu_linux__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="linux"> + value="linux" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix__"> + value="__unix__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__linux__"> + value="__linux__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix"> + value="__unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__linux"> + value="__linux" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__OPTIMIZE__"> + value="__OPTIMIZE__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__STDC_HOSTED__=1"> + value="__STDC_HOSTED__=1" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_GNU_SOURCE"> + value="_GNU_SOURCE" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="i386"> + value="i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386"> + value="__i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386__"> + value="__i386__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_i386__"> + value="__tune_i386__" + builtIn="true"> </listOptionValue> </option> <option name="%Option.Posix.UndefSym" category="linux.gnu.c.compiler.category.symbols" command="-U" - id="linux.gnu.c.preprocessor.undef.symbol" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.c.preprocessor.undef.symbol"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.compiler" @@ -1566,8 +1568,8 @@ name="%Option.Posix.InclPaths" category="linux.gnu.c.compiler.category.dirs" command="-I" - id="linux.gnu.c.compiler.general.include.paths" - valueType="includePath"> + valueType="includePath" + id="linux.gnu.c.compiler.general.include.paths"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.compiler" @@ -1577,8 +1579,8 @@ <option name="%Option.Posix.OptLevel" category="linux.gnu.c.compiler.category.optimization" - id="linux.gnu.c.compiler.general.optimization.level" - valueType="enumerated"> + valueType="enumerated" + id="linux.gnu.c.compiler.general.optimization.level"> <enumeratedOptionValue name="%Option.Posix.Optimize.None" isDefault="false" @@ -1605,8 +1607,8 @@ <option name="%Option.Posix.Optimize.Flags" category="linux.gnu.c.compiler.category.optimization" - id="linux.gnu.c.compiler.optimization.flags" - valueType="string"> + valueType="string" + id="linux.gnu.c.compiler.optimization.flags"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.compiler" @@ -1616,8 +1618,8 @@ <option name="%Option.Posix.DebugLevel" category="linux.gnu.c.compiler.category.debug" - id="linux.c.compiler.debugging.level" - valueType="enumerated"> + valueType="enumerated" + id="linux.c.compiler.debugging.level"> <enumeratedOptionValue name="%Option.Posix.Debug.None" isDefault="false" @@ -1644,24 +1646,24 @@ <option name="%Option.Posix.Debug.Other" category="linux.gnu.c.compiler.category.debug" - id="linux.gnu.c.compiler.debugging.other" - valueType="string"> + valueType="string" + id="linux.gnu.c.compiler.debugging.other"> </option> <option defaultValue="false" name="%Option.Posix.Debug.gprof" category="linux.gnu.c.compiler.category.debug" command="-pg" - id="linux.gnu.c.compiler.debugging.gprof" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.debugging.gprof"> </option> <option defaultValue="false" name="%Option.Posix.Debug.prof" category="linux.gnu.c.compiler.category.debug" command="-p" - id="linux.gnu.c.compiler.debugging.prof" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.debugging.prof"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.compiler" @@ -1673,48 +1675,48 @@ name="%Option.Posix.Warn.Syntax" category="linux.c.compiler.category.warnings" command="-fsyntax-only" - id="linux.gnu.c.compiler.warnings.syntax" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.warnings.syntax"> </option> <option defaultValue="false" name="%Option.Posix.Warn.Pedandic" category="linux.c.compiler.category.warnings" command="-pedantic" - id="linux.gnu.c.compiler.warnings.pedantic" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.warnings.pedantic"> </option> <option defaultValue="false" name="%Option.Posix.Warn.PedErrors" category="linux.c.compiler.category.warnings" command="-pedantic-errors" - id="linux.gnu.c.compiler.warnings.pedantic.error" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.warnings.pedantic.error"> </option> <option defaultValue="false" name="%Option.Posix.Warn.nowarn" category="linux.c.compiler.category.warnings" command="-w" - id="linux.gnu.c.compiler.warnings.nowarn" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.warnings.nowarn"> </option> <option defaultValue="true" name="%Option.Posix.Warn.allwarn" category="linux.c.compiler.category.warnings" command="-Wall" - id="linux.gnu.c.compiler.warnings.allwarn" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.warnings.allwarn"> </option> <option defaultValue="false" name="%Option.Posix.Warn.toerrs" category="linux.c.compiler.category.warnings" command="-Werror" - id="linux.gnu.c.compiler.warnings.toerrors" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.warnings.toerrors"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.compiler" @@ -1725,34 +1727,34 @@ defaultValue="-c" name="%Option.OtherFlags" category="linux.c.compiler.category.other" - id="linux.gnu.c.compiler.misc.other" - valueType="string"> + valueType="string" + id="linux.gnu.c.compiler.misc.other"> </option> <option defaultValue="false" name="%Option.Posix.Verbose" category="linux.c.compiler.category.other" command="-v" - id="linux.gnu.c.compiler.misc.verbose" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.misc.verbose"> </option> <option defaultValue="false" name="%Option.Posix.Ansi" category="linux.c.compiler.category.other" command="-ansi" - id="linux.gnu.c.compiler.misc.ansi" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.compiler.misc.ansi"> </option> </tool> <tool natureFilter="ccnature" - name="%ToolName.compiler.cpp" sources="c,C,cc,cxx,cpp" + name="%ToolName.compiler.cpp" headerExtensions="h,H,hpp" outputFlag="-o" - command="g++" outputs="o" + command="g++" id="cdt.build.tool.linux.gnu.compiler"> <optionCategory owner="cdt.build.tool.linux.gnu.compiler" @@ -1764,90 +1766,90 @@ name="%Option.Posix.Nostdinc" category="linux.gnu.compiler.category.preprocessor" command="-nostdinc" - id="linux.gnu.compiler.preprocessor.nostdinc" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.preprocessor.nostdinc"> </option> <option defaultValue="false" name="%Option.Posix.PreprocOnly" category="linux.gnu.compiler.category.preprocessor" command="-E" - id="linux.gnu.compiler.preprocessor.preprocess" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.preprocessor.preprocess"> </option> <option name="%Option.Posix.DefSym" category="linux.gnu.compiler.category.preprocessor" command="-D" - id="linux.gnu.compiler.preprocessor.def" - valueType="definedSymbols"> + valueType="definedSymbols" + id="linux.gnu.compiler.preprocessor.def"> <listOptionValue - builtIn="true" - value="__ELF__"> + value="__ELF__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="unix"> + value="unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__gnu_linux__"> + value="__gnu_linux__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="linux"> + value="linux" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix__"> + value="__unix__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__linux__"> + value="__linux__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix"> + value="__unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__linux"> + value="__linux" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__OPTIMIZE__"> + value="__OPTIMIZE__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__STDC_HOSTED__=1"> + value="__STDC_HOSTED__=1" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="_GNU_SOURCE"> + value="_GNU_SOURCE" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="i386"> + value="i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386"> + value="__i386" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__i386__"> + value="__i386__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__tune_i386__"> + value="__tune_i386__" + builtIn="true"> </listOptionValue> </option> <option name="%Option.Posix.UndefSym" category="linux.gnu.compiler.category.preprocessor" command="-U" - id="linux.gnu.compiler.preprocessor.undef" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.compiler.preprocessor.undef"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.compiler" @@ -1858,15 +1860,15 @@ name="%Option.Posix.InclPaths" category="linux.gnu.compiler.category.dirs" command="-I" - id="linux.gnu.compiler.dirs.incpaths" - valueType="includePath"> + valueType="includePath" + id="linux.gnu.compiler.dirs.incpaths"> <listOptionValue - builtIn="true" - value="/usr/local/include"> + value="/usr/local/include" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="/usr/include"> + value="/usr/include" + builtIn="true"> </listOptionValue> </option> <optionCategory @@ -1877,8 +1879,8 @@ <option name="%Option.Posix.OptLevel" category="linux.gnu.compiler.category.optimization" - id="linux.gnu.compiler.optimization.level" - valueType="enumerated"> + valueType="enumerated" + id="linux.gnu.compiler.optimization.level"> <enumeratedOptionValue name="%Option.Posix.Optimize.None" command="-O0" @@ -1904,8 +1906,8 @@ <option name="%Option.Posix.Optimize.Flags" category="linux.gnu.compiler.category.optimization" - id="linux.compiler.optimization.flags" - valueType="string"> + valueType="string" + id="linux.compiler.optimization.flags"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.compiler" @@ -1915,8 +1917,8 @@ <option name="%Option.Posix.DebugLevel" category="linux.gnu.compiler.category.debug" - id="linux.gnu.compiler.debugging.level" - valueType="enumerated"> + valueType="enumerated" + id="linux.gnu.compiler.debugging.level"> <enumeratedOptionValue name="%Option.Posix.Debug.None" isDefault="false" @@ -1943,24 +1945,24 @@ <option name="%Option.Posix.Debug.Other" category="linux.gnu.compiler.category.debug" - id="linux.gnu.compiler.debugging.other" - valueType="string"> + valueType="string" + id="linux.gnu.compiler.debugging.other"> </option> <option defaultValue="false" name="%Option.Posix.Debug.prof" category="linux.gnu.compiler.category.debug" command="-p" - id="linux.gnu.compiler.debugging.prof" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.debugging.prof"> </option> <option defaultValue="false" name="%Option.Posix.Debug.gprof" category="linux.gnu.compiler.category.debug" command="-pg" - id="linux.gnu.compiler.debugging.gprof" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.debugging.gprof"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.compiler" @@ -1972,48 +1974,48 @@ name="%Option.Posix.Warn.Syntax" category="linux.gnu.compiler.category.warnings" command="-fsyntax-only" - id="linux.gnu.compiler.warnings.syntax" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.warnings.syntax"> </option> <option defaultValue="false" name="%Option.Posix.Warn.Pedandic" category="linux.gnu.compiler.category.warnings" command="-pedantic" - id="linux.gnu.compiler.warnings.pedantic" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.warnings.pedantic"> </option> <option defaultValue="false" name="%Option.Posix.Warn.PedErrors" category="linux.gnu.compiler.category.warnings" command="-pedantic-errors" - id="linux.gnu.compiler.warnings.pedantic.error" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.warnings.pedantic.error"> </option> <option defaultValue="false" name="%Option.Posix.Warn.nowarn" category="linux.gnu.compiler.category.warnings" command="-w" - id="linux.gnu.compiler.warnings.nowarn" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.warnings.nowarn"> </option> <option defaultValue="true" name="%Option.Posix.Warn.allwarn" category="linux.gnu.compiler.category.warnings" command="-Wall" - id="linux.gnu.compiler.warnings.allwarn" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.warnings.allwarn"> </option> <option defaultValue="false" name="%Option.Posix.Warn.toerrs" category="linux.gnu.compiler.category.warnings" command="-Werror" - id="linux.gnu.compiler.warnings.toerrors" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.warnings.toerrors"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.compiler" @@ -2024,24 +2026,24 @@ defaultValue="-c" name="%Option.OtherFlags" category="linux.gnu.compiler.category.other" - id="linux.gnu.compiler.other.other" - valueType="string"> + valueType="string" + id="linux.gnu.compiler.other.other"> </option> <option defaultValue="false" name="%Option.Posix.Verbose" category="linux.gnu.compiler.category.other" command="-v" - id="linux.gnu.compiler.other.verbose" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.compiler.other.verbose"> </option> </tool> </target> <target isTest="false" name="%TargetName.linux.exe" - binaryParser="org.eclipse.cdt.core.ELF" parent="linux.gnu" + binaryParser="org.eclipse.cdt.core.ELF" isAbstract="false" id="linux.gnu.exec"> <configuration @@ -2098,8 +2100,8 @@ </configuration> <tool natureFilter="cnature" - name="%ToolName.linker.c" sources="o" + name="%ToolName.linker.c" outputFlag="-o" command="gcc" id="cdt.build.tool.linux.c.link"> @@ -2113,40 +2115,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="linux.gnu.c.linker.category.general" command="-nostartfiles" - id="linux.gnu.c.link.options.nostart" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.link.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="linux.gnu.c.linker.category.general" command="-nodefaultlibs" - id="linux.gnu.c.link.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.link.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="linux.gnu.c.linker.category.general" command="-nostdlib" - id="linux.gnu.c.link.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.link.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="linux.gnu.c.linker.category.options" command="-s" - id="linux.gnu.c.link.options.strip" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.link.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="linux.gnu.c.linker.category.general" command="-static" - id="linux.gnu.c.link.options.noshared" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.link.options.noshared"> </option> <optionCategory owner="cdt.build.tool.linux.c.link" @@ -2157,15 +2159,15 @@ name="%Option.Posix.Libs" category="linux.gnu.c.linker.category.libs" command="-l" - id="linux.gnu.c.link.libs" - valueType="libs"> + valueType="libs" + id="linux.gnu.c.link.libs"> </option> <option name="%Option.Posix.Libsearch" category="linux.gnu.c.linker.category.libs" command="-L" - id="linux.gnu.c.link.paths" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.c.link.paths"> </option> <optionCategory owner="cdt.build.tool.linux.c.link" @@ -2175,27 +2177,27 @@ <option name="%Option.Posix.Linker.Flags" category="linux.gnu.c.linker.category.other" - id="linux.gnu.c.link.ldflags" - valueType="string"> + valueType="string" + id="linux.gnu.c.link.ldflags"> </option> <option name="%Option.Posix.Linker.XLinker" category="linux.gnu.c.linker.category.other" command="-Xlinker" - id="linux.gnu.c.link.options.other" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.c.link.options.other"> </option> <option name="%Option.Posix.UserObjs" category="linux.gnu.c.linker.category.other" - id="linux.gnu.c.link.ld.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="linux.gnu.c.link.ld.userobjs"> </option> </tool> <tool natureFilter="ccnature" - name="%ToolName.linker.cpp" sources="o" + name="%ToolName.linker.cpp" outputFlag="-o" command="g++" id="cdt.build.tool.linux.gnu.link"> @@ -2209,40 +2211,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="linux.gnu.linker.category.options" command="-nostartfiles" - id="linux.gnu.linker.options.nostart" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.linker.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="linux.gnu.linker.category.options" command="-nodefaultlibs" - id="linux.gnu.linker.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.linker.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="linux.gnu.linker.category.options" command="-nostdlib" - id="linux.gnu.linker.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.linker.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="linux.gnu.linker.category.options" command="-s" - id="linux.gnu.linker.options.strip" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.linker.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="linux.gnu.linker.category.options" command="-static" - id="linux.gnu.linker.options.noshared" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.linker.options.noshared"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.link" @@ -2253,15 +2255,15 @@ name="%Option.Posix.Libs" category="linux.gnu.linker.category.libs" command="-l" - id="linux.gnu.linker.libs.libs" - valueType="libs"> + valueType="libs" + id="linux.gnu.linker.libs.libs"> </option> <option name="%Option.Posix.Libsearch" category="linux.gnu.linker.category.libs" command="-L" - id="linux.gnu.linker.libs.paths" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.linker.libs.paths"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.link" @@ -2271,29 +2273,29 @@ <option name="%Option.Posix.Linker.Flags" category="linux.gnu.linker.category.other" - id="linux.gnu.linker.libs.flags" - valueType="string"> + valueType="string" + id="linux.gnu.linker.libs.flags"> </option> <option name="%Option.Posix.Linker.XLinker" category="linux.gnu.linker.category.other" command="-Xlinker" - id="linux.gnu.linker.options.other" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.linker.options.other"> </option> <option name="%Option.Posix.UserObjs" category="linux.gnu.linker.category.other" - id="linux.gnu.linker.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="linux.gnu.linker.userobjs"> </option> </tool> </target> <target isTest="false" name="%TargetName.linux.so" - binaryParser="org.eclipse.cdt.core.ELF" parent="linux.gnu" + binaryParser="org.eclipse.cdt.core.ELF" defaultExtension="so" isAbstract="false" id="linux.gnu.so"> @@ -2351,12 +2353,12 @@ </configuration> <tool natureFilter="cnature" - name="%ToolName.linker.c" sources="o" + name="%ToolName.linker.c" outputFlag="-o" - command="gcc" - outputPrefix="lib" outputs="so" + outputPrefix="lib" + command="gcc" id="cdt.build.tool.linux.gnu.c.solink"> <optionCategory owner="cdt.build.tool.linux.gnu.c.solink" @@ -2368,40 +2370,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="linux.gnu.c.solink.category.general" command="-nostartfiles" - id="linux.gnu.c.solink.options.nostart" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.solink.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="linux.gnu.c.solink.category.general" command="-nodefaultlibs" - id="linux.gnu.c.solink.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.solink.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="linux.gnu.c.solink.category.general" command="-nostdlib" - id="linux.gnu.c.solink.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.solink.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="linux.gnu.c.solink.category.general" command="-s" - id="linux.gnu.c.solink.options.strip" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.solink.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="linux.gnu.c.solink.category.general" command="-static" - id="linux.gnu.c.solink.options.noshared" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.c.solink.options.noshared"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.solink" @@ -2412,15 +2414,15 @@ name="%Option.Posix.Libs" category="linux.gnu.c.solink.category.libs" command="-l" - id="linux.gnu.c.solink.libs" - valueType="libs"> + valueType="libs" + id="linux.gnu.c.solink.libs"> </option> <option name="%Option.Posix.Libsearch" category="linux.gnu.c.solink.category.libs" command="-L" - id="linux.gnu.c.solink.paths" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.c.solink.paths"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.c.solink" @@ -2431,31 +2433,31 @@ defaultValue="-shared" name="%Option.Posix.Linker.Flags" category="linux.gnu.c.solink.category.other" - id="linux.gnu.c.solink.ldflags" - valueType="string"> + valueType="string" + id="linux.gnu.c.solink.ldflags"> </option> <option name="%Option.Posix.Linker.XLinker" category="linux.gnu.c.solink.category.other" command="-Xlinker" - id="linux.gnu.c.solink.options.other" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.c.solink.options.other"> </option> <option name="%Option.Posix.UserObjs" category="linux.gnu.c.solink.category.other" - id="linux.gnu.c.solink.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="linux.gnu.c.solink.userobjs"> </option> </tool> <tool natureFilter="ccnature" - name="%ToolName.linker.cpp" sources="o" + name="%ToolName.linker.cpp" outputFlag="-o" - command="g++" - outputPrefix="lib" outputs="so" + outputPrefix="lib" + command="g++" id="cdt.build.tool.linux.gnu.solink"> <optionCategory owner="cdt.build.tool.linux.gnu.solink" @@ -2467,32 +2469,32 @@ name="%Option.Posix.Linker.NoStartFiles" category="linux.gnu.solink.category.options" command="-nostartfiles" - id="linux.gnu.solink.options.nostart" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.solink.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="linux.gnu.solink.category.options" command="-nodefaultlibs" - id="linux.gnu.solink.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.solink.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="linux.gnu.solink.category.options" command="-nostdlib" - id="linux.gnu.solink.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.solink.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="linux.gnu.solink.category.options" command="-s" - id="linux.gnu.solink.options.strip" - valueType="boolean"> + valueType="boolean" + id="linux.gnu.solink.options.strip"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.solink" @@ -2503,15 +2505,15 @@ name="%Option.Posix.Libs" category="linux.gnu.solink.category.libs" command="-l" - id="linux.gnu.solink.libs.libs" - valueType="libs"> + valueType="libs" + id="linux.gnu.solink.libs.libs"> </option> <option name="%Option.Posix.Libsearch" category="linux.gnu.solink.category.libs" command="-L" - id="linux.gnu.solink.libs.paths" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.solink.libs.paths"> </option> <optionCategory owner="cdt.build.tool.linux.gnu.solink" @@ -2522,29 +2524,29 @@ defaultValue="-shared" name="%Option.Posix.Linker.Flags" category="linux.gnu.solink.category.other" - id="linux.gnu.solink.libs.flags" - valueType="string"> + valueType="string" + id="linux.gnu.solink.libs.flags"> </option> <option name="%Option.Posix.Linker.XLinker" category="linux.gnu.solink.category.other" command="-Xlinker" - id="linux.gnu.solink.options.other" - valueType="stringList"> + valueType="stringList" + id="linux.gnu.solink.options.other"> </option> <option name="%Option.Posix.UserObjs" category="linux.gnu.solink.category.other" - id="linux.gnu.solink.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="linux.gnu.solink.userobjs"> </option> </tool> </target> <target isTest="false" name="%TargetName.linux.lib" - binaryParser="org.eclipse.cdt.core.ELF" parent="linux.gnu" + binaryParser="org.eclipse.cdt.core.ELF" defaultExtension="a" isAbstract="false" id="linux.gnu.lib"> @@ -2602,11 +2604,11 @@ </configuration> <tool natureFilter="both" - name="%ToolName.archiver" sources="o" - command="ar" - outputPrefix="lib" + name="%ToolName.archiver" outputs="a" + outputPrefix="lib" + command="ar" id="cdt.build.tool.linux.gnu.lib"> <optionCategory owner="cdt.build.tool.linux.gnu.lib" @@ -2617,8 +2619,8 @@ defaultValue="-r" name="%Option.Posix.Archiver.Flags" category="linux.gnu.lib.category.general" - id="linux.gnu.lib.flags" - valueType="string"> + valueType="string" + id="linux.gnu.lib.flags"> </option> </tool> </target> @@ -2634,12 +2636,12 @@ osList="solaris"> <tool natureFilter="cnature" - name="%ToolName.compiler.c" sources="c" + name="%ToolName.compiler.c" headerExtensions="h" outputFlag="-o" - command="gcc" outputs="o" + command="gcc" id="cdt.build.tool.solaris.gnu.c.compiler"> <optionCategory owner="cdt.build.tool.solaris.gnu.c.compiler" @@ -2651,16 +2653,16 @@ name="%Option.Posix.Nostdinc" category="solaris.gnu.c.compiler.category.preprocessor" command="-nostdinc" - id="solaris.gnu.c.compiler.preprocessor.nostdinc" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.preprocessor.nostdinc"> </option> <option defaultValue="false" name="%Option.Posix.PreprocOnly" category="solaris.gnu.c.compiler.category.preprocessor" command="-E" - id="solaris.gnu.c.compiler.preprocessor.preprocess" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.preprocessor.preprocess"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.compiler" @@ -2671,67 +2673,67 @@ name="%Option.Posix.DefSym" category="solaris.gnu.c.compiler.category.symbols" command="-D" - id="solaris.gnu.c.preprocessor.def.symbols" - valueType="definedSymbols"> + valueType="definedSymbols" + id="solaris.gnu.c.preprocessor.def.symbols"> <listOptionValue - builtIn="true" - value="sun"> + value="sun" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="sparc"> + value="sparc" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="unix"> + value="unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__svr4__"> + value="__svr4__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__SVR4"> + value="__SVR4" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__GCC_NEW_VARARGS__"> + value="__GCC_NEW_VARARGS__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sun__"> + value="__sun__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sparc__"> + value="__sparc__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix__"> + value="__unix__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sun"> + value="__sun" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sparc"> + value="__sparc" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix"> + value="__unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__OPTIMIZE__"> + value="__OPTIMIZE__" + builtIn="true"> </listOptionValue> </option> <option name="%Option.Posix.UndefSym" category="solaris.gnu.c.compiler.category.symbols" command="-U" - id="solaris.gnu.c.preprocessor.undef.symbol" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.c.preprocessor.undef.symbol"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.compiler" @@ -2742,8 +2744,8 @@ name="%Option.Posix.InclPaths" category="solaris.gnu.c.compiler.category.dirs" command="-I" - id="solaris.gnu.c.compiler.general.include.paths" - valueType="includePath"> + valueType="includePath" + id="solaris.gnu.c.compiler.general.include.paths"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.compiler" @@ -2753,8 +2755,8 @@ <option name="%Option.Posix.OptLevel" category="solaris.gnu.c.compiler.category.optimization" - id="solaris.gnu.c.compiler.general.optimization.level" - valueType="enumerated"> + valueType="enumerated" + id="solaris.gnu.c.compiler.general.optimization.level"> <enumeratedOptionValue name="%Option.Posix.Optimize.None" isDefault="false" @@ -2781,8 +2783,8 @@ <option name="%Option.Posix.Optimize.Flags" category="solaris.gnu.c.compiler.category.optimization" - id="solaris.gnu.c.compiler.optimization.flags" - valueType="string"> + valueType="string" + id="solaris.gnu.c.compiler.optimization.flags"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.compiler" @@ -2792,8 +2794,8 @@ <option name="%Option.Posix.DebugLevel" category="solaris.gnu.c.compiler.category.debug" - id="solaris.c.compiler.debugging.level" - valueType="enumerated"> + valueType="enumerated" + id="solaris.c.compiler.debugging.level"> <enumeratedOptionValue name="%Option.Posix.Debug.None" isDefault="false" @@ -2820,24 +2822,24 @@ <option name="%Option.Posix.Debug.Other" category="solaris.gnu.c.compiler.category.debug" - id="solaris.gnu.c.compiler.debugging.other" - valueType="string"> + valueType="string" + id="solaris.gnu.c.compiler.debugging.other"> </option> <option defaultValue="false" name="%Option.Posix.Debug.gprof" category="solaris.gnu.c.compiler.category.debug" command="-pg" - id="solaris.gnu.c.compiler.debugging.gprof" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.debugging.gprof"> </option> <option defaultValue="false" name="%Option.Posix.Debug.prof" category="solaris.gnu.c.compiler.category.debug" command="-p" - id="solaris.gnu.c.compiler.debugging.prof" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.debugging.prof"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.compiler" @@ -2849,48 +2851,48 @@ name="%Option.Posix.Warn.Syntax" category="solaris.c.compiler.category.warnings" command="-fsyntax-only" - id="solaris.gnu.c.compiler.warnings.syntax" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.warnings.syntax"> </option> <option defaultValue="false" name="%Option.Posix.Warn.Pedandic" category="solaris.c.compiler.category.warnings" command="-pedantic" - id="solaris.gnu.c.compiler.warnings.pedantic" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.warnings.pedantic"> </option> <option defaultValue="false" name="%Option.Posix.Warn.PedErrors" category="solaris.c.compiler.category.warnings" command="-pedantic-errors" - id="solaris.gnu.c.compiler.warnings.pedantic.error" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.warnings.pedantic.error"> </option> <option defaultValue="false" name="%Option.Posix.Warn.nowarn" category="solaris.c.compiler.category.warnings" command="-w" - id="solaris.gnu.c.compiler.warnings.nowarn" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.warnings.nowarn"> </option> <option defaultValue="true" name="%Option.Posix.Warn.allwarn" category="solaris.c.compiler.category.warnings" command="-Wall" - id="solaris.gnu.c.compiler.warnings.allwarn" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.warnings.allwarn"> </option> <option defaultValue="false" name="%Option.Posix.Warn.toerrs" category="solaris.c.compiler.category.warnings" command="-Werror" - id="solaris.gnu.c.compiler.warnings.toerrors" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.warnings.toerrors"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.compiler" @@ -2901,34 +2903,34 @@ defaultValue="-c" name="%Option.OtherFlags" category="solaris.c.compiler.category.other" - id="solaris.gnu.c.compiler.misc.other" - valueType="string"> + valueType="string" + id="solaris.gnu.c.compiler.misc.other"> </option> <option defaultValue="false" name="%Option.Posix.Verbose" category="solaris.c.compiler.category.other" command="-v" - id="solaris.gnu.c.compiler.misc.verbose" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.misc.verbose"> </option> <option defaultValue="false" name="%Option.Posix.Ansi" category="solaris.c.compiler.category.other" command="-ansi" - id="solaris.gnu.c.compiler.misc.ansi" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.compiler.misc.ansi"> </option> </tool> <tool natureFilter="ccnature" - name="%ToolName.compiler.cpp" sources="c,C,cc,cxx,cpp" + name="%ToolName.compiler.cpp" headerExtensions="h,H,hpp" outputFlag="-o" - command="g++" outputs="o" + command="g++" id="cdt.build.tool.solaris.gnu.compiler"> <optionCategory owner="cdt.build.tool.solaris.gnu.compiler" @@ -2940,74 +2942,74 @@ name="%Option.Posix.Nostdinc" category="solaris.gnu.compiler.category.preprocessor" command="-nostdinc" - id="solaris.gnu.compiler.preprocessor.nostdinc" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.preprocessor.nostdinc"> </option> <option defaultValue="false" name="%Option.Posix.PreprocOnly" category="solaris.gnu.compiler.category.preprocessor" command="-E" - id="solaris.gnu.compiler.preprocessor.preprocess" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.preprocessor.preprocess"> </option> <option name="%Option.Posix.DefSym" category="solaris.gnu.compiler.category.preprocessor" command="-D" - id="solaris.gnu.compiler.preprocessor.def" - valueType="definedSymbols"> + valueType="definedSymbols" + id="solaris.gnu.compiler.preprocessor.def"> <listOptionValue - builtIn="true" - value="sun"> + value="sun" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="sparc"> + value="sparc" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="unix"> + value="unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__svr4__"> + value="__svr4__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__SVR4"> + value="__SVR4" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__GCC_NEW_VARARGS__"> + value="__GCC_NEW_VARARGS__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sun__"> + value="__sun__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sparc__"> + value="__sparc__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix__"> + value="__unix__" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sun"> + value="__sun" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__sparc"> + value="__sparc" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__unix"> + value="__unix" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="__OPTIMIZE__"> + value="__OPTIMIZE__" + builtIn="true"> </listOptionValue> </option> <optionCategory @@ -3019,15 +3021,15 @@ name="%Option.Posix.InclPaths" category="solaris.gnu.compiler.category.dirs" command="-I" - id="solaris.gnu.compiler.dirs.incpaths" - valueType="includePath"> + valueType="includePath" + id="solaris.gnu.compiler.dirs.incpaths"> <listOptionValue - builtIn="true" - value="/usr/local/include"> + value="/usr/local/include" + builtIn="true"> </listOptionValue> <listOptionValue - builtIn="true" - value="/usr/include"> + value="/usr/include" + builtIn="true"> </listOptionValue> </option> <optionCategory @@ -3038,8 +3040,8 @@ <option name="%Option.Posix.OptLevel" category="solaris.gnu.compiler.category.optimization" - id="solaris.gnu.compiler.optimization.level" - valueType="enumerated"> + valueType="enumerated" + id="solaris.gnu.compiler.optimization.level"> <enumeratedOptionValue name="%Option.Posix.Optimize.None" command="-O0" @@ -3065,8 +3067,8 @@ <option name="%Option.Posix.Optimize.Flags" category="solaris.gnu.compiler.category.optimization" - id="solaris.compiler.optimization.flags" - valueType="string"> + valueType="string" + id="solaris.compiler.optimization.flags"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.compiler" @@ -3076,8 +3078,8 @@ <option name="%Option.Posix.DebugLevel" category="solaris.gnu.compiler.category.debug" - id="solaris.gnu.compiler.debugging.level" - valueType="enumerated"> + valueType="enumerated" + id="solaris.gnu.compiler.debugging.level"> <enumeratedOptionValue name="%Option.Posix.Debug.None" isDefault="false" @@ -3104,24 +3106,24 @@ <option name="%Option.Posix.Debug.Other" category="solaris.gnu.compiler.category.debug" - id="solaris.gnu.compiler.debugging.other" - valueType="string"> + valueType="string" + id="solaris.gnu.compiler.debugging.other"> </option> <option defaultValue="false" name="%Option.Posix.Debug.prof" category="solaris.gnu.compiler.category.debug" command="-p" - id="solaris.gnu.compiler.debugging.prof" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.debugging.prof"> </option> <option defaultValue="false" name="%Option.Posix.Debug.gprof" category="solaris.gnu.compiler.category.debug" command="-pg" - id="solaris.gnu.compiler.debugging.gprof" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.debugging.gprof"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.compiler" @@ -3133,48 +3135,48 @@ name="%Option.Posix.Warn.Syntax" category="solaris.gnu.compiler.category.warnings" command="-fsyntax-only" - id="solaris.gnu.compiler.warnings.syntax" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.warnings.syntax"> </option> <option defaultValue="false" name="%Option.Posix.Warn.Pedandic" category="solaris.gnu.compiler.category.warnings" command="-pedantic" - id="solaris.gnu.compiler.warnings.pedantic" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.warnings.pedantic"> </option> <option defaultValue="false" name="%Option.Posix.Warn.PedErrors" category="solaris.gnu.compiler.category.warnings" command="-pedantic-errors" - id="solaris.gnu.compiler.warnings.pedantic.error" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.warnings.pedantic.error"> </option> <option defaultValue="false" name="%Option.Posix.Warn.nowarn" category="solaris.gnu.compiler.category.warnings" command="-w" - id="solaris.gnu.compiler.warnings.nowarn" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.warnings.nowarn"> </option> <option defaultValue="true" name="%Option.Posix.Warn.allwarn" category="solaris.gnu.compiler.category.warnings" command="-Wall" - id="solaris.gnu.compiler.warnings.allwarn" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.warnings.allwarn"> </option> <option defaultValue="false" name="%Option.Posix.Warn.toerrs" category="solaris.gnu.compiler.category.warnings" command="-Werror" - id="solaris.gnu.compiler.warnings.toerrors" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.warnings.toerrors"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.compiler" @@ -3185,24 +3187,24 @@ defaultValue="-c" name="%Option.OtherFlags" category="solaris.gnu.compiler.category.other" - id="solaris.gnu.compiler.other.other" - valueType="string"> + valueType="string" + id="solaris.gnu.compiler.other.other"> </option> <option defaultValue="false" name="%Option.Posix.Verbose" category="solaris.gnu.compiler.category.other" command="-v" - id="solaris.gnu.compiler.other.verbose" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.compiler.other.verbose"> </option> </tool> </target> <target isTest="false" name="%TargetName.solaris.exe" - binaryParser="org.eclipse.cdt.core.ELF" parent="solaris.gnu" + binaryParser="org.eclipse.cdt.core.ELF" isAbstract="false" id="solaris.gnu.exec"> <configuration @@ -3259,8 +3261,8 @@ </configuration> <tool natureFilter="cnature" - name="%ToolName.linker.c" sources="o" + name="%ToolName.linker.c" outputFlag="-o" command="gcc" id="cdt.build.tool.solaris.gnu.c.link"> @@ -3274,40 +3276,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="solaris.gnu.c.linker.category.general" command="-nostartfiles" - id="solaris.gnu.c.link.options.nostart" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.link.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="solaris.gnu.c.linker.category.general" command="-nodefaultlibs" - id="solaris.gnu.c.link.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.link.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="solaris.gnu.c.linker.category.general" command="-nostdlib" - id="solaris.gnu.c.link.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.link.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="solaris.gnu.c.linker.category.options" command="-s" - id="solaris.gnu.c.link.options.strip" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.link.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="solaris.gnu.c.linker.category.general" command="-static" - id="solaris.gnu.c.link.options.noshared" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.link.options.noshared"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.link" @@ -3318,15 +3320,15 @@ name="%Option.Posix.Libs" category="solaris.gnu.c.linker.category.libs" command="-l" - id="solaris.gnu.c.link.libs" - valueType="libs"> + valueType="libs" + id="solaris.gnu.c.link.libs"> </option> <option name="%Option.Posix.Libsearch" category="solaris.gnu.c.linker.category.libs" command="-L" - id="solaris.gnu.c.link.paths" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.c.link.paths"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.link" @@ -3336,27 +3338,27 @@ <option name="%Option.Posix.Linker.Flags" category="solaris.gnu.c.linker.category.other" - id="solaris.gnu.c.link.ldflags" - valueType="string"> + valueType="string" + id="solaris.gnu.c.link.ldflags"> </option> <option name="%Option.Posix.Linker.XLinker" category="solaris.gnu.c.linker.category.other" command="-Xlinker" - id="solaris.gnu.c.link.options.other" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.c.link.options.other"> </option> <option name="%Option.Posix.UserObjs" category="solaris.gnu.c.linker.category.other" - id="solaris.gnu.c.link.ld.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="solaris.gnu.c.link.ld.userobjs"> </option> </tool> <tool natureFilter="ccnature" - name="%ToolName.linker.cpp" sources="o" + name="%ToolName.linker.cpp" outputFlag="-o" command="g++" id="cdt.build.tool.solaris.gnu.link"> @@ -3370,40 +3372,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="solaris.gnu.linker.category.options" command="-nostartfiles" - id="solaris.gnu.linker.options.nostart" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.linker.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="solaris.gnu.linker.category.options" command="-nodefaultlibs" - id="solaris.gnu.linker.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.linker.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="solaris.gnu.linker.category.options" command="-nostdlib" - id="solaris.gnu.linker.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.linker.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="solaris.gnu.linker.category.options" command="-s" - id="solaris.gnu.linker.options.strip" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.linker.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="solaris.gnu.linker.category.options" command="-static" - id="solaris.gnu.linker.options.noshared" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.linker.options.noshared"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.link" @@ -3414,15 +3416,15 @@ name="%Option.Posix.Libs" category="solaris.gnu.linker.category.libs" command="-l" - id="solaris.gnu.linker.libs.libs" - valueType="libs"> + valueType="libs" + id="solaris.gnu.linker.libs.libs"> </option> <option name="%Option.Posix.Libsearch" category="solaris.gnu.linker.category.libs" command="-L" - id="solaris.gnu.linker.libs.paths" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.linker.libs.paths"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.link" @@ -3432,29 +3434,29 @@ <option name="%Option.Posix.Linker.Flags" category="solaris.gnu.linker.category.other" - id="solaris.gnu.linker.libs.flags" - valueType="string"> + valueType="string" + id="solaris.gnu.linker.libs.flags"> </option> <option name="%Option.Posix.Linker.XLinker" category="solaris.gnu.linker.category.other" command="-Xlinker" - id="solaris.gnu.linker.options.other" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.linker.options.other"> </option> <option name="%Option.Posix.UserObjs" category="solaris.gnu.linker.category.other" - id="solaris.gnu.linker.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="solaris.gnu.linker.userobjs"> </option> </tool> </target> <target isTest="false" name="%TargetName.solaris.so" - binaryParser="org.eclipse.cdt.core.ELF" parent="solaris.gnu" + binaryParser="org.eclipse.cdt.core.ELF" defaultExtension="so" isAbstract="false" id="solaris.gnu.so"> @@ -3516,12 +3518,12 @@ </configuration> <tool natureFilter="cnature" - name="%ToolName.linker.c" sources="o" + name="%ToolName.linker.c" outputFlag="-o" - command="gcc" - outputPrefix="lib" outputs="so" + outputPrefix="lib" + command="gcc" id="cdt.build.tool.solaris.gnu.c.solink"> <optionCategory owner="cdt.build.tool.solaris.gnu.c.solink" @@ -3533,40 +3535,40 @@ name="%Option.Posix.Linker.NoStartFiles" category="solaris.gnu.c.solink.category.general" command="-nostartfiles" - id="solaris.gnu.c.solink.options.nostart" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.solink.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="solaris.gnu.c.solink.category.general" command="-nodefaultlibs" - id="solaris.gnu.c.solink.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.solink.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="solaris.gnu.c.solink.category.general" command="-nostdlib" - id="solaris.gnu.c.solink.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.solink.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="solaris.gnu.c.solink.category.general" command="-s" - id="solaris.gnu.c.solink.options.strip" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.solink.options.strip"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Static" category="solaris.gnu.c.solink.category.general" command="-static" - id="solaris.gnu.c.solink.options.noshared" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.c.solink.options.noshared"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.solink" @@ -3577,15 +3579,15 @@ name="%Option.Posix.Libs" category="solaris.gnu.c.solink.category.libs" command="-l" - id="solaris.gnu.c.solink.libs" - valueType="libs"> + valueType="libs" + id="solaris.gnu.c.solink.libs"> </option> <option name="%Option.Posix.Libsearch" category="solaris.gnu.c.solink.category.libs" command="-L" - id="solaris.gnu.c.solink.paths" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.c.solink.paths"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.c.solink" @@ -3596,31 +3598,31 @@ defaultValue="-shared -fPIC" name="%Option.Posix.Linker.Flags" category="solaris.gnu.c.solink.category.other" - id="solaris.gnu.c.solink.ldflags" - valueType="string"> + valueType="string" + id="solaris.gnu.c.solink.ldflags"> </option> <option name="%Option.Posix.Linker.XLinker" category="solaris.gnu.c.solink.category.other" command="-Xlinker" - id="solaris.gnu.c.solink.options.other" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.c.solink.options.other"> </option> <option name="%Option.Posix.UserObjs" category="solaris.gnu.c.solink.category.other" - id="solaris.gnu.c.solink.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="solaris.gnu.c.solink.userobjs"> </option> </tool> <tool natureFilter="ccnature" - name="%ToolName.linker.cpp" sources="o" + name="%ToolName.linker.cpp" outputFlag="-o" - command="g++" - outputPrefix="lib" outputs="so" + outputPrefix="lib" + command="g++" id="cdt.build.tool.solaris.gnu.solink"> <optionCategory owner="cdt.build.tool.solaris.gnu.solink" @@ -3632,32 +3634,32 @@ name="%Option.Posix.Linker.NoStartFiles" category="solaris.gnu.solink.category.options" command="-nostartfiles" - id="solaris.gnu.solink.options.nostart" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.solink.options.nostart"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoDefLibs" category="solaris.gnu.solink.category.options" command="-nodefaultlibs" - id="solaris.gnu.solink.options.nodeflibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.solink.options.nodeflibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.NoStdLibs" category="solaris.gnu.solink.category.options" command="-nostdlib" - id="solaris.gnu.solink.options.nostdlibs" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.solink.options.nostdlibs"> </option> <option defaultValue="false" name="%Option.Posix.Linker.Strip" category="solaris.gnu.solink.category.options" command="-s" - id="solaris.gnu.solink.options.strip" - valueType="boolean"> + valueType="boolean" + id="solaris.gnu.solink.options.strip"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.solink" @@ -3668,15 +3670,15 @@ name="%Option.Posix.Libs" category="solaris.gnu.solink.category.libs" command="-l" - id="solaris.gnu.solink.libs.libs" - valueType="libs"> + valueType="libs" + id="solaris.gnu.solink.libs.libs"> </option> <option name="%Option.Posix.Libsearch" category="solaris.gnu.solink.category.libs" command="-L" - id="solaris.gnu.solink.libs.paths" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.solink.libs.paths"> </option> <optionCategory owner="cdt.build.tool.solaris.gnu.solink" @@ -3687,29 +3689,29 @@ defaultValue="-shared -fPIC" name="%Option.Posix.Linker.Flags" category="solaris.gnu.solink.category.other" - id="solaris.gnu.solink.libs.flags" - valueType="string"> + valueType="string" + id="solaris.gnu.solink.libs.flags"> </option> <option name="%Option.Posix.Linker.XLinker" category="solaris.gnu.solink.category.other" command="-Xlinker" - id="solaris.gnu.solink.options.other" - valueType="stringList"> + valueType="stringList" + id="solaris.gnu.solink.options.other"> </option> <option name="%Option.Posix.UserObjs" category="solaris.gnu.solink.category.other" - id="solaris.gnu.solink.userobjs" - valueType="userObjs"> + valueType="userObjs" + id="solaris.gnu.solink.userobjs"> </option> </tool> </target> <target isTest="false" name="%TargetName.solaris.lib" - binaryParser="org.eclipse.cdt.core.ELF" parent="solaris.gnu" + binaryParser="org.eclipse.cdt.core.ELF" defaultExtension="a" isAbstract="false" id="solaris.gnu.lib"> @@ -3767,11 +3769,11 @@ </configuration> <tool natureFilter="both" - name="%ToolName.archiver" sources="o" - command="ar" - outputPrefix="lib" + name="%ToolName.archiver" outputs="a" + outputPrefix="lib" + command="ar" id="cdt.build.tool.solaris.gnu.lib"> <optionCategory owner="cdt.build.tool.solaris.gnu.lib" @@ -3782,8 +3784,8 @@ defaultValue="-r" name="%Option.Posix.Archiver.Flags" category="solaris.gnu.lib.category.general" - id="solaris.gnu.lib.flags" - valueType="string"> + valueType="string" + id="solaris.gnu.lib.flags"> </option> </tool> </target> diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties index 9365939c98a..438523caf6a 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties @@ -41,6 +41,7 @@ BuildPropertyPage.label.Configuration=Configuration: BuildPropertyPage.label.Active=Active configuration BuildPropertyPage.label.Settings=Configuration settings BuildPropertyPage.label.AddConfButton=Manage... +BuildPropertyPage.selection.configuration.all=All configurations BuildPropertyPage.label.ToolTree=Tools BuildPropertyPage.label.ToolOptions=Options BuildPropertyPage.tip.platform=Select a platform for the project diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildPropertyPage.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildPropertyPage.java index c13407c8bd3..7e3eee63f47 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildPropertyPage.java +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildPropertyPage.java @@ -75,6 +75,7 @@ public class BuildPropertyPage extends PropertyPage implements IWorkbenchPropert private static final String BUILD_TOOLS_LABEL = LABEL + ".BuildToolTree"; //$NON-NLS-1$ private static final String PLATFORM_LABEL = LABEL + ".Platform"; //$NON-NLS-1$ private static final String CONFIG_LABEL = LABEL + ".Configuration"; //$NON-NLS-1$ + private static final String ALL_CONFS = PREFIX + ".selection.configuration.all"; //$NON-NLS-1$ private static final String ACTIVE_LABEL = LABEL + ".Active"; //$NON-NLS-1$ private static final String SETTINGS_LABEL = LABEL + ".Settings"; //$NON-NLS-1$ private static final String TREE_LABEL = LABEL + ".ToolTree"; //$NON-NLS-1$ @@ -453,8 +454,15 @@ public class BuildPropertyPage extends PropertyPage implements IWorkbenchPropert // If there is nothing in config selection widget just bail if (configSelector.getItemCount() == 0) return; - // Cache the selected config - selectedConfiguration = configurations[configSelector.getSelectionIndex()]; + // Check if the user has selected the "all" configuration + int selectionIndex = configSelector.getSelectionIndex(); + if (selectionIndex >= configurations.length) { + // This is the all config + return; + } else { + // Cache the selected config + selectedConfiguration = configurations[selectionIndex]; + } // Set the content provider for the list viewer ToolListContentProvider provider = new ToolListContentProvider(); @@ -768,7 +776,7 @@ public class BuildPropertyPage extends PropertyPage implements IWorkbenchPropert // Write out the build model info ManagedBuildManager.setDefaultConfiguration(getProject(), getSelectedConfiguration()); - ManagedBuildManager.saveBuildInfo(getProject()); + ManagedBuildManager.saveBuildInfo(getProject(), false); return true; } @@ -782,6 +790,7 @@ public class BuildPropertyPage extends PropertyPage implements IWorkbenchPropert // Clear and replace the contents of the selector widget configSelector.removeAll(); configSelector.setItems(getConfigurationNames()); + configSelector.add(ManagedBuilderUIPlugin.getResourceString(ALL_CONFS)); // Make sure the active configuration is selected IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(getProject()); diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolSettingsPage.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolSettingsPage.java index 591b9a02aa2..8d867b56169 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolSettingsPage.java +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolSettingsPage.java @@ -13,7 +13,7 @@ package org.eclipse.cdt.managedbuilder.ui.properties; import org.eclipse.cdt.managedbuilder.core.IConfiguration; import org.eclipse.cdt.managedbuilder.core.ITool; -import org.eclipse.cdt.managedbuilder.internal.core.ToolReference; +import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager; import org.eclipse.cdt.managedbuilder.internal.ui.ManagedBuilderUIPlugin; import org.eclipse.jface.preference.StringFieldEditor; import org.eclipse.swt.graphics.Point; @@ -77,13 +77,9 @@ public class BuildToolSettingsPage extends BuildSettingsPage { return result; } - // The tool may be a reference. - if (tool instanceof ToolReference) { - // If so, just set the command in the reference - ((ToolReference)tool).setToolCommand(command); - } else { - configuration.setToolCommand(tool, command); - } + // Ask the build system manager to change the tool command + ManagedBuildManager.setToolCommand(configuration, tool, command); + return result; } } diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolsSettingsStore.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolsSettingsStore.java index c6de613cf6c..5614952afb3 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolsSettingsStore.java +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolsSettingsStore.java @@ -35,11 +35,20 @@ public class BuildToolsSettingsStore implements IPreferenceStore { private boolean dirtyFlag; private IConfiguration owner; - public BuildToolsSettingsStore (IConfiguration config) { + /** + * + */ + public BuildToolsSettingsStore() { listenerList = new ListenerList(); - dirtyFlag = false; + dirtyFlag = false; + } + + /** + * @param config + */ + public BuildToolsSettingsStore (IConfiguration config) { + this(); owner = config; - // Now populate the options map populateSettingsMap(); } diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/NewManagedProjectWizard.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/NewManagedProjectWizard.java index 98da7ace621..7f2a9d36888 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/NewManagedProjectWizard.java +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/wizards/NewManagedProjectWizard.java @@ -148,7 +148,7 @@ public class NewManagedProjectWizard extends NewCProjectWizard { // Save the build options monitor.subTask(ManagedBuilderUIPlugin.getResourceString(MSG_SAVE)); - ManagedBuildManager.saveBuildInfo(newProject); + ManagedBuildManager.saveBuildInfo(newProject, true); monitor.done(); } |