Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc-Andre Laperle2015-07-20 17:44:28 +0000
committerGerrit Code Review @ Eclipse.org2015-07-29 03:21:29 +0000
commitc137a9dfbc98fdc84cb8d9e5236dbc4e7c09feca (patch)
treeea0210db32a1b5b84492d1ad970736cc898bc1b4
parent7571170de65b34d5980b55b4fc4b9d767a34c6c6 (diff)
downloadorg.eclipse.cdt-c137a9dfbc98fdc84cb8d9e5236dbc4e7c09feca.tar.gz
org.eclipse.cdt-c137a9dfbc98fdc84cb8d9e5236dbc4e7c09feca.tar.xz
org.eclipse.cdt-c137a9dfbc98fdc84cb8d9e5236dbc4e7c09feca.zip
Build stand-alone debugger RCP for Windows
Change-Id: I50dae8e3cfb47c4db7f0354e57753055958e3d2c Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
-rw-r--r--debug/org.eclipse.cdt.debug.application.doc/META-INF/MANIFEST.MF2
-rw-r--r--debug/org.eclipse.cdt.debug.application.doc/pom.xml2
-rw-r--r--debug/org.eclipse.cdt.debug.application.product/README2
-rw-r--r--debug/org.eclipse.cdt.debug.application.product/debug.product16
-rw-r--r--debug/org.eclipse.cdt.debug.application.product/pom.xml12
-rw-r--r--debug/org.eclipse.cdt.debug.application/icons/cc.icobin0 -> 297086 bytes
-rw-r--r--debug/org.eclipse.cdt.debug.application/plugin.properties2
-rw-r--r--debug/org.eclipse.cdt.debug.application/src/org/eclipse/cdt/internal/debug/application/CompilerOptionParser.java11
8 files changed, 37 insertions, 10 deletions
diff --git a/debug/org.eclipse.cdt.debug.application.doc/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.application.doc/META-INF/MANIFEST.MF
index 4165c12c55..1402bab858 100644
--- a/debug/org.eclipse.cdt.debug.application.doc/META-INF/MANIFEST.MF
+++ b/debug/org.eclipse.cdt.debug.application.doc/META-INF/MANIFEST.MF
@@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %bundleName
Bundle-SymbolicName: org.eclipse.cdt.debug.application.doc;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.1.0.qualifier
Bundle-Vendor: %provider
Bundle-Localization: plugin
diff --git a/debug/org.eclipse.cdt.debug.application.doc/pom.xml b/debug/org.eclipse.cdt.debug.application.doc/pom.xml
index 383ca51958..77306dd4bf 100644
--- a/debug/org.eclipse.cdt.debug.application.doc/pom.xml
+++ b/debug/org.eclipse.cdt.debug.application.doc/pom.xml
@@ -10,7 +10,7 @@
<relativePath>../../pom.xml</relativePath>
</parent>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.1.0-SNAPSHOT</version>
<artifactId>org.eclipse.cdt.debug.application.doc</artifactId>
<packaging>eclipse-plugin</packaging>
diff --git a/debug/org.eclipse.cdt.debug.application.product/README b/debug/org.eclipse.cdt.debug.application.product/README
index 4e640c12c9..c096df5f7a 100644
--- a/debug/org.eclipse.cdt.debug.application.product/README
+++ b/debug/org.eclipse.cdt.debug.application.product/README
@@ -8,4 +8,4 @@ You can find more information about command-line options in
org.eclipse.cdt.debug.application/scripts/README.
Note that this product is currently only built for the more popular architecture x86 and x86_64 on
-Linux.
+Linux and Windows.
diff --git a/debug/org.eclipse.cdt.debug.application.product/debug.product b/debug/org.eclipse.cdt.debug.application.product/debug.product
index edfc479495..31aed0babe 100644
--- a/debug/org.eclipse.cdt.debug.application.product/debug.product
+++ b/debug/org.eclipse.cdt.debug.application.product/debug.product
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
-<product name="Stand-alone C/C++ GDB Debugger" uid="org.eclipse.cdt.debug.application.product" id="org.eclipse.cdt.debug.application.product" application="org.eclipse.cdt.debug.application.app" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="true">
+<product name="Stand-alone C/C++ GDB Debugger" uid="org.eclipse.cdt.debug.application.product" id="org.eclipse.cdt.debug.application.product" application="org.eclipse.cdt.debug.application.app" version="1.1.0.qualifier" useFeatures="false" includeLaunchers="true">
<aboutInfo>
<image path="/org.eclipse.cdt.debug.application/icons/about.png"/>
@@ -34,7 +34,8 @@
<launcher name="cdtdebug">
<linux icon="../org.eclipse.cdt.debug.application/icons/cc.xpm"/>
<solaris/>
- <win useIco="false">
+ <win useIco="true">
+ <ico path="../org.eclipse.cdt.debug.application/icons/cc.ico"/>
<bmp/>
</win>
</launcher>
@@ -195,6 +196,9 @@ Java and all Java-based trademarks are trademarks of Oracle Corporation in the U
<plugin id="org.eclipse.cdt.core.linux.x86" fragment="true"/>
<plugin id="org.eclipse.cdt.core.linux.x86_64" fragment="true"/>
<plugin id="org.eclipse.cdt.core.native"/>
+ <plugin id="org.eclipse.cdt.core.win32" fragment="true"/>
+ <plugin id="org.eclipse.cdt.core.win32.x86" fragment="true"/>
+ <plugin id="org.eclipse.cdt.core.win32.x86_64" fragment="true"/>
<plugin id="org.eclipse.cdt.debug.application"/>
<plugin id="org.eclipse.cdt.debug.application.doc"/>
<plugin id="org.eclipse.cdt.debug.core"/>
@@ -232,10 +236,14 @@ Java and all Java-based trademarks are trademarks of Oracle Corporation in the U
<plugin id="org.eclipse.core.filesystem.java7" fragment="true"/>
<plugin id="org.eclipse.core.filesystem.linux.x86" fragment="true"/>
<plugin id="org.eclipse.core.filesystem.linux.x86_64" fragment="true"/>
+ <plugin id="org.eclipse.core.filesystem.win32.x86" fragment="true"/>
+ <plugin id="org.eclipse.core.filesystem.win32.x86_64" fragment="true"/>
<plugin id="org.eclipse.core.jobs"/>
<plugin id="org.eclipse.core.net"/>
<plugin id="org.eclipse.core.net.linux.x86" fragment="true"/>
<plugin id="org.eclipse.core.net.linux.x86_64" fragment="true"/>
+ <plugin id="org.eclipse.core.net.win32.x86" fragment="true"/>
+ <plugin id="org.eclipse.core.net.win32.x86_64" fragment="true"/>
<plugin id="org.eclipse.core.resources"/>
<plugin id="org.eclipse.core.runtime"/>
<plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
@@ -285,6 +293,8 @@ Java and all Java-based trademarks are trademarks of Oracle Corporation in the U
<plugin id="org.eclipse.equinox.launcher"/>
<plugin id="org.eclipse.equinox.launcher.gtk.linux.x86" fragment="true"/>
<plugin id="org.eclipse.equinox.launcher.gtk.linux.x86_64" fragment="true"/>
+ <plugin id="org.eclipse.equinox.launcher.win32.win32.x86" fragment="true"/>
+ <plugin id="org.eclipse.equinox.launcher.win32.win32.x86_64" fragment="true"/>
<plugin id="org.eclipse.equinox.p2.artifact.repository"/>
<plugin id="org.eclipse.equinox.p2.core"/>
<plugin id="org.eclipse.equinox.p2.director"/>
@@ -329,6 +339,8 @@ Java and all Java-based trademarks are trademarks of Oracle Corporation in the U
<plugin id="org.eclipse.swt"/>
<plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/>
<plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/>
+ <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>
+ <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/>
<plugin id="org.eclipse.team.core"/>
<plugin id="org.eclipse.team.ui"/>
<plugin id="org.eclipse.text"/>
diff --git a/debug/org.eclipse.cdt.debug.application.product/pom.xml b/debug/org.eclipse.cdt.debug.application.product/pom.xml
index 5aa6942961..e48fc7f1be 100644
--- a/debug/org.eclipse.cdt.debug.application.product/pom.xml
+++ b/debug/org.eclipse.cdt.debug.application.product/pom.xml
@@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.1.0-SNAPSHOT</version>
<artifactId>org.eclipse.cdt.debug.application.product</artifactId>
<packaging>eclipse-repository</packaging>
<name>Stand-Alone C/C++ Debugger Product</name>
@@ -74,6 +74,16 @@
<ws>gtk</ws>
<arch>x86_64</arch>
</environment>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ </environment>
</environments>
</configuration>
</plugin>
diff --git a/debug/org.eclipse.cdt.debug.application/icons/cc.ico b/debug/org.eclipse.cdt.debug.application/icons/cc.ico
new file mode 100644
index 0000000000..c91e382704
--- /dev/null
+++ b/debug/org.eclipse.cdt.debug.application/icons/cc.ico
Binary files differ
diff --git a/debug/org.eclipse.cdt.debug.application/plugin.properties b/debug/org.eclipse.cdt.debug.application/plugin.properties
index c4fb803cfb..b9f08e7323 100644
--- a/debug/org.eclipse.cdt.debug.application/plugin.properties
+++ b/debug/org.eclipse.cdt.debug.application/plugin.properties
@@ -38,6 +38,6 @@ DebugRemoteExecutableMenu.label=&Remote Executable...
DebugCore.description=Debug a corefile
DebugCore.name=Debug Core File
DebugCoreMenu.label=Debug &Core File...
-aboutText=Eclipse Stand-alone C/C++ GDB Graphical Debugger\n\nRelease 1.0.0\n
+aboutText=Eclipse Stand-alone C/C++ GDB Graphical Debugger\n\nRelease 1.1.0\n
ProductDesc=Eclipse Stand-alone C/C++ GDB Debugger
ProductName=Stand-alone C/C++ GDB Debugger \ No newline at end of file
diff --git a/debug/org.eclipse.cdt.debug.application/src/org/eclipse/cdt/internal/debug/application/CompilerOptionParser.java b/debug/org.eclipse.cdt.debug.application/src/org/eclipse/cdt/internal/debug/application/CompilerOptionParser.java
index 752587d0a6..6500474829 100644
--- a/debug/org.eclipse.cdt.debug.application/src/org/eclipse/cdt/internal/debug/application/CompilerOptionParser.java
+++ b/debug/org.eclipse.cdt.debug.application/src/org/eclipse/cdt/internal/debug/application/CompilerOptionParser.java
@@ -26,6 +26,7 @@ import org.eclipse.cdt.core.settings.model.ICProjectDescription;
import org.eclipse.cdt.core.settings.model.ICProjectDescriptionManager;
import org.eclipse.cdt.debug.application.GCCCompileOptionsParser;
import org.eclipse.cdt.debug.application.Messages;
+import org.eclipse.cdt.utils.coff.parser.PEParser;
import org.eclipse.cdt.utils.elf.parser.GNUElfParser;
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
@@ -64,9 +65,13 @@ public class CompilerOptionParser implements IWorkspaceRunnable {
try {
// Calculate how many source files we have to process and use that as a basis
// for our work estimate.
- GNUElfParser binParser = new GNUElfParser();
- IBinaryFile bf = binParser
- .getBinary(new Path(executable));
+ IBinaryFile bf;
+ try {
+ bf = new GNUElfParser().getBinary(new Path(executable));
+ } catch (IOException e) {
+ // Try Portable Executable (Windows)
+ bf = new PEParser().getBinary(new Path(executable));
+ }
ISymbolReader reader = bf.getAdapter(ISymbolReader.class);
String[] sourceFiles = reader
.getSourceFiles();

Back to the top