Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc-Andre Laperle2011-07-31 22:06:39 -0400
committerMarc-Andre Laperle2011-07-31 22:06:39 -0400
commitebfa9bcd0ab36335fbdd8398d648cbcb37f337db (patch)
tree1806135190e2560d0f009186861a1d20eb4cb3a6
parent96d87270a51e3087b687e6b6c074642719736158 (diff)
downloadorg.eclipse.cdt-ebfa9bcd0ab36335fbdd8398d648cbcb37f337db.tar.gz
org.eclipse.cdt-ebfa9bcd0ab36335fbdd8398d648cbcb37f337db.tar.xz
org.eclipse.cdt-ebfa9bcd0ab36335fbdd8398d648cbcb37f337db.zip
Bug 236330 - win32-x86_64 support
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/.project22
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/META-INF/MANIFEST.MF10
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/about.html24
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/build.properties14
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/os/win32/x86/listtasks.exe (renamed from core/org.eclipse.cdt.core.win32/os/win32/x86/listtasks.exe)bin102400 -> 102400 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/os/win32/x86/spawner.dll (renamed from core/org.eclipse.cdt.core.win32/os/win32/x86/spawner.dll)bin42781 -> 42781 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/os/win32/x86/starter.exe (renamed from core/org.eclipse.cdt.core.win32/os/win32/x86/starter.exe)bin31366 -> 31366 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/os/win32/x86/winreg.dll (renamed from core/org.eclipse.cdt.core.win32/os/win32/x86/winreg.dll)bin17909 -> 17909 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86/pom.xml53
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/.project22
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/META-INF/MANIFEST.MF10
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/about.html24
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/build.properties14
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/listtasks.exebin0 -> 165888 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/spawner.dllbin0 -> 68608 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/starter.exebin0 -> 59904 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/winreg.dllbin0 -> 39936 bytes
-rw-r--r--core/org.eclipse.cdt.core.win32.x86_64/pom.xml53
-rw-r--r--core/org.eclipse.cdt.core.win32/META-INF/MANIFEST.MF1
-rw-r--r--core/org.eclipse.cdt.core.win32/build.properties3
-rw-r--r--core/org.eclipse.cdt.core.win32/library/Makefile2
-rw-r--r--core/org.eclipse.cdt.core.win32/library/Makefile_x86_64.mk73
-rw-r--r--core/org.eclipse.cdt.core.win32/library/Readme64.txt23
-rw-r--r--core/org.eclipse.cdt.core.win32/library/Win32ProcessEx.c19
-rw-r--r--core/org.eclipse.cdt.core.win32/library/build64.bat12
-rw-r--r--core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.cpp47
-rw-r--r--core/org.eclipse.cdt.core.win32/library/raise.c4
-rw-r--r--core/org.eclipse.cdt.core.win32/library/setenv64.bat1
-rw-r--r--core/org.eclipse.cdt.core.win32/library/starter/Makefile2
-rw-r--r--core/org.eclipse.cdt.core.win32/library/winreg/Makefile2
-rw-r--r--core/org.eclipse.cdt.core.win32/os/win32/x86/.cvsignore2
-rw-r--r--core/org.eclipse.cdt.core/plugin.properties2
-rw-r--r--pom.xml2
-rw-r--r--releng/org.eclipse.cdt.platform-feature/feature.xml21
34 files changed, 432 insertions, 30 deletions
diff --git a/core/org.eclipse.cdt.core.win32.x86/.project b/core/org.eclipse.cdt.core.win32.x86/.project
new file mode 100644
index 0000000000..29368923c4
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.cdt.core.win32.x86</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/core/org.eclipse.cdt.core.win32.x86/META-INF/MANIFEST.MF b/core/org.eclipse.cdt.core.win32.x86/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..559772a6fa
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86/META-INF/MANIFEST.MF
@@ -0,0 +1,10 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %fragmentName.win32.x86
+Bundle-SymbolicName: org.eclipse.cdt.core.win32.x86;singleton:=true
+Bundle-Version: 5.2.0.qualifier
+Bundle-Vendor: %providerName
+Fragment-Host: org.eclipse.cdt.core;bundle-version="[5.2.0,6.0.0)"
+Bundle-Localization: plugin
+Eclipse-PlatformFilter: (&(osgi.os=win32)(osgi.arch=x86))
+Eclipse-BundleShape: dir
diff --git a/core/org.eclipse.cdt.core.win32.x86/about.html b/core/org.eclipse.cdt.core.win32.x86/about.html
new file mode 100644
index 0000000000..5eba4faba0
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86/about.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
+
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 22, 2007</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party ("Redistributor") and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body></html> \ No newline at end of file
diff --git a/core/org.eclipse.cdt.core.win32.x86/build.properties b/core/org.eclipse.cdt.core.win32.x86/build.properties
new file mode 100644
index 0000000000..b43fc219a8
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86/build.properties
@@ -0,0 +1,14 @@
+###############################################################################
+# Copyright (c) 2011 Marc-Andre Laperle 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 - initial API and implementation
+###############################################################################
+bin.includes = META-INF/,\
+ os/,\
+ about.html
+src.includes = about.html
diff --git a/core/org.eclipse.cdt.core.win32/os/win32/x86/listtasks.exe b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/listtasks.exe
index a31d3b2096..a31d3b2096 100644
--- a/core/org.eclipse.cdt.core.win32/os/win32/x86/listtasks.exe
+++ b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/listtasks.exe
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32/os/win32/x86/spawner.dll b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/spawner.dll
index 0608730ebe..0608730ebe 100644
--- a/core/org.eclipse.cdt.core.win32/os/win32/x86/spawner.dll
+++ b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/spawner.dll
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32/os/win32/x86/starter.exe b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/starter.exe
index a6f4256bc8..a6f4256bc8 100644
--- a/core/org.eclipse.cdt.core.win32/os/win32/x86/starter.exe
+++ b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/starter.exe
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32/os/win32/x86/winreg.dll b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/winreg.dll
index 451dc921d0..451dc921d0 100644
--- a/core/org.eclipse.cdt.core.win32/os/win32/x86/winreg.dll
+++ b/core/org.eclipse.cdt.core.win32.x86/os/win32/x86/winreg.dll
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32.x86/pom.xml b/core/org.eclipse.cdt.core.win32.x86/pom.xml
new file mode 100644
index 0000000000..5f2bebb9b2
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86/pom.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.cdt</groupId>
+ <artifactId>cdt-parent</artifactId>
+ <version>8.0.0-SNAPSHOT</version>
+ <relativePath>../../pom.xml</relativePath>
+ </parent>
+
+ <version>5.2.0-SNAPSHOT</version>
+ <artifactId>org.eclipse.cdt.core.win32.x86</artifactId>
+ <packaging>eclipse-plugin</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <resolver>p2</resolver>
+ <pomDependencies>consider</pomDependencies>
+ <environments>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86</arch>
+ </environment>
+ </environments>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-source-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>plugin-source</id>
+ <phase>none</phase>
+ </execution>
+ <execution>
+ <id>attach-source</id>
+ <phase>none</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/.project b/core/org.eclipse.cdt.core.win32.x86_64/.project
new file mode 100644
index 0000000000..11d5a0fe82
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.cdt.core.win32.x86_64</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/META-INF/MANIFEST.MF b/core/org.eclipse.cdt.core.win32.x86_64/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..5cb454dfc4
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/META-INF/MANIFEST.MF
@@ -0,0 +1,10 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %fragmentName.win32.x86_64
+Bundle-SymbolicName: org.eclipse.cdt.core.win32.x86_64;singleton:=true
+Bundle-Version: 5.2.0.qualifier
+Fragment-Host: org.eclipse.cdt.core;bundle-version="[5.2.0,6.0.0)"
+Eclipse-PlatformFilter: (&(osgi.os=win32)(osgi.arch=x86_64))
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Eclipse-BundleShape: dir
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/about.html b/core/org.eclipse.cdt.core.win32.x86_64/about.html
new file mode 100644
index 0000000000..5eba4faba0
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/about.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>About</title></head>
+
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 22, 2007</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party ("Redistributor") and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body></html> \ No newline at end of file
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/build.properties b/core/org.eclipse.cdt.core.win32.x86_64/build.properties
new file mode 100644
index 0000000000..b43fc219a8
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/build.properties
@@ -0,0 +1,14 @@
+###############################################################################
+# Copyright (c) 2011 Marc-Andre Laperle 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 - initial API and implementation
+###############################################################################
+bin.includes = META-INF/,\
+ os/,\
+ about.html
+src.includes = about.html
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/listtasks.exe b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/listtasks.exe
new file mode 100644
index 0000000000..56630eacb6
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/listtasks.exe
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/spawner.dll b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/spawner.dll
new file mode 100644
index 0000000000..d1e2113f7c
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/spawner.dll
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/starter.exe b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/starter.exe
new file mode 100644
index 0000000000..a73cf033c0
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/starter.exe
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/winreg.dll b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/winreg.dll
new file mode 100644
index 0000000000..a8e74e6599
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/winreg.dll
Binary files differ
diff --git a/core/org.eclipse.cdt.core.win32.x86_64/pom.xml b/core/org.eclipse.cdt.core.win32.x86_64/pom.xml
new file mode 100644
index 0000000000..3877dad754
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32.x86_64/pom.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.cdt</groupId>
+ <artifactId>cdt-parent</artifactId>
+ <version>8.0.0-SNAPSHOT</version>
+ <relativePath>../../pom.xml</relativePath>
+ </parent>
+
+ <version>5.2.0-SNAPSHOT</version>
+ <artifactId>org.eclipse.cdt.core.win32.x86_64</artifactId>
+ <packaging>eclipse-plugin</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <resolver>p2</resolver>
+ <pomDependencies>consider</pomDependencies>
+ <environments>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ </environment>
+ </environments>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-source-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>plugin-source</id>
+ <phase>none</phase>
+ </execution>
+ <execution>
+ <id>attach-source</id>
+ <phase>none</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/core/org.eclipse.cdt.core.win32/META-INF/MANIFEST.MF b/core/org.eclipse.cdt.core.win32/META-INF/MANIFEST.MF
index ce112e648f..f0023d2a42 100644
--- a/core/org.eclipse.cdt.core.win32/META-INF/MANIFEST.MF
+++ b/core/org.eclipse.cdt.core.win32/META-INF/MANIFEST.MF
@@ -9,4 +9,3 @@ Fragment-Host: org.eclipse.cdt.core;bundle-version="[5.2.0,6.0.0)"
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: J2SE-1.4
Eclipse-PlatformFilter: (osgi.os=win32)
-Eclipse-BundleShape: dir
diff --git a/core/org.eclipse.cdt.core.win32/build.properties b/core/org.eclipse.cdt.core.win32/build.properties
index 151be66774..7b3db958ad 100644
--- a/core/org.eclipse.cdt.core.win32/build.properties
+++ b/core/org.eclipse.cdt.core.win32/build.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2005, 2008 IBM Corporation and others.
+# Copyright (c) 2005, 2011 IBM Corporation 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
@@ -10,7 +10,6 @@
###############################################################################
bin.includes = fragment.xml,\
about.html,\
- os/,\
cdt_win32.jar,\
META-INF/
src.includes = about.html,\
diff --git a/core/org.eclipse.cdt.core.win32/library/Makefile b/core/org.eclipse.cdt.core.win32/library/Makefile
index a24c2cd6df..76bb655800 100644
--- a/core/org.eclipse.cdt.core.win32/library/Makefile
+++ b/core/org.eclipse.cdt.core.win32/library/Makefile
@@ -17,7 +17,7 @@ CFLAGS = -DUNICODE -I$(JDK_INCLUDES) -I$(JDK_OS_INCLUDES)
CXX=g++
CXXFLAGS=$(CFLAGS)
-INSTALL_DIR = ../os/$(OS)/$(ARCH)
+INSTALL_DIR = ../../org.eclipse.cdt.core.$(OS).$(ARCH)/os/$(OS)/$(ARCH)
LIB_NAME_SPAWNER = spawner.dll
LIB_NAME_FULL_SPAWNER = $(INSTALL_DIR)/spawner.dll
diff --git a/core/org.eclipse.cdt.core.win32/library/Makefile_x86_64.mk b/core/org.eclipse.cdt.core.win32/library/Makefile_x86_64.mk
new file mode 100644
index 0000000000..bec950a18d
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32/library/Makefile_x86_64.mk
@@ -0,0 +1,73 @@
+#*******************************************************************************
+# Copyright (c) 2011 Marc-Andre Laperle
+# 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 - initial API and implementation
+#*******************************************************************************
+
+# Makefile (nmake) for Core fragment on Windows x86_64
+
+OS = win32
+ARCH = x86_64
+
+JDK_INCLUDES= "$(JAVA_HOME)\include"
+JDK_OS_INCLUDES= "$(JAVA_HOME)\include/$(OS)"
+
+CC=cl
+DEBUG_FLAGS = -DDEBUG_MONITOR -DREAD_REPORT
+CFLAGS = /TP /I$(JDK_INCLUDES) /I$(JDK_OS_INCLUDES) /EHs /nologo
+CFLAGS_UNICODE = /D "_UNICODE" /D "UNICODE" $(CFLAGS)
+
+INSTALL_DIR = ..\..\org.eclipse.cdt.core.$(OS).$(ARCH)\os\$(OS)\$(ARCH)
+
+DLL_SPAWNER = spawner.dll
+OBJS_SPAWNER=StdAfx.obj Win32ProcessEx.obj iostream.obj raise.obj spawner.obj
+
+DLL_WINREG = winreg.dll
+OBJS_WINREG=winreg/winreg.obj
+
+EXE_STARTER = starter.exe
+OBJS_STARTER=starter/starter.obj
+
+EXE_LISTTASKS = listtasks.exe
+OBJS_LISTTASKS=listtasks/listtasks.obj listtasks/StdAfx.obj
+
+.c.obj:
+ cl /c $(CFLAGS_UNICODE) $*.c /Fo$@
+
+.cpp.obj:
+ cl /c $(CFLAGS_UNICODE) $*.cpp /Fo$@
+
+#TODO: Use unicode for listtasks, see bug 353460
+listtasks/listtasks.obj:
+ cl /c $(CFLAGS) $*.cpp /Fo$@
+
+spawner: $(OBJS_SPAWNER)
+ link /dll /nologo /out:$(DLL_SPAWNER) $(OBJS_SPAWNER) User32.lib
+
+winreg: $(OBJS_WINREG)
+ link /dll /nologo /out:$(DLL_WINREG) $(OBJS_WINREG) Advapi32.lib
+
+starter: $(OBJS_STARTER)
+ link /nologo /out:$(EXE_STARTER) $(OBJS_STARTER) Psapi.Lib Shell32.lib
+
+listtasks: $(OBJS_LISTTASKS)
+ link /nologo /out:$(EXE_LISTTASKS) $(OBJS_LISTTASKS) Psapi.Lib
+
+all: spawner winreg starter listtasks
+
+clean:
+ del *.obj *.lib *.exp *.exe *.dll winreg\*.obj starter\*.obj listtasks\*.obj
+
+rebuild: clean all
+
+install: all
+ copy *.dll $(INSTALL_DIR)
+ copy *.exe $(INSTALL_DIR)
+
+uninstall:
+ del $(INSTALL_DIR)\*.dll $(INSTALL_DIR)\*.exe
diff --git a/core/org.eclipse.cdt.core.win32/library/Readme64.txt b/core/org.eclipse.cdt.core.win32/library/Readme64.txt
new file mode 100644
index 0000000000..fc59c9e51c
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32/library/Readme64.txt
@@ -0,0 +1,23 @@
+#*******************************************************************************
+# Copyright (c) 2011 Marc-Andre Laperle
+# 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 - initial API and implementation
+#*******************************************************************************
+
+How to build the Win32 x86_64 core fragment:
+
+1. Prerequisites
+- Install Windows SDK 7.1. If the SDK is not installed in the default location or if you want to try a different SDK, modify setenv64.bat accordingly.
+- Make sure your JAVA_HOME environment variable is set and points to a 64 bit JDK (C:\Program Files\Java\jdkX.X.X not C:\Program Files (x86)\Java\jdkX.X.X )
+
+2. Build and install
+- In a command prompt, execute setenv64.bat.
+The command prompt should turn to a different color and print a message about targeting x64.
+- Execute build64.bat
+This will build the dlls and executables, copy them to org.eclipse.cdt.core.win32.x86_64\os\win32\x86_64 then clean the build directories.
+Optionally, you can use nmake /f Makefile_x86_64.mk TARGET directly. Refer to Makefile_x86_64.mk for valid targets.
diff --git a/core/org.eclipse.cdt.core.win32/library/Win32ProcessEx.c b/core/org.eclipse.cdt.core.win32/library/Win32ProcessEx.c
index a78ccb2722..577114a136 100644
--- a/core/org.eclipse.cdt.core.win32/library/Win32ProcessEx.c
+++ b/core/org.eclipse.cdt.core.win32/library/Win32ProcessEx.c
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2002, 2010 QNX Software Systems and others.
+ * Copyright (c) 2002, 2011 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
@@ -146,13 +146,18 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec0
DWORD pid = GetCurrentProcessId();
int nPos;
pProcInfo_t pCurProcInfo;
- wchar_t eventBreakName[20];
- wchar_t eventWaitName[20];
- wchar_t eventTerminateName[20];
- wchar_t eventKillName[20];
- wchar_t eventCtrlcName[20];
+
+ // This needs to be big enough to contain the name of the event used when calling CreateEventW bellow.
+ // It is made of a prefix (7 characters max) plus the value of a pointer that gets outputed in characters.
+ // This will be bigger in the case of 64 bit.
+ static const int MAX_EVENT_NAME_LENGTH = 50;
+ wchar_t eventBreakName[MAX_EVENT_NAME_LENGTH];
+ wchar_t eventWaitName[MAX_EVENT_NAME_LENGTH];
+ wchar_t eventTerminateName[MAX_EVENT_NAME_LENGTH];
+ wchar_t eventKillName[MAX_EVENT_NAME_LENGTH];
+ wchar_t eventCtrlcName[MAX_EVENT_NAME_LENGTH];
#ifdef DEBUG_MONITOR
- wchar_t buffer[1000];
+ wchar_t buffer[4000];
#endif
int nLocalCounter;
wchar_t inPipeName[PIPE_NAME_LENGTH];
diff --git a/core/org.eclipse.cdt.core.win32/library/build64.bat b/core/org.eclipse.cdt.core.win32/library/build64.bat
new file mode 100644
index 0000000000..8ec3065131
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32/library/build64.bat
@@ -0,0 +1,12 @@
+@rem ***************************************************************************
+@rem Copyright (c) 2011 Marc-Andre Laperle and others.
+@rem All rights reserved. This program and the accompanying materials
+@rem are made available under the terms of the Eclipse Public License v1.0
+@rem which accompanies this distribution, and is available at
+@rem http://www.eclipse.org/legal/epl-v10.html
+@rem
+@rem Contributors:
+@rem Marc-Andre Laperle - initial API and implementation
+@rem ***************************************************************************
+
+nmake /f Makefile_x86_64.mk /NOLOGO install clean \ No newline at end of file
diff --git a/core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.cpp b/core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.cpp
index c49f4374b4..c6a626c26d 100644
--- a/core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.cpp
+++ b/core/org.eclipse.cdt.core.win32/library/listtasks/listtasks.cpp
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2002 - 2005 QNX Software Systems and others.
+ * Copyright (c) 2002, 2011 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
@@ -108,9 +108,17 @@ BOOL WINAPI EnumProcs( PROCENUMPROC lpProc, LPARAM lParam )
if( hInstLib == NULL )
return FALSE ;
- hInstLib2 = LoadLibraryA( "VDMDBG.DLL" ) ;
- if( hInstLib2 == NULL )
- return FALSE ;
+ SYSTEM_INFO systemInfo;
+
+ GetSystemInfo(&systemInfo);
+ bool isWin64 = systemInfo.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64;
+
+ if(!isWin64)
+ {
+ hInstLib2 = LoadLibraryA( "VDMDBG.DLL" ) ;
+ if( hInstLib2 == NULL )
+ return FALSE ;
+ }
// Get procedure addresses.
lpfEnumProcesses = (BOOL(WINAPI *)(DWORD *,DWORD,DWORD*))
@@ -121,15 +129,21 @@ BOOL WINAPI EnumProcs( PROCENUMPROC lpProc, LPARAM lParam )
lpfGetModuleFileNameEx =(DWORD (WINAPI *)(HANDLE, HMODULE,
LPTSTR, DWORD )) GetProcAddress( hInstLib,
"GetModuleFileNameExA" ) ;
- lpfVDMEnumTaskWOWEx =(INT(WINAPI *)( DWORD, TASKENUMPROCEX,
- LPARAM))GetProcAddress( hInstLib2, "VDMEnumTaskWOWEx" );
+ if(!isWin64)
+ {
+ lpfVDMEnumTaskWOWEx =(INT(WINAPI *)( DWORD, TASKENUMPROCEX,
+ LPARAM))GetProcAddress( hInstLib2, "VDMEnumTaskWOWEx" );
+ }
if( lpfEnumProcesses == NULL ||
lpfEnumProcessModules == NULL ||
lpfGetModuleFileNameEx == NULL ||
- lpfVDMEnumTaskWOWEx == NULL)
+ (!isWin64 && lpfVDMEnumTaskWOWEx == NULL))
{
FreeLibrary( hInstLib ) ;
- FreeLibrary( hInstLib2 ) ;
+ if(!isWin64)
+ {
+ FreeLibrary( hInstLib2 ) ;
+ }
return FALSE ;
}
@@ -158,14 +172,20 @@ BOOL WINAPI EnumProcs( PROCENUMPROC lpProc, LPARAM lParam )
if( lpdwPIDs == NULL )
{
FreeLibrary( hInstLib ) ;
- FreeLibrary( hInstLib2 ) ;
+ if(!isWin64)
+ {
+ FreeLibrary( hInstLib2 ) ;
+ }
return FALSE ;
}
if( !lpfEnumProcesses( lpdwPIDs, dwSize2, &dwSize ) )
{
HeapFree( GetProcessHeap(), 0, lpdwPIDs ) ;
FreeLibrary( hInstLib ) ;
- FreeLibrary( hInstLib2 ) ;
+ if(!isWin64)
+ {
+ FreeLibrary( hInstLib2 ) ;
+ }
return FALSE ;
}
}while( dwSize == dwSize2 ) ;
@@ -206,7 +226,7 @@ BOOL WINAPI EnumProcs( PROCENUMPROC lpProc, LPARAM lParam )
break ;
// Did we just bump into an NTVDM?
- if( _stricmp( szFileName+(strlen(szFileName)-9),
+ if(!isWin64 && _stricmp( szFileName+(strlen(szFileName)-9),
"NTVDM.EXE")==0)
{
// Fill in some info for the 16-bit enum proc.
@@ -226,7 +246,10 @@ BOOL WINAPI EnumProcs( PROCENUMPROC lpProc, LPARAM lParam )
}
HeapFree( GetProcessHeap(), 0, lpdwPIDs ) ;
- FreeLibrary( hInstLib2 ) ;
+ if(!isWin64)
+ {
+ FreeLibrary( hInstLib2 ) ;
+ }
// If Windows 95:
}else if( osver.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS )
diff --git a/core/org.eclipse.cdt.core.win32/library/raise.c b/core/org.eclipse.cdt.core.win32/library/raise.c
index 7acbc5d520..03e0271ae7 100644
--- a/core/org.eclipse.cdt.core.win32/library/raise.c
+++ b/core/org.eclipse.cdt.core.win32/library/raise.c
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2002, 2007 QNX Software Systems and others.
+ * Copyright (c) 2002, 2011 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
@@ -57,7 +57,7 @@ find_child_console (HWND hwnd, LPARAM arg)
// Need to declare this Win32 prototype ourselves. _WIN32_WINNT is getting
// defined to a Windows NT value, thus we don't get this. Can't assume
// we're running on XP, anyway (or can we by now?)
-#if (_WIN32_WINNT < 0x0501)
+#if (_WIN32_WINNT < 0x0501) || defined(_MSC_VER)
typedef BOOL (WINAPI *DebugBreakProcessFunc)(HANDLE);
#endif
diff --git a/core/org.eclipse.cdt.core.win32/library/setenv64.bat b/core/org.eclipse.cdt.core.win32/library/setenv64.bat
new file mode 100644
index 0000000000..dfe68b7394
--- /dev/null
+++ b/core/org.eclipse.cdt.core.win32/library/setenv64.bat
@@ -0,0 +1 @@
+"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\setenv.cmd" /x64 /2003 /Release \ No newline at end of file
diff --git a/core/org.eclipse.cdt.core.win32/library/starter/Makefile b/core/org.eclipse.cdt.core.win32/library/starter/Makefile
index 363da73242..54c92c5b82 100644
--- a/core/org.eclipse.cdt.core.win32/library/starter/Makefile
+++ b/core/org.eclipse.cdt.core.win32/library/starter/Makefile
@@ -10,7 +10,7 @@ LIBS = -lpsapi
CXX = g++
CXXFLAGS = -DUNICODE
-INSTALL_DIR = ../../os/$(OS)/$(ARCH)
+INSTALL_DIR = ../../../org.eclipse.cdt.core.$(OS).$(ARCH)/os/$(OS)/$(ARCH)
all: $(TARGET)
diff --git a/core/org.eclipse.cdt.core.win32/library/winreg/Makefile b/core/org.eclipse.cdt.core.win32/library/winreg/Makefile
index 3db60b0824..8335a7dc55 100644
--- a/core/org.eclipse.cdt.core.win32/library/winreg/Makefile
+++ b/core/org.eclipse.cdt.core.win32/library/winreg/Makefile
@@ -15,7 +15,7 @@ JDK_OS_INCLUDES = "$(JAVA_HOME)/include/$(OS)"
CXX = g++
CXXFLAGS = -DUNICODE -I$(JDK_INCLUDES) -I$(JDK_OS_INCLUDES)
-INSTALL_DIR = ../../os/$(OS)/$(ARCH)
+INSTALL_DIR = ../../../org.eclipse.cdt.core.$(OS).$(ARCH)/os/$(OS)/$(ARCH)
all: $(TARGET)
diff --git a/core/org.eclipse.cdt.core.win32/os/win32/x86/.cvsignore b/core/org.eclipse.cdt.core.win32/os/win32/x86/.cvsignore
deleted file mode 100644
index d3879971ee..0000000000
--- a/core/org.eclipse.cdt.core.win32/os/win32/x86/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-winreg.lib
-winreg.exp
diff --git a/core/org.eclipse.cdt.core/plugin.properties b/core/org.eclipse.cdt.core/plugin.properties
index e791b82077..af08cf10ff 100644
--- a/core/org.eclipse.cdt.core/plugin.properties
+++ b/core/org.eclipse.cdt.core/plugin.properties
@@ -92,6 +92,8 @@ fragmentName.linux.x86_64 = C/C++ Development Tools Core for Linux (x86_64)
fragmentName.qnx = C/C++ Development Tools Core for QNX
fragmentName.solaris = C/C++ Development Tools Core for Solaris
fragmentName.win32 = C/C++ Development Tools Core for Windows
+fragmentName.win32.x86 = C/C++ Development Tools Core for Windows (x86)
+fragmentName.win32.x86_64 = C/C++ Development Tools Core for Windows (x86_64)
fragmentName.macosx = C/C++ Development Tools Core for MacOS X
cSourceName=C Source File
diff --git a/pom.xml b/pom.xml
index 337b6e2c5e..d95c11aa36 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,6 +46,8 @@
<module>core/org.eclipse.cdt.core.linux.x86_64</module>
<module>core/org.eclipse.cdt.core.linux.ppc64</module>
<module>core/org.eclipse.cdt.core.win32</module>
+ <module>core/org.eclipse.cdt.core.win32.x86</module>
+ <module>core/org.eclipse.cdt.core.win32.x86_64</module>
<module>core/org.eclipse.cdt.core.macosx</module>
<module>core/org.eclipse.cdt.core.aix</module>
<module>core/org.eclipse.cdt.core.solaris</module>
diff --git a/releng/org.eclipse.cdt.platform-feature/feature.xml b/releng/org.eclipse.cdt.platform-feature/feature.xml
index 13104659b4..6b5d793de0 100644
--- a/releng/org.eclipse.cdt.platform-feature/feature.xml
+++ b/releng/org.eclipse.cdt.platform-feature/feature.xml
@@ -108,7 +108,8 @@
download-size="0"
install-size="0"
version="0.0.0"
- fragment="true"/>
+ fragment="true"
+ unpack="false"/>
<plugin
id="org.eclipse.cdt.codan.core"
@@ -222,4 +223,22 @@
version="0.0.0"
unpack="false"/>
+ <plugin
+ id="org.eclipse.cdt.core.win32.x86"
+ os="win32"
+ arch="x86"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ fragment="true"/>
+
+ <plugin
+ id="org.eclipse.cdt.core.win32.x86_64"
+ os="win32"
+ arch="x86_64"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ fragment="true"/>
+
</feature>

Back to the top