mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-08 16:55:38 +02:00
bug 416628: "Export" of entries of language settings providers to referencing projects - added provider to do that
This commit is contained in:
parent
da95189bb4
commit
6856d55b68
16 changed files with 349 additions and 39 deletions
|
@ -392,7 +392,7 @@
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
|
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
|
||||||
id="org.eclipse.linuxtools.cdt.autotools.core.configuration.build"
|
id="org.eclipse.linuxtools.cdt.autotools.core.configuration.build"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain}"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain}"
|
||||||
name="%Configuration.build.name">
|
name="%Configuration.build.name">
|
||||||
<toolChain
|
<toolChain
|
||||||
archList="all"
|
archList="all"
|
||||||
|
|
|
@ -20,8 +20,10 @@ import org.eclipse.cdt.core.language.settings.providers.LanguageSettingsPersiste
|
||||||
import org.eclipse.cdt.core.language.settings.providers.ScannerDiscoveryLegacySupport;
|
import org.eclipse.cdt.core.language.settings.providers.ScannerDiscoveryLegacySupport;
|
||||||
import org.eclipse.cdt.core.model.CoreModel;
|
import org.eclipse.cdt.core.model.CoreModel;
|
||||||
import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
|
import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICLanguageSettingEntry;
|
||||||
import org.eclipse.cdt.core.settings.model.ICProjectDescription;
|
import org.eclipse.cdt.core.settings.model.ICProjectDescription;
|
||||||
import org.eclipse.cdt.core.testplugin.util.BaseTestCase;
|
import org.eclipse.cdt.core.testplugin.util.BaseTestCase;
|
||||||
|
import org.eclipse.cdt.internal.core.language.settings.providers.ReferencedProjectsLanguageSettingsProvider;
|
||||||
import org.eclipse.cdt.managedbuilder.testplugin.ManagedBuildTestHelper;
|
import org.eclipse.cdt.managedbuilder.testplugin.ManagedBuildTestHelper;
|
||||||
import org.eclipse.core.resources.IFile;
|
import org.eclipse.core.resources.IFile;
|
||||||
import org.eclipse.core.resources.IProject;
|
import org.eclipse.core.resources.IProject;
|
||||||
|
@ -31,6 +33,7 @@ import org.eclipse.core.resources.IProject;
|
||||||
*/
|
*/
|
||||||
public class LanguageSettingsProvidersMBSTest extends BaseTestCase {
|
public class LanguageSettingsProvidersMBSTest extends BaseTestCase {
|
||||||
private static final String MBS_LANGUAGE_SETTINGS_PROVIDER_ID = ScannerDiscoveryLegacySupport.MBS_LANGUAGE_SETTINGS_PROVIDER_ID;
|
private static final String MBS_LANGUAGE_SETTINGS_PROVIDER_ID = ScannerDiscoveryLegacySupport.MBS_LANGUAGE_SETTINGS_PROVIDER_ID;
|
||||||
|
private static final String REFERENCED_PROJECTS_PROVIDER_ID = ReferencedProjectsLanguageSettingsProvider.ID;
|
||||||
private static final String USER_LANGUAGE_SETTINGS_PROVIDER_ID = ScannerDiscoveryLegacySupport.USER_LANGUAGE_SETTINGS_PROVIDER_ID;
|
private static final String USER_LANGUAGE_SETTINGS_PROVIDER_ID = ScannerDiscoveryLegacySupport.USER_LANGUAGE_SETTINGS_PROVIDER_ID;
|
||||||
private static final String GCC_SPECS_DETECTOR_ID = "org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetector";
|
private static final String GCC_SPECS_DETECTOR_ID = "org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetector";
|
||||||
private static final String PROJECT_TYPE_EXECUTABLE_GNU = "cdt.managedbuild.target.gnu.exe";
|
private static final String PROJECT_TYPE_EXECUTABLE_GNU = "cdt.managedbuild.target.gnu.exe";
|
||||||
|
@ -48,6 +51,16 @@ public class LanguageSettingsProvidersMBSTest extends BaseTestCase {
|
||||||
super.tearDown();
|
super.tearDown();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test that null arguments don't crash the provider.
|
||||||
|
*/
|
||||||
|
public void testNulls() throws Exception {
|
||||||
|
ILanguageSettingsProvider provider = LanguageSettingsManager.getWorkspaceProvider(MBS_LANGUAGE_SETTINGS_PROVIDER_ID);
|
||||||
|
assertNotNull(provider);
|
||||||
|
List<ICLanguageSettingEntry> entries = provider.getSettingEntries(null, null, null);
|
||||||
|
assertEquals(null, entries);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test new GNU Executable project.
|
* Test new GNU Executable project.
|
||||||
*/
|
*/
|
||||||
|
@ -74,18 +87,25 @@ public class LanguageSettingsProvidersMBSTest extends BaseTestCase {
|
||||||
{
|
{
|
||||||
ILanguageSettingsProvider provider = providers.get(1);
|
ILanguageSettingsProvider provider = providers.get(1);
|
||||||
String id = provider.getId();
|
String id = provider.getId();
|
||||||
assertEquals(MBS_LANGUAGE_SETTINGS_PROVIDER_ID, id);
|
assertEquals(REFERENCED_PROJECTS_PROVIDER_ID, id);
|
||||||
assertEquals(true, LanguageSettingsManager.isPreferShared(id));
|
assertEquals(true, LanguageSettingsManager.isPreferShared(id));
|
||||||
assertEquals(true, LanguageSettingsManager.isWorkspaceProvider(provider));
|
assertEquals(true, LanguageSettingsManager.isWorkspaceProvider(provider));
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
ILanguageSettingsProvider provider = providers.get(2);
|
ILanguageSettingsProvider provider = providers.get(2);
|
||||||
String id = provider.getId();
|
String id = provider.getId();
|
||||||
|
assertEquals(MBS_LANGUAGE_SETTINGS_PROVIDER_ID, id);
|
||||||
|
assertEquals(true, LanguageSettingsManager.isPreferShared(id));
|
||||||
|
assertEquals(true, LanguageSettingsManager.isWorkspaceProvider(provider));
|
||||||
|
}
|
||||||
|
{
|
||||||
|
ILanguageSettingsProvider provider = providers.get(3);
|
||||||
|
String id = provider.getId();
|
||||||
assertEquals(GCC_SPECS_DETECTOR_ID, id);
|
assertEquals(GCC_SPECS_DETECTOR_ID, id);
|
||||||
assertEquals(true, LanguageSettingsManager.isPreferShared(id));
|
assertEquals(true, LanguageSettingsManager.isPreferShared(id));
|
||||||
assertEquals(true, LanguageSettingsManager.isWorkspaceProvider(provider));
|
assertEquals(true, LanguageSettingsManager.isWorkspaceProvider(provider));
|
||||||
}
|
}
|
||||||
assertEquals(3, providers.size());
|
assertEquals(4, providers.size());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -308,13 +308,13 @@
|
||||||
</managedBuildRevision>
|
</managedBuildRevision>
|
||||||
<configuration
|
<configuration
|
||||||
id="org.eclipse.cdt.build.core.emptycfg"
|
id="org.eclipse.cdt.build.core.emptycfg"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;${Toolchain};org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;${Toolchain};org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider"
|
||||||
name="%cfg1_empty">
|
name="%cfg1_empty">
|
||||||
</configuration>
|
</configuration>
|
||||||
|
|
||||||
<configuration
|
<configuration
|
||||||
id="org.eclipse.cdt.build.core.prefbase.cfg"
|
id="org.eclipse.cdt.build.core.prefbase.cfg"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;${Toolchain};org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;${Toolchain};org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider"
|
||||||
name="%cfg1_base">
|
name="%cfg1_base">
|
||||||
<toolChain
|
<toolChain
|
||||||
id="org.eclipse.cdt.build.core.prefbase.toolchain"
|
id="org.eclipse.cdt.build.core.prefbase.toolchain"
|
||||||
|
|
|
@ -44,6 +44,9 @@ import org.eclipse.core.variables.VariablesPlugin;
|
||||||
public class MBSLanguageSettingsProvider extends AbstractExecutableExtensionBase implements ILanguageSettingsBroadcastingProvider {
|
public class MBSLanguageSettingsProvider extends AbstractExecutableExtensionBase implements ILanguageSettingsBroadcastingProvider {
|
||||||
@Override
|
@Override
|
||||||
public List<ICLanguageSettingEntry> getSettingEntries(ICConfigurationDescription cfgDescription, IResource rc, String languageId) {
|
public List<ICLanguageSettingEntry> getSettingEntries(ICConfigurationDescription cfgDescription, IResource rc, String languageId) {
|
||||||
|
if (cfgDescription == null || rc == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
IPath projectPath = rc.getProjectRelativePath();
|
IPath projectPath = rc.getProjectRelativePath();
|
||||||
ICLanguageSetting[] languageSettings = null;
|
ICLanguageSetting[] languageSettings = null;
|
||||||
|
|
|
@ -2168,7 +2168,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.gnu.base"
|
id="cdt.managedbuild.config.gnu.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement type="CONTAINER_ATTRIBUTE"
|
<enablement type="CONTAINER_ATTRIBUTE"
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
value="so"
|
value="so"
|
||||||
|
@ -2566,7 +2566,7 @@
|
||||||
artifactExtension="exe"
|
artifactExtension="exe"
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.gnu.cygwin.base"
|
id="cdt.managedbuild.config.gnu.cygwin.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement type="CONTAINER_ATTRIBUTE"
|
<enablement type="CONTAINER_ATTRIBUTE"
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
value="dll"
|
value="dll"
|
||||||
|
@ -2964,7 +2964,7 @@
|
||||||
artifactExtension="exe"
|
artifactExtension="exe"
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.gnu.mingw.base"
|
id="cdt.managedbuild.config.gnu.mingw.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement type="CONTAINER_ATTRIBUTE"
|
<enablement type="CONTAINER_ATTRIBUTE"
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
value="dll"
|
value="dll"
|
||||||
|
@ -3340,7 +3340,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.gnu.macosx.base"
|
id="cdt.managedbuild.config.gnu.macosx.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement type="CONTAINER_ATTRIBUTE"
|
<enablement type="CONTAINER_ATTRIBUTE"
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
value="dylib"
|
value="dylib"
|
||||||
|
@ -3753,7 +3753,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.gnu.solaris.base"
|
id="cdt.managedbuild.config.gnu.solaris.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement type="CONTAINER_ATTRIBUTE"
|
<enablement type="CONTAINER_ATTRIBUTE"
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
value="so"
|
value="so"
|
||||||
|
|
|
@ -30,6 +30,7 @@ public class AllLanguageSettingsProvidersCoreTests {
|
||||||
suite.addTest(LanguageSettingsPersistenceProjectTests.suite());
|
suite.addTest(LanguageSettingsPersistenceProjectTests.suite());
|
||||||
suite.addTest(LanguageSettingsListenersTests.suite());
|
suite.addTest(LanguageSettingsListenersTests.suite());
|
||||||
suite.addTest(LanguageSettingsScannerInfoProviderTests.suite());
|
suite.addTest(LanguageSettingsScannerInfoProviderTests.suite());
|
||||||
|
suite.addTest(LanguageSettingsProviderReferencedProjectsTests.suite());
|
||||||
return suite;
|
return suite;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,6 +28,7 @@ import org.eclipse.cdt.core.testplugin.CModelMock;
|
||||||
import org.eclipse.cdt.core.testplugin.ResourceHelper;
|
import org.eclipse.cdt.core.testplugin.ResourceHelper;
|
||||||
import org.eclipse.cdt.core.testplugin.util.BaseTestCase;
|
import org.eclipse.cdt.core.testplugin.util.BaseTestCase;
|
||||||
import org.eclipse.cdt.internal.core.language.settings.providers.LanguageSettingsProvidersSerializer;
|
import org.eclipse.cdt.internal.core.language.settings.providers.LanguageSettingsProvidersSerializer;
|
||||||
|
import org.eclipse.cdt.internal.core.language.settings.providers.ReferencedProjectsLanguageSettingsProvider;
|
||||||
import org.eclipse.cdt.internal.core.settings.model.CConfigurationDescription;
|
import org.eclipse.cdt.internal.core.settings.model.CConfigurationDescription;
|
||||||
import org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager;
|
import org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager;
|
||||||
import org.eclipse.core.resources.IFile;
|
import org.eclipse.core.resources.IFile;
|
||||||
|
@ -703,8 +704,9 @@ public class LanguageSettingsManagerTests extends BaseTestCase {
|
||||||
// ensure no test provider is set yet but default providers
|
// ensure no test provider is set yet but default providers
|
||||||
List<ILanguageSettingsProvider> providers = ((ILanguageSettingsProvidersKeeper) cfgDescription).getLanguageSettingProviders();
|
List<ILanguageSettingsProvider> providers = ((ILanguageSettingsProvidersKeeper) cfgDescription).getLanguageSettingProviders();
|
||||||
assertEquals(ScannerDiscoveryLegacySupport.USER_LANGUAGE_SETTINGS_PROVIDER_ID, providers.get(0).getId());
|
assertEquals(ScannerDiscoveryLegacySupport.USER_LANGUAGE_SETTINGS_PROVIDER_ID, providers.get(0).getId());
|
||||||
assertEquals(ScannerDiscoveryLegacySupport.MBS_LANGUAGE_SETTINGS_PROVIDER_ID, providers.get(1).getId());
|
assertEquals(ReferencedProjectsLanguageSettingsProvider.ID, providers.get(1).getId());
|
||||||
assertEquals(2, providers.size());
|
assertEquals(ScannerDiscoveryLegacySupport.MBS_LANGUAGE_SETTINGS_PROVIDER_ID, providers.get(2).getId());
|
||||||
|
assertEquals(3, providers.size());
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
// set test provider
|
// set test provider
|
||||||
|
|
|
@ -0,0 +1,210 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2013 Andrew Gvozdev and others.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Andrew Gvozdev - Initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
|
||||||
|
package org.eclipse.cdt.core.language.settings.providers;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.LinkedHashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import junit.framework.TestSuite;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.core.model.CoreModel;
|
||||||
|
import org.eclipse.cdt.core.settings.model.CIncludePathEntry;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICLanguageSettingEntry;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICProjectDescription;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICProjectDescriptionManager;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICSettingEntry;
|
||||||
|
import org.eclipse.cdt.core.settings.model.util.CDataUtil;
|
||||||
|
import org.eclipse.cdt.core.testplugin.ResourceHelper;
|
||||||
|
import org.eclipse.cdt.core.testplugin.util.BaseTestCase;
|
||||||
|
import org.eclipse.cdt.internal.core.language.settings.providers.ReferencedProjectsLanguageSettingsProvider;
|
||||||
|
import org.eclipse.core.resources.IProject;
|
||||||
|
import org.eclipse.core.runtime.CoreException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test cases testing ReferencedProjectsLanguageSettingsProvider functionality
|
||||||
|
*/
|
||||||
|
public class LanguageSettingsProviderReferencedProjectsTests extends BaseTestCase {
|
||||||
|
/**
|
||||||
|
* Constructor.
|
||||||
|
* @param name - name of the test.
|
||||||
|
*/
|
||||||
|
public LanguageSettingsProviderReferencedProjectsTests(String name) {
|
||||||
|
super(name);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void setUp() throws Exception {
|
||||||
|
super.setUp();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void tearDown() throws Exception {
|
||||||
|
super.tearDown(); // includes ResourceHelper cleanup
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return - new TestSuite.
|
||||||
|
*/
|
||||||
|
public static TestSuite suite() {
|
||||||
|
return new TestSuite(LanguageSettingsProviderReferencedProjectsTests.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* main function of the class.
|
||||||
|
*
|
||||||
|
* @param args - arguments
|
||||||
|
*/
|
||||||
|
public static void main(String[] args) {
|
||||||
|
junit.textui.TestRunner.run(suite());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper method to fetch configuration descriptions.
|
||||||
|
*/
|
||||||
|
private ICConfigurationDescription[] getConfigurationDescriptions(IProject project) {
|
||||||
|
CoreModel coreModel = CoreModel.getDefault();
|
||||||
|
ICProjectDescriptionManager mngr = coreModel.getProjectDescriptionManager();
|
||||||
|
// project description
|
||||||
|
ICProjectDescription projectDescription = mngr.getProjectDescription(project, false);
|
||||||
|
assertNotNull(projectDescription);
|
||||||
|
assertEquals(1, projectDescription.getConfigurations().length);
|
||||||
|
// configuration description
|
||||||
|
ICConfigurationDescription[] cfgDescriptions = projectDescription.getConfigurations();
|
||||||
|
return cfgDescriptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper method to set reference project.
|
||||||
|
*/
|
||||||
|
private void setReference(IProject project, final IProject projectReferenced) throws CoreException {
|
||||||
|
{
|
||||||
|
CoreModel coreModel = CoreModel.getDefault();
|
||||||
|
ICProjectDescriptionManager mngr = coreModel.getProjectDescriptionManager();
|
||||||
|
// project description
|
||||||
|
ICProjectDescription projectDescription = mngr.getProjectDescription(project);
|
||||||
|
assertNotNull(projectDescription);
|
||||||
|
assertEquals(1, projectDescription.getConfigurations().length);
|
||||||
|
// configuration description
|
||||||
|
ICConfigurationDescription[] cfgDescriptions = projectDescription.getConfigurations();
|
||||||
|
ICConfigurationDescription cfgDescription = cfgDescriptions[0];
|
||||||
|
|
||||||
|
final ICConfigurationDescription cfgDescriptionReferenced = getConfigurationDescriptions(projectReferenced)[0];
|
||||||
|
cfgDescription.setReferenceInfo(new HashMap<String, String>() {{ put(projectReferenced.getName(), cfgDescriptionReferenced.getId()); }});
|
||||||
|
coreModel.setProjectDescription(project, projectDescription);
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
// doublecheck that it's set as expected
|
||||||
|
ICConfigurationDescription[] cfgDescriptions = getConfigurationDescriptions(project);
|
||||||
|
ICConfigurationDescription cfgDescription = cfgDescriptions[0];
|
||||||
|
Map<String,String> refs = cfgDescription.getReferenceInfo();
|
||||||
|
assertEquals(1, refs.size());
|
||||||
|
Set<String> referencedProjectsNames = new LinkedHashSet<String>(refs.keySet());
|
||||||
|
assertEquals(projectReferenced.getName(), referencedProjectsNames.toArray()[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test that null arguments don't crash the provider.
|
||||||
|
*/
|
||||||
|
public void testNulls() throws Exception {
|
||||||
|
ILanguageSettingsProvider provider = LanguageSettingsManager.getWorkspaceProvider(ReferencedProjectsLanguageSettingsProvider.ID);
|
||||||
|
assertNotNull(provider);
|
||||||
|
List<ICLanguageSettingEntry> entries = provider.getSettingEntries(null, null, null);
|
||||||
|
assertEquals(null, entries);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test main functionality of ReferencedProjectsLanguageSettingsProvider.
|
||||||
|
*/
|
||||||
|
public void testReferencedProjectProvider() throws Exception {
|
||||||
|
// Create model project and accompanied descriptions
|
||||||
|
String projectName = getName();
|
||||||
|
IProject project = ResourceHelper.createCDTProjectWithConfig(projectName);
|
||||||
|
IProject nonReferencedProject = ResourceHelper.createCDTProjectWithConfig(projectName+"-non-referenced");
|
||||||
|
IProject referencedProject = ResourceHelper.createCDTProjectWithConfig(projectName+"-referenced");
|
||||||
|
setReference(project, referencedProject);
|
||||||
|
|
||||||
|
// get cfgDescription and language to work with
|
||||||
|
ICConfigurationDescription[] cfgDescriptions = getConfigurationDescriptions(project);
|
||||||
|
ICConfigurationDescription cfgDescription = cfgDescriptions[0];
|
||||||
|
|
||||||
|
{
|
||||||
|
// doublecheck that provider for referenced projects is set in the configuration
|
||||||
|
ILanguageSettingsProvider refProjectsProvider = LanguageSettingsManager.getWorkspaceProvider(ReferencedProjectsLanguageSettingsProvider.ID);
|
||||||
|
assertNotNull(refProjectsProvider);
|
||||||
|
List<ILanguageSettingsProvider> providers = ((ILanguageSettingsProvidersKeeper) cfgDescription).getLanguageSettingProviders();
|
||||||
|
assertTrue(providers.contains(refProjectsProvider));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check that no setting entries are set initially
|
||||||
|
{
|
||||||
|
List<ICLanguageSettingEntry> entries = LanguageSettingsManager.getSettingEntriesByKind(cfgDescription, project, null, ICSettingEntry.ALL);
|
||||||
|
assertEquals(0, entries.size());
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add an entry into a non-referenced project
|
||||||
|
CIncludePathEntry nonRefEntry = CDataUtil.createCIncludePathEntry("non-referenced-exported", ICSettingEntry.EXPORTED);
|
||||||
|
{
|
||||||
|
ICConfigurationDescription[] nonRefCfgDescriptions = getConfigurationDescriptions(nonReferencedProject);
|
||||||
|
ICConfigurationDescription nonRefCfgDescription = nonRefCfgDescriptions[0];
|
||||||
|
List<ILanguageSettingsProvider> providersNonRef = ((ILanguageSettingsProvidersKeeper) nonRefCfgDescription).getLanguageSettingProviders();
|
||||||
|
// get user provider which is the first one
|
||||||
|
ILanguageSettingsProvider userProviderNonRef = providersNonRef.get(0);
|
||||||
|
assertEquals(ScannerDiscoveryLegacySupport.USER_LANGUAGE_SETTINGS_PROVIDER_ID, userProviderNonRef.getId());
|
||||||
|
assertTrue(userProviderNonRef instanceof LanguageSettingsGenericProvider);
|
||||||
|
// add sample entries
|
||||||
|
ArrayList<ICLanguageSettingEntry> entries = new ArrayList<ICLanguageSettingEntry>();
|
||||||
|
entries.add(nonRefEntry);
|
||||||
|
((LanguageSettingsGenericProvider) userProviderNonRef).setSettingEntries(null, null, null, entries);
|
||||||
|
}
|
||||||
|
// Confirm that that does not add entries to the main project
|
||||||
|
{
|
||||||
|
List<ICLanguageSettingEntry> entries = LanguageSettingsManager.getSettingEntriesByKind(cfgDescription, project, null, ICSettingEntry.ALL);
|
||||||
|
assertEquals(0, entries.size());
|
||||||
|
}
|
||||||
|
|
||||||
|
CIncludePathEntry refEntry = CDataUtil.createCIncludePathEntry("referenced-exported", ICSettingEntry.EXPORTED);
|
||||||
|
// Add entries into a referenced project
|
||||||
|
{
|
||||||
|
ICConfigurationDescription[] refCfgDescriptions = getConfigurationDescriptions(referencedProject);
|
||||||
|
ICConfigurationDescription refCfgDescription = refCfgDescriptions[0];
|
||||||
|
List<ILanguageSettingsProvider> providersRef = ((ILanguageSettingsProvidersKeeper) refCfgDescription).getLanguageSettingProviders();
|
||||||
|
// get user provider which is the first one
|
||||||
|
ILanguageSettingsProvider userProviderRef = providersRef.get(0);
|
||||||
|
assertEquals(ScannerDiscoveryLegacySupport.USER_LANGUAGE_SETTINGS_PROVIDER_ID, userProviderRef.getId());
|
||||||
|
assertTrue(userProviderRef instanceof LanguageSettingsGenericProvider);
|
||||||
|
// add sample entries
|
||||||
|
ArrayList<ICLanguageSettingEntry> entries = new ArrayList<ICLanguageSettingEntry>();
|
||||||
|
CIncludePathEntry refEntryNotExported = CDataUtil.createCIncludePathEntry("referenced-not-exported", 0);
|
||||||
|
entries.add(refEntry);
|
||||||
|
entries.add(refEntryNotExported);
|
||||||
|
((LanguageSettingsGenericProvider) userProviderRef).setSettingEntries(null, null, null, entries);
|
||||||
|
List<ICLanguageSettingEntry> entriesActual = LanguageSettingsManager.getSettingEntriesByKind(refCfgDescription, project, null, ICSettingEntry.ALL);
|
||||||
|
assertEquals(entries, entriesActual);
|
||||||
|
}
|
||||||
|
// Check that the new entries from referenced project made it to the main project
|
||||||
|
{
|
||||||
|
List<ICLanguageSettingEntry> entries = LanguageSettingsManager.getSettingEntriesByKind(cfgDescription, project, null, ICSettingEntry.ALL);
|
||||||
|
assertEquals(CDataUtil.createCIncludePathEntry(refEntry.getName(), 0), entries.get(0));
|
||||||
|
assertEquals(1, entries.size());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -21,6 +21,7 @@ import org.eclipse.cdt.core.model.CoreModel;
|
||||||
import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
|
import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
|
||||||
import org.eclipse.cdt.core.settings.model.ICProjectDescription;
|
import org.eclipse.cdt.core.settings.model.ICProjectDescription;
|
||||||
import org.eclipse.cdt.internal.core.LocalProjectScope;
|
import org.eclipse.cdt.internal.core.LocalProjectScope;
|
||||||
|
import org.eclipse.cdt.internal.core.language.settings.providers.ReferencedProjectsLanguageSettingsProvider;
|
||||||
import org.eclipse.cdt.internal.core.language.settings.providers.ScannerInfoExtensionLanguageSettingsProvider;
|
import org.eclipse.cdt.internal.core.language.settings.providers.ScannerInfoExtensionLanguageSettingsProvider;
|
||||||
import org.eclipse.cdt.internal.core.model.PathEntryManager;
|
import org.eclipse.cdt.internal.core.model.PathEntryManager;
|
||||||
import org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager;
|
import org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager;
|
||||||
|
@ -212,7 +213,7 @@ public class ScannerDiscoveryLegacySupport {
|
||||||
legacyProviderId = PATH_ENTRY_MANAGER_LANGUAGE_SETTINGS_PROVIDER_ID;
|
legacyProviderId = PATH_ENTRY_MANAGER_LANGUAGE_SETTINGS_PROVIDER_ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
return new String[] {USER_LANGUAGE_SETTINGS_PROVIDER_ID, legacyProviderId};
|
return new String[] {USER_LANGUAGE_SETTINGS_PROVIDER_ID, ReferencedProjectsLanguageSettingsProvider.ID, legacyProviderId};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -12,13 +12,14 @@
|
||||||
package org.eclipse.cdt.internal.core.language.settings.providers;
|
package org.eclipse.cdt.internal.core.language.settings.providers;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.TreeSet;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.core.AbstractExecutableExtensionBase;
|
import org.eclipse.cdt.core.AbstractExecutableExtensionBase;
|
||||||
import org.eclipse.cdt.core.CCorePlugin;
|
import org.eclipse.cdt.core.CCorePlugin;
|
||||||
|
@ -81,9 +82,11 @@ public class LanguageSettingsExtensionManager {
|
||||||
* Load language settings providers contributed via the extension point.
|
* Load language settings providers contributed via the extension point.
|
||||||
*/
|
*/
|
||||||
synchronized private static void loadProviderExtensions() {
|
synchronized private static void loadProviderExtensions() {
|
||||||
|
List<ILanguageSettingsProvider> providers = new ArrayList<ILanguageSettingsProvider>();
|
||||||
|
loadProviderExtensions(Platform.getExtensionRegistry(), providers);
|
||||||
|
|
||||||
// sort by name - the providers defined via extensions are kept in separate list sorted by name
|
// sort by name - the providers defined via extensions are kept in separate list sorted by name
|
||||||
Set<ILanguageSettingsProvider> sortedProviders = new TreeSet<ILanguageSettingsProvider>(
|
Collections.sort(providers, new Comparator<ILanguageSettingsProvider>() {
|
||||||
new Comparator<ILanguageSettingsProvider>() {
|
|
||||||
@Override
|
@Override
|
||||||
public int compare(ILanguageSettingsProvider pr1, ILanguageSettingsProvider pr2) {
|
public int compare(ILanguageSettingsProvider pr1, ILanguageSettingsProvider pr2) {
|
||||||
return pr1.getName().compareTo(pr2.getName());
|
return pr1.getName().compareTo(pr2.getName());
|
||||||
|
@ -91,10 +94,8 @@ public class LanguageSettingsExtensionManager {
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
loadProviderExtensions(Platform.getExtensionRegistry(), sortedProviders);
|
|
||||||
|
|
||||||
fExtensionProviders.clear();
|
fExtensionProviders.clear();
|
||||||
for (ILanguageSettingsProvider provider : sortedProviders) {
|
for (ILanguageSettingsProvider provider : providers) {
|
||||||
fExtensionProviders.put(provider.getId(), provider);
|
fExtensionProviders.put(provider.getId(), provider);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -105,7 +106,7 @@ public class LanguageSettingsExtensionManager {
|
||||||
* @param registry - extension registry
|
* @param registry - extension registry
|
||||||
* @param providers - resulting set of providers
|
* @param providers - resulting set of providers
|
||||||
*/
|
*/
|
||||||
private static void loadProviderExtensions(IExtensionRegistry registry, Set<ILanguageSettingsProvider> providers) {
|
private static void loadProviderExtensions(IExtensionRegistry registry, Collection<ILanguageSettingsProvider> providers) {
|
||||||
providers.clear();
|
providers.clear();
|
||||||
IExtensionPoint extension = registry.getExtensionPoint(CCorePlugin.PLUGIN_ID, PROVIDER_EXTENSION_SIMPLE_ID);
|
IExtensionPoint extension = registry.getExtensionPoint(CCorePlugin.PLUGIN_ID, PROVIDER_EXTENSION_SIMPLE_ID);
|
||||||
if (extension != null) {
|
if (extension != null) {
|
||||||
|
|
|
@ -0,0 +1,60 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2013, 2013 Andrew Gvozdev and others.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Andrew Gvozdev - Initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package org.eclipse.cdt.internal.core.language.settings.providers;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.core.language.settings.providers.LanguageSettingsBaseProvider;
|
||||||
|
import org.eclipse.cdt.core.language.settings.providers.LanguageSettingsManager;
|
||||||
|
import org.eclipse.cdt.core.language.settings.providers.LanguageSettingsStorage;
|
||||||
|
import org.eclipse.cdt.core.model.CoreModelUtil;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICLanguageSettingEntry;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICProjectDescription;
|
||||||
|
import org.eclipse.cdt.core.settings.model.ICSettingEntry;
|
||||||
|
import org.eclipse.cdt.core.settings.model.util.CDataUtil;
|
||||||
|
import org.eclipse.core.resources.IResource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Language settings provider to provide entries exported from referenced projects.
|
||||||
|
*/
|
||||||
|
public class ReferencedProjectsLanguageSettingsProvider extends LanguageSettingsBaseProvider {
|
||||||
|
/** ID of the provider used in extension point from plugin.xml */
|
||||||
|
public static final String ID = "org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider"; //$NON-NLS-1$
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<ICLanguageSettingEntry> getSettingEntries(ICConfigurationDescription cfgDescription, IResource rc, String languageId) {
|
||||||
|
if (cfgDescription == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
ICProjectDescription prjDescription = cfgDescription.getProjectDescription();
|
||||||
|
if (prjDescription == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
List<ICLanguageSettingEntry> entries = new ArrayList<ICLanguageSettingEntry>();
|
||||||
|
ICConfigurationDescription[] refCfgDescriptions = CoreModelUtil.getReferencedConfigurationDescriptions(cfgDescription, false);
|
||||||
|
for (ICConfigurationDescription refCfgDescription : refCfgDescriptions) {
|
||||||
|
List<ICLanguageSettingEntry> refEntries = LanguageSettingsManager.getSettingEntriesByKind(refCfgDescription, rc, languageId, ICSettingEntry.ALL);
|
||||||
|
for (ICLanguageSettingEntry refEntry : refEntries) {
|
||||||
|
int flags = refEntry.getFlags();
|
||||||
|
if ((flags & ICSettingEntry.EXPORTED) == ICSettingEntry.EXPORTED) {
|
||||||
|
// create a new entry with EXPORTED flag cleared
|
||||||
|
ICLanguageSettingEntry entry = CDataUtil.createEntry(refEntry, flags & ~ICSettingEntry.EXPORTED);
|
||||||
|
entries.add(entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return LanguageSettingsStorage.getPooledList(new ArrayList<ICLanguageSettingEntry>(entries));
|
||||||
|
}
|
||||||
|
}
|
|
@ -136,3 +136,4 @@ refreshExclusionFactory.name = Refresh Exclusion Factory
|
||||||
uncPathConverter.name = UNC Path Converter
|
uncPathConverter.name = UNC Path Converter
|
||||||
ScannerInfoExtensionLanguageSettingsProvider.name=Contributed ScannerInfo Entries
|
ScannerInfoExtensionLanguageSettingsProvider.name=Contributed ScannerInfo Entries
|
||||||
PathEntryScannerInfoLanguageSettingsProvider.name=Contributed PathEntry Containers
|
PathEntryScannerInfoLanguageSettingsProvider.name=Contributed PathEntry Containers
|
||||||
|
ReferencedProjectsLanguageSettingsProvider.name=Exported Entries from Referenced Projects
|
||||||
|
|
|
@ -819,6 +819,11 @@
|
||||||
id="org.eclipse.cdt.core.PathEntryScannerInfoLanguageSettingsProvider"
|
id="org.eclipse.cdt.core.PathEntryScannerInfoLanguageSettingsProvider"
|
||||||
name="%PathEntryScannerInfoLanguageSettingsProvider.name">
|
name="%PathEntryScannerInfoLanguageSettingsProvider.name">
|
||||||
</provider>
|
</provider>
|
||||||
|
<provider
|
||||||
|
class="org.eclipse.cdt.internal.core.language.settings.providers.ReferencedProjectsLanguageSettingsProvider"
|
||||||
|
id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider"
|
||||||
|
name="%ReferencedProjectsLanguageSettingsProvider.name">
|
||||||
|
</provider>
|
||||||
</extension>
|
</extension>
|
||||||
|
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
|
@ -4482,6 +4482,12 @@
|
||||||
ui-clear-entries="true"
|
ui-clear-entries="true"
|
||||||
ui-edit-entries="true">
|
ui-edit-entries="true">
|
||||||
</id-association>
|
</id-association>
|
||||||
|
<id-association
|
||||||
|
id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider"
|
||||||
|
icon="icons/obj16/search_ref_obj.gif"
|
||||||
|
ui-clear-entries="false"
|
||||||
|
ui-edit-entries="false">
|
||||||
|
</id-association>
|
||||||
</extension>
|
</extension>
|
||||||
<extension point="org.eclipse.cdt.ui.cPropertyTab">
|
<extension point="org.eclipse.cdt.ui.cPropertyTab">
|
||||||
<tab
|
<tab
|
||||||
|
|
|
@ -1508,7 +1508,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.llvm.clang.linux.base"
|
id="cdt.managedbuild.config.llvm.clang.linux.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement
|
<enablement
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
extensionAdjustment="false"
|
extensionAdjustment="false"
|
||||||
|
@ -1797,7 +1797,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.llvm.clang.macosx.base"
|
id="cdt.managedbuild.config.llvm.clang.macosx.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement
|
<enablement
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
extensionAdjustment="false"
|
extensionAdjustment="false"
|
||||||
|
@ -2084,7 +2084,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.llvm.clang.win32.cygwin.base"
|
id="cdt.managedbuild.config.llvm.clang.win32.cygwin.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement
|
<enablement
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
extensionAdjustment="false"
|
extensionAdjustment="false"
|
||||||
|
@ -2373,7 +2373,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.llvm.clang.win32.mingw.base"
|
id="cdt.managedbuild.config.llvm.clang.win32.mingw.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement
|
<enablement
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
extensionAdjustment="false"
|
extensionAdjustment="false"
|
||||||
|
@ -2662,7 +2662,7 @@
|
||||||
<configuration
|
<configuration
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.llvm.gnu.linux.base"
|
id="cdt.managedbuild.config.llvm.gnu.linux.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement
|
<enablement
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
extensionAdjustment="false"
|
extensionAdjustment="false"
|
||||||
|
@ -3242,7 +3242,7 @@
|
||||||
artifactExtension="exe"
|
artifactExtension="exe"
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.llvm.gnu.win32.cygwin.base"
|
id="cdt.managedbuild.config.llvm.gnu.win32.cygwin.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement
|
<enablement
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
extensionAdjustment="false"
|
extensionAdjustment="false"
|
||||||
|
@ -3532,7 +3532,7 @@
|
||||||
artifactExtension="exe"
|
artifactExtension="exe"
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
id="cdt.managedbuild.config.llvm.gnu.win32.mingw.base"
|
id="cdt.managedbuild.config.llvm.gnu.win32.mingw.base"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser">
|
||||||
<enablement
|
<enablement
|
||||||
attribute="artifactExtension"
|
attribute="artifactExtension"
|
||||||
extensionAdjustment="false"
|
extensionAdjustment="false"
|
||||||
|
|
|
@ -526,7 +526,7 @@
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
||||||
id="cdt.managedbuild.config.xlc.exe.debug"
|
id="cdt.managedbuild.config.xlc.exe.debug"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
||||||
name="%ConfigName.Dbg">
|
name="%ConfigName.Dbg">
|
||||||
<toolChain
|
<toolChain
|
||||||
archList="all"
|
archList="all"
|
||||||
|
@ -593,7 +593,7 @@
|
||||||
artifactExtension="exe"
|
artifactExtension="exe"
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
||||||
id="cdt.managedbuild.config.xlc.exe.release">
|
id="cdt.managedbuild.config.xlc.exe.release">
|
||||||
<toolChain
|
<toolChain
|
||||||
archList="all"
|
archList="all"
|
||||||
|
@ -667,7 +667,7 @@
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
artifactExtension="so"
|
artifactExtension="so"
|
||||||
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
||||||
id="cdt.managedbuild.config.xlc.so.debug">
|
id="cdt.managedbuild.config.xlc.so.debug">
|
||||||
<toolChain
|
<toolChain
|
||||||
id="cdt.managedbuild.toolchain.xlc.so.debug"
|
id="cdt.managedbuild.toolchain.xlc.so.debug"
|
||||||
|
@ -731,7 +731,7 @@
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
artifactExtension="so"
|
artifactExtension="so"
|
||||||
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
||||||
id="cdt.managedbuild.config.xlc.so.release">
|
id="cdt.managedbuild.config.xlc.so.release">
|
||||||
<toolChain
|
<toolChain
|
||||||
id="cdt.managedbuild.toolchain.xlc.so.release"
|
id="cdt.managedbuild.toolchain.xlc.so.release"
|
||||||
|
@ -803,7 +803,7 @@
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
artifactExtension="lib"
|
artifactExtension="lib"
|
||||||
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
||||||
id="cdt.managedbuild.config.xlc.lib.debug">
|
id="cdt.managedbuild.config.xlc.lib.debug">
|
||||||
<toolChain
|
<toolChain
|
||||||
id="cdt.managedbuild.toolchain.xlc.lib.debug"
|
id="cdt.managedbuild.toolchain.xlc.lib.debug"
|
||||||
|
@ -863,7 +863,7 @@
|
||||||
cleanCommand="rm -rf"
|
cleanCommand="rm -rf"
|
||||||
artifactExtension="lib"
|
artifactExtension="lib"
|
||||||
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
errorParsers="org.eclipse.cdt.errorparsers.xlc.XlcErrorParser"
|
||||||
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
languageSettingsProviders="org.eclipse.cdt.ui.UserLanguageSettingsProvider;org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider;org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider;${Toolchain};-org.eclipse.cdt.managedbuilder.xlc.core.XlcBuildCommandParser"
|
||||||
id="cdt.managedbuild.config.xlc.lib.release">
|
id="cdt.managedbuild.config.xlc.lib.release">
|
||||||
<toolChain
|
<toolChain
|
||||||
id="cdt.managedbuild.toolchain.xlc.lib.release"
|
id="cdt.managedbuild.toolchain.xlc.lib.release"
|
||||||
|
|
Loading…
Add table
Reference in a new issue