diff options
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 00000000000..29368923c4c --- /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 00000000000..559772a6fa7 --- /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 00000000000..5eba4faba08 --- /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 00000000000..b43fc219a8a --- /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 Binary files differindex a31d3b20967..a31d3b20967 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 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 Binary files differindex 0608730ebe6..0608730ebe6 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 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 Binary files differindex a6f4256bc81..a6f4256bc81 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 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 Binary files differindex 451dc921d05..451dc921d05 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 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 00000000000..5f2bebb9b25 --- /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 00000000000..11d5a0fe822 --- /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 00000000000..5cb454dfc4a --- /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 00000000000..5eba4faba08 --- /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 00000000000..b43fc219a8a --- /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 Binary files differnew file mode 100644 index 00000000000..56630eacb62 --- /dev/null +++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/listtasks.exe 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 Binary files differnew file mode 100644 index 00000000000..d1e2113f7ce --- /dev/null +++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/spawner.dll 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 Binary files differnew file mode 100644 index 00000000000..a73cf033c01 --- /dev/null +++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/starter.exe 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 Binary files differnew file mode 100644 index 00000000000..a8e74e65993 --- /dev/null +++ b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/winreg.dll 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 00000000000..3877dad754c --- /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 ce112e648fa..f0023d2a42d 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 151be66774e..7b3db958ad3 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 a24c2cd6dff..76bb655800f 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 00000000000..bec950a18d2 --- /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 00000000000..fc59c9e51c4 --- /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 a78ccb27227..577114a1361 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 00000000000..8ec30651315 --- /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 c49f4374b4b..c6a626c26d7 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 7acbc5d5205..03e0271ae74 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 00000000000..dfe68b7394a --- /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 363da73242e..54c92c5b829 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 3db60b08244..8335a7dc55d 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 d3879971eec..00000000000 --- 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 e791b820771..af08cf10ff5 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 @@ -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 13104659b42..6b5d793de01 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> |