Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb.tests/src/org/eclipse/cdt/dsf/gdb/tests/LaunchUtilsTest.java12
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF5
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/GdbLaunchDelegate.java20
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/LaunchUtils.java25
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSCommandFactory.java33
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBProcesses.java70
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBRunControl.java104
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGdbDebugServicesFactory.java52
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIEnvironmentCD.java39
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIVarUpdate.java51
-rw-r--r--dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/macos/MacOSMIVarUpdateInfo.java60
-rw-r--r--jtag/org.eclipse.cdt.debug.gdbjtag.core/META-INF/MANIFEST.MF3
-rw-r--r--jtag/org.eclipse.cdt.debug.gdbjtag.core/pom.xml2
-rw-r--r--jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/GDBJtagDSFLaunchConfigurationDelegate.java10
-rw-r--r--jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/dsf/gdb/service/macos/MacOSGdbJtagDebugServicesFactory.java31
15 files changed, 3 insertions, 514 deletions
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb.tests/src/org/eclipse/cdt/dsf/gdb/tests/LaunchUtilsTest.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb.tests/src/org/eclipse/cdt/dsf/gdb/tests/LaunchUtilsTest.java
index 44520af8584..128befa1348 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb.tests/src/org/eclipse/cdt/dsf/gdb/tests/LaunchUtilsTest.java
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb.tests/src/org/eclipse/cdt/dsf/gdb/tests/LaunchUtilsTest.java
@@ -62,18 +62,6 @@ public class LaunchUtilsTest {
for (String key : versions.keySet()) {
assertEquals("From \"" + key + "\"", versions.get(key), LaunchUtils.getGDBVersionFromText(key));
}
-
- versions.clear();
- versions.put("GNU gdb 6.3.50-20050815 (Apple version gdb-696) (Sat Oct 20 18:20:28 GMT 2007)", "6.3.50"+LaunchUtils.MACOS_GDB_MARKER+"696");
- versions.put("GNU gdb 6.3.50-20050815 (Apple version gdb-966) (Tue Mar 10 02:43:13 UTC 2009)", "6.3.50"+LaunchUtils.MACOS_GDB_MARKER+"966");
- versions.put("GNU gdb 6.3.50-20050815 (Apple version gdb-1346) (Fri Sep 18 20:40:51 UTC 2009)", "6.3.50"+LaunchUtils.MACOS_GDB_MARKER+"1346");
- versions.put("GNU gdb 6.3.50-20050815 (Apple version gdb-1461.2) (Fri Mar 5 04:43:10 UTC 2010)", "6.3.50"+LaunchUtils.MACOS_GDB_MARKER+"1461.2");
- versions.put("GNU gdb 7.0 (Apple version gdb-1) (Fri Sep 18 20:40:51 UTC 2009)", "7.0"+LaunchUtils.MACOS_GDB_MARKER+"1");
- versions.put("GNU gdb 7.0-20050815 (Apple version gdb-01) (Fri Sep 18 20:40:51 UTC 2009)", "7.0"+LaunchUtils.MACOS_GDB_MARKER+"01");
-
- for (String key : versions.keySet()) {
- assertEquals("From \"" + key + "\"", versions.get(key), LaunchUtils.getGDBVersionFromText(key));
- }
}
/**
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF b/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF
index 31ddb81a6a7..ca0ab35ed8d 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF
@@ -36,13 +36,10 @@ Export-Package: org.eclipse.cdt.dsf.gdb,
org.eclipse.cdt.dsf.gdb.service,
org.eclipse.cdt.dsf.gdb.service.command,
org.eclipse.cdt.dsf.gdb.service.extensions,
- org.eclipse.cdt.dsf.gdb.service.macos,
org.eclipse.cdt.dsf.mi.service,
org.eclipse.cdt.dsf.mi.service.breakpoint.actions,
org.eclipse.cdt.dsf.mi.service.command,
org.eclipse.cdt.dsf.mi.service.command.commands,
- org.eclipse.cdt.dsf.mi.service.command.commands.macos,
org.eclipse.cdt.dsf.mi.service.command.events,
- org.eclipse.cdt.dsf.mi.service.command.output,
- org.eclipse.cdt.dsf.mi.service.command.output.macos
+ org.eclipse.cdt.dsf.mi.service.command.output
Import-Package: com.ibm.icu.text
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/GdbLaunchDelegate.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/GdbLaunchDelegate.java
index ed33f24bccf..f90ec53e949 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/GdbLaunchDelegate.java
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/GdbLaunchDelegate.java
@@ -37,7 +37,6 @@ import org.eclipse.cdt.dsf.gdb.service.GdbDebugServicesFactory;
import org.eclipse.cdt.dsf.gdb.service.GdbDebugServicesFactoryNS;
import org.eclipse.cdt.dsf.gdb.service.SessionType;
import org.eclipse.cdt.dsf.gdb.service.command.IGDBControl;
-import org.eclipse.cdt.dsf.gdb.service.macos.MacOSGdbDebugServicesFactory;
import org.eclipse.cdt.dsf.service.DsfServicesTracker;
import org.eclipse.cdt.dsf.service.DsfSession;
import org.eclipse.cdt.launch.AbstractCLaunchDelegate2;
@@ -457,11 +456,6 @@ public class GdbLaunchDelegate extends AbstractCLaunchDelegate2
* @since 4.0
*/
protected boolean isNonStopSupportedInGdbVersion(String version) {
- if (version.contains(LaunchUtils.MACOS_GDB_MARKER)) {
- // Mac OS's GDB does not support Non-Stop
- return false;
- }
-
if (NON_STOP_FIRST_VERSION.compareTo(version) <= 0) {
return true;
}
@@ -474,11 +468,6 @@ public class GdbLaunchDelegate extends AbstractCLaunchDelegate2
* @since 4.0
*/
protected boolean isPostMortemTracingSupportedInGdbVersion(String version) {
- if (version.contains(LaunchUtils.MACOS_GDB_MARKER)) {
- // Mac OS's GDB does not support post-mortem tracing
- return false;
- }
-
if (TRACING_FIRST_VERSION.compareTo(version) <= 0
// This feature will be available for GDB 7.2. But until that GDB is itself available
// there is a pre-release that has a version of 6.8.50.20090414
@@ -498,15 +487,6 @@ public class GdbLaunchDelegate extends AbstractCLaunchDelegate2
return new GdbDebugServicesFactoryNS(version);
}
- if (version.contains(LaunchUtils.MACOS_GDB_MARKER)) {
- // The version string at this point should look like
- // 6.3.50-20050815APPLE1346, we extract the gdb version and apple version
- String versions [] = version.split(LaunchUtils.MACOS_GDB_MARKER);
- if (versions.length == 2) {
- return new MacOSGdbDebugServicesFactory(versions[0], versions[1]);
- }
- }
-
return new GdbDebugServicesFactory(version);
}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/LaunchUtils.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/LaunchUtils.java
index 54dfb3621b2..9a388c3c75e 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/LaunchUtils.java
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/launching/LaunchUtils.java
@@ -65,11 +65,6 @@ import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.ILaunchConfiguration;
public class LaunchUtils {
- /**
- * A prefix that we use to indicate that a GDB version is for MAC OS
- * @since 3.0
- */
- public static final String MACOS_GDB_MARKER = "APPLE"; //$NON-NLS-1$
/**
* Verify the following things about the project:
@@ -268,26 +263,6 @@ public class LaunchUtils {
version = "6.8"; //$NON-NLS-1$
}
}
-
- // Look for the case of Apple's GDB, since the version must be handled differently
- // The format is:
- // GNU gdb 6.3.50-20050815 (Apple version gdb-696) (Sat Oct 20 18:20:28 GMT 2007)
- // GNU gdb 6.3.50-20050815 (Apple version gdb-966) (Tue Mar 10 02:43:13 UTC 2009)
- // GNU gdb 6.3.50-20050815 (Apple version gdb-1346) (Fri Sep 18 20:40:51 UTC 2009)
- // GNU gdb 6.3.50-20050815 (Apple version gdb-1461.2) (Fri Mar 5 04:43:10 UTC 2010)
- // It seems the version that changes is the "Apple version" but we still use both.
- // The Mac OS prefix and version are appended to the normal version so the
- // returned string has this format: 6.3.50-20050815APPLE1346. The normal version and the
- // Apple version are extracted later and passed to the MacOS services factory.
- if (versionOutput.indexOf("Apple") != -1) { //$NON-NLS-1$
- // Add a prefix to indicate we are dealing with an Apple GDB
- version += MACOS_GDB_MARKER;
- Pattern aPattern = Pattern.compile(" \\(Apple version gdb-(\\d+(\\.\\d+)*)\\)", Pattern.MULTILINE); //$NON-NLS-1$
- Matcher aMatcher = aPattern.matcher(versionOutput);
- if (aMatcher.find()) {
- version += aMatcher.group(1);
- }
- }
return version;
}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSCommandFactory.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSCommandFactory.java
deleted file mode 100644
index 05de8a9a45e..00000000000
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSCommandFactory.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 Ericsson 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:
- * Ericsson - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.dsf.gdb.service.macos;
-
-import org.eclipse.cdt.dsf.debug.service.command.ICommand;
-import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
-import org.eclipse.cdt.dsf.mi.service.command.CommandFactory;
-import org.eclipse.cdt.dsf.mi.service.command.commands.macos.MacOSMIEnvironmentCD;
-import org.eclipse.cdt.dsf.mi.service.command.commands.macos.MacOSMIVarUpdate;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIInfo;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIVarUpdateInfo;
-
-/** @since 3.0 */
-public class MacOSCommandFactory extends CommandFactory {
-
- @Override
- public ICommand<MIInfo> createMIEnvironmentCD(ICommandControlDMContext ctx, String path) {
- return new MacOSMIEnvironmentCD(ctx, path);
- }
-
- @Override
- public ICommand<MIVarUpdateInfo> createMIVarUpdate(ICommandControlDMContext dmc, String name) {
- return new MacOSMIVarUpdate(dmc, name);
- }
-}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBProcesses.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBProcesses.java
deleted file mode 100644
index 973a055a53b..00000000000
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBProcesses.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010, 2011 Ericsson 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:
- * Ericsson - initial API and implementation
- * Marc-Andre Laperle - fix for bug 269838
- *******************************************************************************/
-package org.eclipse.cdt.dsf.gdb.service.macos;
-
-import java.util.Hashtable;
-
-import org.eclipse.cdt.dsf.concurrent.ImmediateRequestMonitor;
-import org.eclipse.cdt.dsf.concurrent.RequestMonitor;
-import org.eclipse.cdt.dsf.debug.service.IProcesses;
-import org.eclipse.cdt.dsf.debug.service.IRunControl.ISuspendedDMEvent;
-import org.eclipse.cdt.dsf.gdb.service.GDBProcesses;
-import org.eclipse.cdt.dsf.mi.service.IMIProcesses;
-import org.eclipse.cdt.dsf.mi.service.MIProcesses;
-import org.eclipse.cdt.dsf.service.DsfServiceEventHandler;
-import org.eclipse.cdt.dsf.service.DsfSession;
-
-/** @since 3.0 */
-public class MacOSGDBProcesses extends GDBProcesses {
-
- public MacOSGDBProcesses(DsfSession session) {
- super(session);
- }
-
- @Override
- public void initialize(final RequestMonitor requestMonitor) {
- super.initialize(new ImmediateRequestMonitor(requestMonitor) {
- @Override
- protected void handleSuccess() {
- doInitialize(requestMonitor);
- }
- });
- }
-
- private void doInitialize(RequestMonitor requestMonitor) {
- // Register this service.
- register(new String[] { IProcesses.class.getName(),
- IMIProcesses.class.getName(),
- MIProcesses.class.getName(),
- GDBProcesses.class.getName(),
- MacOSGDBProcesses.class.getName() },
- new Hashtable<String, String>());
-
- getSession().addServiceEventListener(this, null);
-
- requestMonitor.done();
- }
-
- @Override
- public void shutdown(RequestMonitor requestMonitor) {
- getSession().removeServiceEventListener(this);
- super.shutdown(requestMonitor);
- }
-
- @DsfServiceEventHandler
- public void eventDispatchedMacOS(ISuspendedDMEvent e) {
- // With Apple-gdb, we flush the command cache because we need
- // new results from -thread-list-ids
- // This is because there is no IStartedDMEvent triggered by GDB on Apple-gdb
- flushCache(null);
- }
-}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBRunControl.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBRunControl.java
deleted file mode 100644
index 9e9fe86b0d2..00000000000
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGDBRunControl.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010, 2011 Wind River Systems 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:
- * Marc-Andre Laperle - Mac OS version, fix for bug 265483
- *******************************************************************************/
-
-package org.eclipse.cdt.dsf.gdb.service.macos;
-
-import java.util.Hashtable;
-
-import org.eclipse.cdt.dsf.concurrent.DataRequestMonitor;
-import org.eclipse.cdt.dsf.concurrent.ImmediateRequestMonitor;
-import org.eclipse.cdt.dsf.concurrent.RequestMonitor;
-import org.eclipse.cdt.dsf.datamodel.DMContexts;
-import org.eclipse.cdt.dsf.debug.service.IRunControl;
-import org.eclipse.cdt.dsf.debug.service.command.ICommand;
-import org.eclipse.cdt.dsf.gdb.internal.GdbPlugin;
-import org.eclipse.cdt.dsf.gdb.service.GDBRunControl;
-import org.eclipse.cdt.dsf.mi.service.IMICommandControl;
-import org.eclipse.cdt.dsf.mi.service.IMIExecutionDMContext;
-import org.eclipse.cdt.dsf.mi.service.IMIRunControl;
-import org.eclipse.cdt.dsf.mi.service.MIRunControl;
-import org.eclipse.cdt.dsf.mi.service.command.CommandFactory;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIInfo;
-import org.eclipse.cdt.dsf.service.DsfSession;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-
-/** @since 3.0 */
-public class MacOSGDBRunControl extends GDBRunControl {
-
- private CommandFactory fCommandFactory;
-
- public MacOSGDBRunControl(DsfSession session) {
- super(session);
- }
-
- @Override
- public void initialize(final RequestMonitor requestMonitor) {
- super.initialize(new ImmediateRequestMonitor(requestMonitor) {
- @Override
- protected void handleSuccess() {
- doInitialize(requestMonitor);
- }
- });
- }
-
- private void doInitialize(RequestMonitor requestMonitor) {
- // Register this service.
- register(new String[]{ IRunControl.class.getName(),
- IMIRunControl.class.getName(),
- MIRunControl.class.getName(),
- GDBRunControl.class.getName(),
- MacOSGDBRunControl.class.getName() },
- new Hashtable<String,String>());
-
- fCommandFactory = getServicesTracker().getService(IMICommandControl.class).getCommandFactory();
-
- requestMonitor.done();
- }
-
- @Override
- public void shutdown(RequestMonitor requestMonitor) {
- super.shutdown(requestMonitor);
- }
-
- // We use the MIControl code since -exec-interrupt works with Apple gdb
- // but SIGINT does not; it seems it runs in async mode by default
- @Override
- public void suspend(final IExecutionDMContext context, final RequestMonitor rm){
- assert context != null;
-
- canSuspend(
- context,
- new DataRequestMonitor<Boolean>(getExecutor(), rm) {
- @Override
- protected void handleSuccess() {
- if (getData()) {
- ICommand<MIInfo> cmd = null;
- if (context instanceof IContainerDMContext) {
- cmd = fCommandFactory.createMIExecInterrupt(context);
- } else {
- IMIExecutionDMContext dmc = DMContexts.getAncestorOfType(context, IMIExecutionDMContext.class);
- if (dmc == null) {
- rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, NOT_SUPPORTED, "Given context: " + context + " is not an execution context.", null)); //$NON-NLS-1$ //$NON-NLS-2$
- rm.done();
- return;
- }
- cmd = fCommandFactory.createMIExecInterrupt(dmc);
- }
- getConnection().queueCommand(cmd, new DataRequestMonitor<MIInfo>(getExecutor(), rm));
- } else {
- rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Context cannot be suspended.", null)); //$NON-NLS-1$
- rm.done();
- }
- }
- });
- }
-}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGdbDebugServicesFactory.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGdbDebugServicesFactory.java
deleted file mode 100644
index 55a097d6828..00000000000
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/macos/MacOSGdbDebugServicesFactory.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 Ericsson 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:
- * Marc-Andre Laperle - Added support for Mac OS (separate factory)
- * - fix for bug 265483
- * Ericsson - Added a field for the specific Mac OS version scheme
- *******************************************************************************/
-package org.eclipse.cdt.dsf.gdb.service.macos;
-
-import org.eclipse.cdt.dsf.debug.service.IProcesses;
-import org.eclipse.cdt.dsf.debug.service.IRunControl;
-import org.eclipse.cdt.dsf.debug.service.command.ICommandControl;
-import org.eclipse.cdt.dsf.gdb.service.GdbDebugServicesFactory;
-import org.eclipse.cdt.dsf.gdb.service.command.GDBControl;
-import org.eclipse.cdt.dsf.service.DsfSession;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/** @since 3.0 */
-public class MacOSGdbDebugServicesFactory extends GdbDebugServicesFactory {
-
- // Mac OS has it's own version of GDB, which does not follow the standard GDB version
- // We have to be careful not to compare that specific version number scheme with the
- // FSF GDB version scheme.
- // Use this variable when needing to differentiate between different Mac OS GDBs
- @SuppressWarnings("unused")
- private final String fAppleVersion;
-
- public MacOSGdbDebugServicesFactory(String gdbVersion, String appleVersion) {
- super(gdbVersion);
- fAppleVersion = appleVersion;
- }
-
- @Override
- protected ICommandControl createCommandControl(DsfSession session, ILaunchConfiguration config) {
- return new GDBControl(session, config, new MacOSCommandFactory());
- }
-
- @Override
- protected IRunControl createRunControlService(DsfSession session) {
- return new MacOSGDBRunControl(session);
- }
-
- @Override
- protected IProcesses createProcessesService(DsfSession session) {
- return new MacOSGDBProcesses(session);
- }
-}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIEnvironmentCD.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIEnvironmentCD.java
deleted file mode 100644
index b869e6a03c0..00000000000
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIEnvironmentCD.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2006, 2010 Nokia 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:
- * Nokia - Initial API and implementation
- * Marc-Andre Laperle - fix for bug 263689 (spaces in directory)
-***********************************************************************/
-package org.eclipse.cdt.dsf.mi.service.command.commands.macos;
-
-import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
-import org.eclipse.cdt.dsf.mi.service.command.commands.MIEnvironmentCD;
-
-/**
- * @since 3.0
- */
-public class MacOSMIEnvironmentCD extends MIEnvironmentCD {
-
- // We need to send the following format:
- // -environment-cd "\"/path/without/any/spaces\"" or -environment-cd /path/without/any/spaces
- // -environment-cd "\"/path/with spaces\""
- public MacOSMIEnvironmentCD(ICommandControlDMContext ctx, String path) {
- super(ctx, (path == null) ? null : "\"\\\"" + path + "\\\"\""); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- @Override
- protected String parametersToString() {
- // Apple's GDB is very picky. We override the parameter formatting
- // so that we can control exactly what will be sent to GDB.
- StringBuffer buffer = new StringBuffer();
- for (String parameter : getParameters()) {
- buffer.append(' ').append(parameter);
- }
- return buffer.toString().trim();
- }
-}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIVarUpdate.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIVarUpdate.java
deleted file mode 100644
index 5fc766eb431..00000000000
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/commands/macos/MacOSMIVarUpdate.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * Wind River Systems - Modified for new DSF Reference Implementation
- * Ericsson - Modified for handling of frame contexts
- *******************************************************************************/
-
-package org.eclipse.cdt.dsf.mi.service.command.commands.macos;
-
-import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
-import org.eclipse.cdt.dsf.mi.service.command.commands.MIVarUpdate;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIOutput;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIVarUpdateInfo;
-import org.eclipse.cdt.dsf.mi.service.command.output.macos.MacOSMIVarUpdateInfo;
-
-/**
- *
- * -var-update [print-values] {NAME | "*"}
- *
- * Update the value of the variable object NAME by evaluating its
- * expression after fetching all the new values from memory or registers.
- * A `*' causes all existing variable objects to be updated.
- * If print-values has a value for of 0 or --no-values, print only the names of the variables;
- * if print-values is 1 or --all-values, also print their values;
- * if it is 2 or --simple-values print the name and value for simple data types and just
- * the name for arrays, structures and unions.
- *
- * It seems that for MacOS, we must use the full string for print-values, such as
- * --all-values.
- *
- * @since 3.0
- */
-public class MacOSMIVarUpdate extends MIVarUpdate {
-
- public MacOSMIVarUpdate(ICommandControlDMContext dmc, String name) {
- super(dmc, name);
- // Must use --all-values instead of 1 for Mac OS
- setParameters(new String[] { "--all-values", name }); //$NON-NLS-1$
- }
-
- @Override
- public MIVarUpdateInfo getResult(MIOutput out) {
- return new MacOSMIVarUpdateInfo(out);
- }
-}
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/macos/MacOSMIVarUpdateInfo.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/macos/MacOSMIVarUpdateInfo.java
deleted file mode 100644
index c5c2658e7fc..00000000000
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/macos/MacOSMIVarUpdateInfo.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * Ericsson - Created version for Mac OS
- *******************************************************************************/
-package org.eclipse.cdt.dsf.mi.service.command.output.macos;
-
-import java.util.List;
-
-import org.eclipse.cdt.dsf.mi.service.command.output.MIList;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIOutput;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIResult;
-import org.eclipse.cdt.dsf.mi.service.command.output.MITuple;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIValue;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIVarChange;
-import org.eclipse.cdt.dsf.mi.service.command.output.MIVarUpdateInfo;
-
-/**
- * GDB/MI var-update for Mac OS.
- * -var-update *
- * ^done,changelist=[varobj={name="var1",in_scope="true",type_changed="false"}],time={.....}
- *
- * @since 3.0
- */
-public class MacOSMIVarUpdateInfo extends MIVarUpdateInfo {
-
- public MacOSMIVarUpdateInfo(MIOutput record) {
- super(record);
- }
-
- /**
- * For MI2 the format is now a MIList.
- * @param tuple
- * @param aList
- */
- @Override
- protected void parseChangeList(MIList miList, List<MIVarChange> aList) {
- // The MIList in Apple gdb contains MIResults instead of MIValues. It looks like:
- // ^done,changelist=[varobj={name="var1",in_scope="true",type_changed="false"}],time={.....}
- // Bug 250037
- MIResult[] results = miList.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- if (var.equals("varobj")) { //$NON-NLS-1$
- MIValue value = results[i].getMIValue();
- if (value instanceof MITuple) {
- parseChangeList((MITuple)value, aList);
- } else if (value instanceof MIList) {
- parseChangeList((MIList)value, aList);
- }
- }
- }
- }
-}
diff --git a/jtag/org.eclipse.cdt.debug.gdbjtag.core/META-INF/MANIFEST.MF b/jtag/org.eclipse.cdt.debug.gdbjtag.core/META-INF/MANIFEST.MF
index d798c7dbcf3..eb386f2d677 100644
--- a/jtag/org.eclipse.cdt.debug.gdbjtag.core/META-INF/MANIFEST.MF
+++ b/jtag/org.eclipse.cdt.debug.gdbjtag.core/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.cdt.debug.gdbjtag.core;singleton:=true
-Bundle-Version: 8.5.0.qualifier
+Bundle-Version: 9.0.0.qualifier
Bundle-Activator: org.eclipse.cdt.debug.gdbjtag.core.Activator
Bundle-Localization: plugin
Require-Bundle: org.eclipse.core.runtime,
@@ -18,7 +18,6 @@ Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.cdt.debug.gdbjtag.core,
org.eclipse.cdt.debug.gdbjtag.core.dsf.gdb.service,
org.eclipse.cdt.debug.gdbjtag.core.dsf.gdb.service.extensions,
- org.eclipse.cdt.debug.gdbjtag.core.dsf.gdb.service.macos,
org.eclipse.cdt.debug.gdbjtag.core.jtagdevice
Bundle-Vendor: %providerName
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
diff --git a/jtag/org.eclipse.cdt.debug.gdbjtag.core/pom.xml b/jtag/org.eclipse.cdt.debug.gdbjtag.core/pom.xml
index dd4860874f5..10ed59e5155 100644
--- a/jtag/org.eclipse.cdt.debug.gdbjtag.core/pom.xml
+++ b/jtag/org.eclipse.cdt.debug.gdbjtag.core/pom.xml
@@ -11,7 +11,7 @@
<relativePath>../../pom.xml</relativePath>
</parent>
- <version>8.5.0-SNAPSHOT</version>
+ <version>9.0.0-SNAPSHOT</version>
<artifactId>org.eclipse.cdt.debug.gdbjtag.core</artifactId>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/GDBJtagDSFLaunchConfigurationDelegate.java b/jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/GDBJtagDSFLaunchConfigurationDelegate.java
index 525583773f9..1aa179f0529 100644
--- a/jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/GDBJtagDSFLaunchConfigurationDelegate.java
+++ b/jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/GDBJtagDSFLaunchConfigurationDelegate.java
@@ -18,7 +18,6 @@ package org.eclipse.cdt.debug.gdbjtag.core;
*/
import org.eclipse.cdt.debug.gdbjtag.core.dsf.gdb.service.GdbJtagDebugServicesFactory;
-import org.eclipse.cdt.debug.gdbjtag.core.dsf.gdb.service.macos.MacOSGdbJtagDebugServicesFactory;
import org.eclipse.cdt.dsf.concurrent.ThreadSafe;
import org.eclipse.cdt.dsf.debug.service.IDsfDebugServicesFactory;
import org.eclipse.cdt.dsf.gdb.IGDBLaunchConfigurationConstants;
@@ -46,15 +45,6 @@ public class GDBJtagDSFLaunchConfigurationDelegate extends GdbLaunchDelegate {
@Override
protected IDsfDebugServicesFactory newServiceFactory(ILaunchConfiguration config, String version) {
- if (version.contains(LaunchUtils.MACOS_GDB_MARKER)) {
- // The version string at this point should look like
- // 6.3.50-20050815APPLE1346, we extract the gdb version and apple version
- String versions [] = version.split(LaunchUtils.MACOS_GDB_MARKER);
- if (versions.length == 2) {
- return new MacOSGdbJtagDebugServicesFactory(versions[0], versions[1]);
- }
- }
-
return new GdbJtagDebugServicesFactory(version);
}
diff --git a/jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/dsf/gdb/service/macos/MacOSGdbJtagDebugServicesFactory.java b/jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/dsf/gdb/service/macos/MacOSGdbJtagDebugServicesFactory.java
deleted file mode 100644
index 92eebfd7b37..00000000000
--- a/jtag/org.eclipse.cdt.debug.gdbjtag.core/src/org/eclipse/cdt/debug/gdbjtag/core/dsf/gdb/service/macos/MacOSGdbJtagDebugServicesFactory.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011, 2014 Ericsson 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:
- * Ericsson - Initial implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.gdbjtag.core.dsf.gdb.service.macos;
-
-import org.eclipse.cdt.debug.gdbjtag.core.dsf.gdb.service.GDBJtagControl;
-import org.eclipse.cdt.dsf.debug.service.command.ICommandControl;
-import org.eclipse.cdt.dsf.gdb.service.macos.MacOSCommandFactory;
-import org.eclipse.cdt.dsf.gdb.service.macos.MacOSGdbDebugServicesFactory;
-import org.eclipse.cdt.dsf.service.DsfSession;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/** @since 8.4*/
-public class MacOSGdbJtagDebugServicesFactory extends MacOSGdbDebugServicesFactory {
-
- public MacOSGdbJtagDebugServicesFactory(String gdbVersion, String appleVersion) {
- super(gdbVersion, appleVersion);
- }
-
- @Override
- protected ICommandControl createCommandControl(DsfSession session, ILaunchConfiguration config) {
- return new GDBJtagControl(session, config, new MacOSCommandFactory());
- }
-}

Back to the top