1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-06 17:26:01 +02:00

bug 290292: CDT internal error in Build Settings

Patch from Marc-Andre Laperle
This commit is contained in:
Andrew Gvozdev 2009-11-05 22:47:07 +00:00
parent 9136250827
commit 842fa12cbf

View file

@ -10,11 +10,13 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.internal.build.crossgcc; package org.eclipse.cdt.internal.build.crossgcc;
import org.eclipse.cdt.managedbuilder.core.IBuildObject;
import org.eclipse.cdt.managedbuilder.core.IManagedCommandLineInfo; import org.eclipse.cdt.managedbuilder.core.IManagedCommandLineInfo;
import org.eclipse.cdt.managedbuilder.core.IOption; import org.eclipse.cdt.managedbuilder.core.IOption;
import org.eclipse.cdt.managedbuilder.core.ITool; import org.eclipse.cdt.managedbuilder.core.ITool;
import org.eclipse.cdt.managedbuilder.core.IToolChain; import org.eclipse.cdt.managedbuilder.core.IToolChain;
import org.eclipse.cdt.managedbuilder.internal.core.ManagedCommandLineGenerator; import org.eclipse.cdt.managedbuilder.internal.core.ManagedCommandLineGenerator;
import org.eclipse.cdt.managedbuilder.internal.core.ResourceConfiguration;
public class CrossCommandLineGenerator extends ManagedCommandLineGenerator { public class CrossCommandLineGenerator extends ManagedCommandLineGenerator {
@ -23,7 +25,13 @@ public class CrossCommandLineGenerator extends ManagedCommandLineGenerator {
String commandName, String[] flags, String outputFlag, String commandName, String[] flags, String outputFlag,
String outputPrefix, String outputName, String[] inputResources, String outputPrefix, String outputName, String[] inputResources,
String commandLinePattern) { String commandLinePattern) {
IToolChain toolchain = (IToolChain)tool.getParent(); IBuildObject parent = tool.getParent();
IToolChain toolchain;
if(parent instanceof ResourceConfiguration)
toolchain = ((ResourceConfiguration)parent).getBaseToolChain();
else
toolchain = (IToolChain)parent;
IOption option = toolchain.getOptionBySuperClassId("cdt.managedbuild.option.gnu.cross.prefix"); IOption option = toolchain.getOptionBySuperClassId("cdt.managedbuild.option.gnu.cross.prefix");
String prefix = (String)option.getValue(); String prefix = (String)option.getValue();
String newCommandName = prefix + commandName; String newCommandName = prefix + commandName;