mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Set up msw builds.
This commit is contained in:
parent
1fe31a6d69
commit
3d87af69f1
11 changed files with 990 additions and 0 deletions
7
windows/org.eclipse.cdt.msw.build/.classpath
Normal file
7
windows/org.eclipse.cdt.msw.build/.classpath
Normal file
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
28
windows/org.eclipse.cdt.msw.build/.project
Normal file
28
windows/org.eclipse.cdt.msw.build/.project
Normal file
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>org.eclipse.cdt.msw.build</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<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>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -0,0 +1,12 @@
|
|||
#Mon Jul 23 15:38:07 EDT 2007
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
|
||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||
org.eclipse.jdt.core.compiler.compliance=1.5
|
||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.source=1.5
|
13
windows/org.eclipse.cdt.msw.build/META-INF/MANIFEST.MF
Normal file
13
windows/org.eclipse.cdt.msw.build/META-INF/MANIFEST.MF
Normal file
|
@ -0,0 +1,13 @@
|
|||
Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: MSVC Build Integration Plug-in
|
||||
Bundle-SymbolicName: org.eclipse.cdt.msw.build;singleton:=true
|
||||
Bundle-Version: 1.0.0.qualifier
|
||||
Bundle-Activator: org.eclipse.cdt.msw.build.Activator
|
||||
Bundle-Localization: plugin
|
||||
Require-Bundle: org.eclipse.core.runtime,
|
||||
org.eclipse.core.resources,
|
||||
org.eclipse.cdt.core,
|
||||
org.eclipse.cdt.managedbuilder.core
|
||||
Eclipse-LazyStart: true
|
||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
6
windows/org.eclipse.cdt.msw.build/build.properties
Normal file
6
windows/org.eclipse.cdt.msw.build/build.properties
Normal file
|
@ -0,0 +1,6 @@
|
|||
source.. = src/
|
||||
output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.,\
|
||||
plugin.properties,\
|
||||
plugin.xml
|
9
windows/org.eclipse.cdt.msw.build/plugin.properties
Normal file
9
windows/org.eclipse.cdt.msw.build/plugin.properties
Normal file
|
@ -0,0 +1,9 @@
|
|||
toolchain.name=Microsoft Visual C++
|
||||
|
||||
compiler.name=C/C++ Compiler (cl)
|
||||
rc.name=Resource Compiler (rc)
|
||||
linker.name=Linker (link)
|
||||
lib.name=Library Manager (lib)
|
||||
|
||||
config.debug=Debug
|
||||
config.release=Release
|
647
windows/org.eclipse.cdt.msw.build/plugin.xml
Normal file
647
windows/org.eclipse.cdt.msw.build/plugin.xml
Normal file
|
@ -0,0 +1,647 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?eclipse version="3.2"?>
|
||||
<plugin>
|
||||
<extension
|
||||
point="org.eclipse.cdt.managedbuilder.core.buildDefinitions">
|
||||
<managedBuildRevision fileVersion="4.0.0"/>
|
||||
<toolChain
|
||||
archList="all"
|
||||
configurationEnvironmentSupplier="org.eclipse.cdt.msw.build.WinEnvironmentVariableSupplier"
|
||||
id="org.eclipse.cdt.msvc.toolchain.base"
|
||||
name="%toolchain.name"
|
||||
osList="win32"
|
||||
targetTool="org.eclipse.cdt.msvc.link;org.eclipse.cdt.msvc.lib">
|
||||
<targetPlatform
|
||||
archList="all"
|
||||
binaryParser="org.eclipse.cdt.core.PE"
|
||||
id="org.eclipse.cdt.msvc.targetPlatform"
|
||||
osList="win32">
|
||||
</targetPlatform>
|
||||
<builder
|
||||
id="org.eclipse.cdt.msvc.builder"
|
||||
isVariableCaseSensitive="false"
|
||||
superClass="org.eclipse.cdt.build.core.internal.builder">
|
||||
</builder>
|
||||
<tool
|
||||
command="cl /c"
|
||||
errorParsers="org.eclipse.cdt.core.VCErrorParser"
|
||||
id="org.eclipse.cdt.msvc.cl"
|
||||
name="%compiler.name"
|
||||
natureFilter="both"
|
||||
outputFlag="/Fo">
|
||||
<supportedProperties>
|
||||
<property
|
||||
id="org.eclipse.cdt.build.core.buildType">
|
||||
<value
|
||||
id="org.eclipse.cdt.build.core.buildType.debug">
|
||||
</value>
|
||||
<value
|
||||
id="org.eclipse.cdt.build.core.buildType.release">
|
||||
</value>
|
||||
</property>
|
||||
</supportedProperties>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.cl.optionCategory.optimization"
|
||||
name="Optimization"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.optimization"
|
||||
id="org.eclipse.cdt.msvc.cl.option.optimization"
|
||||
name="Optimization"
|
||||
resourceFilter="all"
|
||||
valueType="enumerated">
|
||||
<enumeratedOptionValue
|
||||
id="org.eclipse.cdt.msvc.cl.option.optimization.default"
|
||||
isDefault="false"
|
||||
name="Default"/>
|
||||
<enumeratedOptionValue
|
||||
command="/O1"
|
||||
id="org.eclipse.cdt.msvc.cl.option.optimization.1"
|
||||
isDefault="false"
|
||||
name="Minimize Size (/O1)"/>
|
||||
<enumeratedOptionValue
|
||||
command="/O2"
|
||||
id="org.eclipse.cdt.msvc.cl.option.optimization.2"
|
||||
isDefault="true"
|
||||
name="Maximize Speed (/O2)"/>
|
||||
<enablement
|
||||
attribute="value"
|
||||
extensionAdjustment="false"
|
||||
type="CONTAINER_ATTRIBUTE"
|
||||
value="org.eclipse.cdt.msvc.cl.option.optimization.2">
|
||||
<checkBuildProperty
|
||||
property="org.eclipse.cdt.build.core.buildType"
|
||||
value="org.eclipse.cdt.build.core.buildType.release">
|
||||
</checkBuildProperty>
|
||||
</enablement>
|
||||
<enablement
|
||||
attribute="value"
|
||||
extensionAdjustment="false"
|
||||
type="CONTAINER_ATTRIBUTE"
|
||||
value="org.eclipse.cdt.msvc.cl.option.optimization.default">
|
||||
<checkBuildProperty
|
||||
property="org.eclipse.cdt.build.core.buildType"
|
||||
value="org.eclipse.cdt.build.core.buildType.debug">
|
||||
</checkBuildProperty>
|
||||
</enablement>
|
||||
</option>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.cl.optionCategory.codegen"
|
||||
name="Code Generation"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.codegen"
|
||||
id="org.eclipse.cdt.msvc.cl.option.arch"
|
||||
name="Minimum CPU Architecture"
|
||||
resourceFilter="all"
|
||||
valueType="enumerated">
|
||||
<enumeratedOptionValue
|
||||
id="org.eclipse.cdt.msvc.cl.option.arch.default"
|
||||
isDefault="true"
|
||||
name="Default"/>
|
||||
<enumeratedOptionValue
|
||||
command="/arch:SSE"
|
||||
id="org.eclipse.cdt.msvc.cl.option.arch.sse"
|
||||
isDefault="false"
|
||||
name="SSE (/arch:SSE)"/>
|
||||
<enumeratedOptionValue
|
||||
id="org.eclipse.cdt.msvc.cl.option.arch.sse2"
|
||||
isDefault="false"
|
||||
name="SSE2 (/arch:SSE2)"/>
|
||||
</option>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.codegen"
|
||||
command="/clr"
|
||||
defaultValue="false"
|
||||
id="org.eclipse.cdt.msvc.cl.option.clr"
|
||||
name="Common Language Runtime (/clr)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.codegen"
|
||||
command="/EHs"
|
||||
defaultValue="true"
|
||||
id="org.eclipse.cdt.msvc.cl.option.exceptions"
|
||||
name="Enable C++ Exception Handling (/EHs)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.codegen"
|
||||
commandFalse="/GR-"
|
||||
defaultValue="true"
|
||||
id="org.eclipse.cdt.msvc.cl.option.rtti"
|
||||
name="Enable Run-Time Type Information (/GR)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.codegen"
|
||||
id="org.eclipse.cdt.msvc.cl.option.runtime"
|
||||
name="Run-Time Library"
|
||||
resourceFilter="all"
|
||||
valueType="enumerated">
|
||||
<enumeratedOptionValue
|
||||
command="/MT"
|
||||
id="org.eclipse.cdt.msvc.cl.option.runtime.mt"
|
||||
isDefault="false"
|
||||
name="Multi-Threaded Static (/MT)"/>
|
||||
<enumeratedOptionValue
|
||||
command="/MTd"
|
||||
id="org.eclipse.cdt.msvc.cl.option.runtime.mtd"
|
||||
isDefault="false"
|
||||
name="Multi-Threaded Static Debug (/MTd)"/>
|
||||
<enumeratedOptionValue
|
||||
command="/MD"
|
||||
id="org.eclipse.cdt.msvc.cl.option.runtime.md"
|
||||
isDefault="true"
|
||||
name="Multi-Threaded DLL (/MD)"/>
|
||||
<enumeratedOptionValue
|
||||
command="/MDd"
|
||||
id="org.eclipse.cdt.msvc.cl.option.runtime.mdd"
|
||||
isDefault="false"
|
||||
name="Multi-Threaded DLL Debug (/MDd)"/>
|
||||
</option>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.cl.optionCategory.debug"
|
||||
name="Debugging"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.debug"
|
||||
id="org.eclipse.cdt.msvc.cl.option.debugFormat"
|
||||
name="Debug Information Format"
|
||||
resourceFilter="all"
|
||||
valueType="enumerated">
|
||||
<enumeratedOptionValue
|
||||
id="org.eclipse.cdt.msvc.cl.option.debugFormat.none"
|
||||
isDefault="true"
|
||||
name="None"/>
|
||||
<enumeratedOptionValue
|
||||
command="/Z7"
|
||||
id="org.eclipse.cdt.msvc.cl.option.debugFormat.c7"
|
||||
isDefault="false"
|
||||
name="C7 Compatible (/Z7)"/>
|
||||
<enumeratedOptionValue
|
||||
command="/Zi"
|
||||
id="org.eclipse.cdt.msvc.cl.option.debugFormat.complete"
|
||||
isDefault="false"
|
||||
name="Complete (/Zi)"/>
|
||||
<enablement
|
||||
attribute="value"
|
||||
extensionAdjustment="false"
|
||||
type="CONTAINER_ATTRIBUTE"
|
||||
value="org.eclipse.cdt.msvc.cl.option.debugFormat.none">
|
||||
<checkBuildProperty
|
||||
property="org.eclipse.cdt.build.core.buildType"
|
||||
value="org.eclipse.cdt.build.core.buildType.release">
|
||||
</checkBuildProperty>
|
||||
</enablement>
|
||||
<enablement
|
||||
attribute="value"
|
||||
extensionAdjustment="false"
|
||||
type="CONTAINER_ATTRIBUTE"
|
||||
value="org.eclipse.cdt.msvc.cl.option.debugFormat.complete">
|
||||
<checkBuildProperty
|
||||
property="org.eclipse.cdt.build.core.buildType"
|
||||
value="org.eclipse.cdt.build.core.buildType.debug">
|
||||
</checkBuildProperty>
|
||||
</enablement>
|
||||
</option>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.cl.optionCategory.preprocessor"
|
||||
name="Preprocessor"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.preprocessor"
|
||||
command="/D"
|
||||
id="org.eclipse.cdt.msvc.cl.option.macros"
|
||||
name="Defines (/D)"
|
||||
resourceFilter="all"
|
||||
valueType="definedSymbols"/>
|
||||
<option
|
||||
browseType="directory"
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.preprocessor"
|
||||
command="/I"
|
||||
id="org.eclipse.cdt.msvc.cl.option.includes"
|
||||
name="Include Path (/I)"
|
||||
resourceFilter="all"
|
||||
valueType="includePath"/>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.cl.optionCategory.language"
|
||||
name="Language"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.language"
|
||||
command="/openmp"
|
||||
defaultValue="false"
|
||||
id="org.eclipse.cdt.msvc.cl.option.openmp"
|
||||
name="Enable OpenMP (/openmp)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.language"
|
||||
commandFalse="/Za"
|
||||
defaultValue="true"
|
||||
id="org.eclipse.cdt.msvc.cl.option.langExtensions"
|
||||
name="Enable Language Extensions (/Ze,/Za)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.cl.optionCategory.miscellaneous"
|
||||
name="Miscellaneous"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.miscellaneous"
|
||||
command="/nologo"
|
||||
defaultValue="true"
|
||||
id="org.eclipse.cdt.msvc.cl.option.nologo"
|
||||
name="Suppress Banner (/nologo)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.cl.optionCategory.miscellaneous"
|
||||
id="org.eclipse.cdt.msvc.cl.option.others"
|
||||
name="Other Options"
|
||||
resourceFilter="all"
|
||||
valueType="stringList"/>
|
||||
<inputType
|
||||
dependencyContentType="org.eclipse.cdt.core.cxxHeader"
|
||||
id="org.eclipse.cdt.msvc.cl.inputType"
|
||||
scannerConfigDiscoveryProfileId="org.eclipse.cdt.msvc.build.clScannerInfo"
|
||||
sourceContentType="org.eclipse.cdt.core.cxxSource">
|
||||
</inputType>
|
||||
<outputType
|
||||
id="org.eclipse.cdt.msvc.cl.outputType"
|
||||
outputs="obj">
|
||||
</outputType>
|
||||
</tool>
|
||||
<tool
|
||||
command="rc"
|
||||
errorParsers="org.eclipse.cdt.core.VCErrorParser"
|
||||
id="org.eclipse.cdt.msvc.rc"
|
||||
name="%rc.name"
|
||||
natureFilter="both"
|
||||
outputFlag="/Fo"
|
||||
>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.rc.optionCategory.preprocessor"
|
||||
name="Preprocessor"/>
|
||||
<option
|
||||
browseType="directory"
|
||||
category="org.eclipse.cdt.msvc.rc.optionCategory.preprocessor"
|
||||
command="/I"
|
||||
id="org.eclipse.cdt.msvc.rc.option.includes"
|
||||
name="Include Path (/I)"
|
||||
resourceFilter="all"
|
||||
valueType="includePath"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.rc.optionCategory.preprocessor"
|
||||
command="/D"
|
||||
id="org.eclipse.cdt.msvc.rc.option.defines"
|
||||
name="Defines (/D)"
|
||||
resourceFilter="all"
|
||||
valueType="definedSymbols"/>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.rc.optionCategory.misc"
|
||||
name="Miscellaneous"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.rc.optionCategory.misc"
|
||||
id="org.eclipse.cdt.msvc.rc.option.others"
|
||||
name="Other Options"
|
||||
resourceFilter="all"
|
||||
valueType="stringList"/>
|
||||
<inputType
|
||||
id="org.eclipse.cdt.msvc.rc.inputType"
|
||||
sources="rc">
|
||||
</inputType>
|
||||
<outputType
|
||||
id="org.eclipse.cdt.msvc.rc.outputType"
|
||||
outputs="res">
|
||||
</outputType>
|
||||
</tool>
|
||||
<tool
|
||||
command="link"
|
||||
errorParsers="org.eclipse.cdt.core.VCErrorParser"
|
||||
id="org.eclipse.cdt.msvc.link"
|
||||
name="%linker.name"
|
||||
natureFilter="both"
|
||||
outputFlag="/OUT:"
|
||||
>
|
||||
<supportedProperties>
|
||||
<property
|
||||
id="org.eclipse.cdt.build.core.buildArtefactType">
|
||||
<value
|
||||
id="org.eclipse.cdt.build.core.buildArtefactType.exe"></value>
|
||||
<value
|
||||
id="org.eclipse.cdt.build.core.buildArtefactType.sharedLib">
|
||||
</value>
|
||||
</property>
|
||||
</supportedProperties>
|
||||
<option
|
||||
command="/DLL"
|
||||
defaultValue="false"
|
||||
id="org.eclipse.cdt.msvc.link.option.dll"
|
||||
name="Build a DLL"
|
||||
resourceFilter="all"
|
||||
valueType="boolean">
|
||||
<enablement
|
||||
attribute="defaultValue"
|
||||
extensionAdjustment="false"
|
||||
type="CONTAINER_ATTRIBUTE"
|
||||
value="true">
|
||||
<checkBuildProperty
|
||||
property="org.eclipse.cdt.build.core.buildArtefactType"
|
||||
value="org.eclipse.cdt.build.core.buildArtefactType.sharedLib">
|
||||
</checkBuildProperty>
|
||||
</enablement>
|
||||
</option>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.link.optionCategory.general"
|
||||
name="General"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.link.optionCategory.general"
|
||||
command="/debug"
|
||||
defaultValue="false"
|
||||
id="org.eclipse.cdt.msvc.link.option.debug"
|
||||
name="Generate Debug Info (/debug)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.link.optionCategory.general"
|
||||
command="/nologo"
|
||||
defaultValue="true"
|
||||
id="org.eclipse.cdt.msvc.link.option.nologo"
|
||||
name="Suppress Banner (/nologo)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.link.optionCategory.general"
|
||||
id="org.eclipse.cdt.msvc.link.option.others"
|
||||
name="Other Options"
|
||||
resourceFilter="all"
|
||||
valueType="stringList"/>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.link.optionCategory.libraries"
|
||||
name="Libraries"/>
|
||||
<option
|
||||
browseType="directory"
|
||||
category="org.eclipse.cdt.msvc.link.optionCategory.libraries"
|
||||
command="/libpath:"
|
||||
id="org.eclipse.cdt.msvc.link.option.libpath"
|
||||
name="Additional Libpath (/libpath)"
|
||||
resourceFilter="all"
|
||||
valueType="stringList"/>
|
||||
<option
|
||||
browseType="file"
|
||||
category="org.eclipse.cdt.msvc.link.optionCategory.libraries"
|
||||
id="org.eclipse.cdt.msvc.link.option.libraries"
|
||||
name="Libraries"
|
||||
resourceFilter="all"
|
||||
valueType="libs"/>
|
||||
<inputType
|
||||
id="org.eclipse.cdt.msvc.link.inputType"
|
||||
multipleOfType="true"
|
||||
sources="res,obj">
|
||||
</inputType>
|
||||
<outputType
|
||||
id="org.eclipse.cdt.msvc.link.outputType"
|
||||
outputs="exe">
|
||||
</outputType>
|
||||
<outputType
|
||||
id="org.eclipse.cdt.msvc.link.outputType.dll"
|
||||
outputs="dll">
|
||||
</outputType>
|
||||
</tool>
|
||||
<tool
|
||||
command="lib"
|
||||
id="org.eclipse.cdt.msvc.lib"
|
||||
name="%lib.name"
|
||||
natureFilter="both"
|
||||
outputFlag="/OUT:"
|
||||
>
|
||||
<supportedProperties>
|
||||
<property
|
||||
id="org.eclipse.cdt.build.core.buildArtefactType">
|
||||
<value
|
||||
id="org.eclipse.cdt.build.core.buildArtefactType.staticLib">
|
||||
</value>
|
||||
</property>
|
||||
</supportedProperties>
|
||||
<optionCategory
|
||||
id="org.eclipse.cdt.msvc.lib.optionCategory.general"
|
||||
name="General"/>
|
||||
<option
|
||||
category="org.eclipse.cdt.msvc.lib.optionCategory.general"
|
||||
command="/nologo"
|
||||
defaultValue="true"
|
||||
id="org.eclipse.cdt.msvc.lib.option.nologo"
|
||||
name="Suppress Banner (/nologo)"
|
||||
resourceFilter="all"
|
||||
valueType="boolean"/>
|
||||
<inputType
|
||||
id="org.eclipse.cdt.msvc.lib.inputType"
|
||||
sources="obj,res">
|
||||
</inputType>
|
||||
<outputType
|
||||
id="org.eclipse.cdt.msvc.lib.outputType"
|
||||
outputs="lib">
|
||||
</outputType>
|
||||
</tool>
|
||||
</toolChain>
|
||||
<configuration
|
||||
artifactExtension="exe"
|
||||
id="org.eclipse.cdt.msvc.configuration">
|
||||
<enablement
|
||||
attribute="artifactExtension"
|
||||
extensionAdjustment="false"
|
||||
type="CONTAINER_ATTRIBUTE"
|
||||
value="dll">
|
||||
<checkBuildProperty
|
||||
property="org.eclipse.cdt.build.core.buildArtefactType"
|
||||
value="org.eclipse.cdt.build.core.buildArtefactType.sharedLib"></checkBuildProperty>
|
||||
</enablement>
|
||||
<enablement
|
||||
attribute="artifactExtension"
|
||||
extensionAdjustment="false"
|
||||
type="CONTAINER_ATTRIBUTE"
|
||||
value="lib">
|
||||
<checkBuildProperty
|
||||
property="org.eclipse.cdt.build.core.buildArtefactType"
|
||||
value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"></checkBuildProperty>
|
||||
</enablement>
|
||||
</configuration>
|
||||
<projectType
|
||||
buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe"
|
||||
id="org.eclipse.cdt.msvc.projectType.exe"
|
||||
projectEnvironmentSupplier="org.eclipse.cdt.msw.build.WinEnvironmentVariableSupplier">
|
||||
<configuration
|
||||
buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug"
|
||||
id="org.eclipse.cdt.msvc.exe.debug"
|
||||
name="%config.debug"
|
||||
parent="org.eclipse.cdt.msvc.configuration">
|
||||
<toolChain
|
||||
id="org.eclipse.cdt.msvc.toolchain.exe.debug"
|
||||
superClass="org.eclipse.cdt.msvc.toolchain.base">
|
||||
<targetPlatform
|
||||
id="org.eclipse.cdt.msvc.targetPlatform.exe.debug"
|
||||
superClass="org.eclipse.cdt.msvc.targetPlatform">
|
||||
</targetPlatform>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.cl.exe.debug"
|
||||
superClass="org.eclipse.cdt.msvc.cl">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.rc.exe.debug"
|
||||
superClass="org.eclipse.cdt.msvc.rc">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.link.exe.debug"
|
||||
superClass="org.eclipse.cdt.msvc.link">
|
||||
</tool>
|
||||
</toolChain>
|
||||
</configuration>
|
||||
<configuration
|
||||
buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release"
|
||||
id="org.eclipse.cdt.msvc.exe.release"
|
||||
name="%config.release"
|
||||
parent="org.eclipse.cdt.msvc.configuration">
|
||||
<toolChain
|
||||
id="org.eclipse.cdt.msvc.toolchain.exe.release"
|
||||
superClass="org.eclipse.cdt.msvc.toolchain.base">
|
||||
<targetPlatform
|
||||
id="org.eclipse.cdt.msvc.targetPlatform.exe.release"
|
||||
superClass="org.eclipse.cdt.msvc.targetPlatform">
|
||||
</targetPlatform>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.cl.exe.release"
|
||||
superClass="org.eclipse.cdt.msvc.cl">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.rc.exe.release"
|
||||
superClass="org.eclipse.cdt.msvc.rc">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.link.exe.release"
|
||||
superClass="org.eclipse.cdt.msvc.link">
|
||||
</tool>
|
||||
</toolChain>
|
||||
</configuration>
|
||||
</projectType>
|
||||
<projectType
|
||||
buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib"
|
||||
id="org.eclipse.cdt.msvc.projectType.dll"
|
||||
projectEnvironmentSupplier="org.eclipse.cdt.msw.build.WinEnvironmentVariableSupplier">
|
||||
<configuration
|
||||
buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug"
|
||||
id="org.eclipse.cdt.msvc.dll.debug"
|
||||
name="%config.debug"
|
||||
parent="org.eclipse.cdt.msvc.configuration">
|
||||
<toolChain
|
||||
id="org.eclipse.cdt.msvc.toolchain.dll.debug"
|
||||
superClass="org.eclipse.cdt.msvc.toolchain.base">
|
||||
<targetPlatform
|
||||
id="org.eclipse.cdt.msvc.targetPlatform.dll.debug"
|
||||
superClass="org.eclipse.cdt.msvc.targetPlatform">
|
||||
</targetPlatform>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.cl.dll.debug"
|
||||
superClass="org.eclipse.cdt.msvc.cl">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.rc.dll.debug"
|
||||
superClass="org.eclipse.cdt.msvc.rc">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.link.dll.debug"
|
||||
superClass="org.eclipse.cdt.msvc.link">
|
||||
</tool>
|
||||
</toolChain>
|
||||
</configuration>
|
||||
<configuration
|
||||
buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release"
|
||||
id="org.eclipse.cdt.msvc.dll.release"
|
||||
name="%config.release"
|
||||
parent="org.eclipse.cdt.msvc.configuration">
|
||||
<toolChain
|
||||
id="org.eclipse.cdt.msvc.toolchain.dll.release"
|
||||
superClass="org.eclipse.cdt.msvc.toolchain.base">
|
||||
<targetPlatform
|
||||
id="org.eclipse.cdt.msvc.targetPlatform.dll.release"
|
||||
superClass="org.eclipse.cdt.msvc.targetPlatform">
|
||||
</targetPlatform>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.cl.dll.release"
|
||||
superClass="org.eclipse.cdt.msvc.cl">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.rc.dll.release"
|
||||
superClass="org.eclipse.cdt.msvc.rc">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.link.dll.release"
|
||||
superClass="org.eclipse.cdt.msvc.link">
|
||||
</tool>
|
||||
</toolChain>
|
||||
</configuration>
|
||||
</projectType>
|
||||
<projectType
|
||||
buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib"
|
||||
id="org.eclipse.cdt.msvc.projectType.lib"
|
||||
projectEnvironmentSupplier="org.eclipse.cdt.msw.build.WinEnvironmentVariableSupplier">
|
||||
<configuration
|
||||
buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug"
|
||||
id="org.eclipse.cdt.msvc.lib.debug"
|
||||
name="%config.debug"
|
||||
parent="org.eclipse.cdt.msvc.configuration">
|
||||
<toolChain
|
||||
id="org.eclipse.cdt.msvc.toolchain.lib.debug"
|
||||
superClass="org.eclipse.cdt.msvc.toolchain.base">
|
||||
<targetPlatform
|
||||
id="org.eclipse.cdt.msvc.targetPlatform.lib.debug"
|
||||
superClass="org.eclipse.cdt.msvc.targetPlatform">
|
||||
</targetPlatform>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.cl.lib.debug"
|
||||
superClass="org.eclipse.cdt.msvc.cl">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.rc.lib.debug"
|
||||
superClass="org.eclipse.cdt.msvc.rc">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.lib.lib.debug"
|
||||
superClass="org.eclipse.cdt.msvc.lib">
|
||||
</tool>
|
||||
</toolChain>
|
||||
</configuration>
|
||||
<configuration
|
||||
buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release"
|
||||
id="org.eclipse.cdt.msvc.lib.release"
|
||||
name="%config.release"
|
||||
parent="org.eclipse.cdt.msvc.configuration">
|
||||
<toolChain
|
||||
id="org.eclipse.cdt.msvc.toolchain.lib.release"
|
||||
superClass="org.eclipse.cdt.msvc.toolchain.base">
|
||||
<targetPlatform
|
||||
id="org.eclipse.cdt.msvc.targetPlatform.lib.release"
|
||||
superClass="org.eclipse.cdt.msvc.targetPlatform">
|
||||
</targetPlatform>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.cl.lib.release"
|
||||
superClass="org.eclipse.cdt.msvc.cl">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.rc.lib.release"
|
||||
superClass="org.eclipse.cdt.msvc.rc">
|
||||
</tool>
|
||||
<tool
|
||||
id="org.eclipse.cdt.msvc.lib.lib.release"
|
||||
superClass="org.eclipse.cdt.msvc.lib">
|
||||
</tool>
|
||||
</toolChain>
|
||||
</configuration>
|
||||
</projectType>
|
||||
</extension>
|
||||
<extension
|
||||
id="clScannerInfo"
|
||||
name="Windows SDK Scanner Info Provider"
|
||||
point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
|
||||
<scannerInfoCollector
|
||||
class="org.eclipse.cdt.msw.build.WinScannerInfoCollector"
|
||||
scope="project">
|
||||
</scannerInfoCollector>
|
||||
</extension>
|
||||
|
||||
</plugin>
|
|
@ -0,0 +1,50 @@
|
|||
package org.eclipse.cdt.msw.build;
|
||||
|
||||
import org.eclipse.core.runtime.Plugin;
|
||||
import org.osgi.framework.BundleContext;
|
||||
|
||||
/**
|
||||
* The activator class controls the plug-in life cycle
|
||||
*/
|
||||
public class Activator extends Plugin {
|
||||
|
||||
// The plug-in ID
|
||||
public static final String PLUGIN_ID = "net.sf.wascana.msvc.build";
|
||||
|
||||
// The shared instance
|
||||
private static Activator plugin;
|
||||
|
||||
/**
|
||||
* The constructor
|
||||
*/
|
||||
public Activator() {
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.eclipse.core.runtime.Plugins#start(org.osgi.framework.BundleContext)
|
||||
*/
|
||||
public void start(BundleContext context) throws Exception {
|
||||
super.start(context);
|
||||
plugin = this;
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
|
||||
*/
|
||||
public void stop(BundleContext context) throws Exception {
|
||||
plugin = null;
|
||||
super.stop(context);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the shared instance
|
||||
*
|
||||
* @return the shared instance
|
||||
*/
|
||||
public static Activator getDefault() {
|
||||
return plugin;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
package org.eclipse.cdt.msw.build;
|
||||
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.eclipse.cdt.make.core.scannerconfig.IDiscoveredPathManager.IDiscoveredPathInfo;
|
||||
import org.eclipse.cdt.make.core.scannerconfig.IDiscoveredPathManager.IDiscoveredScannerInfoSerializable;
|
||||
import org.eclipse.cdt.utils.WindowsRegistry;
|
||||
import org.eclipse.core.resources.IProject;
|
||||
import org.eclipse.core.runtime.IPath;
|
||||
import org.eclipse.core.runtime.Path;
|
||||
|
||||
/**
|
||||
* @author Doug Schaefer
|
||||
*
|
||||
*/
|
||||
public class WinDiscoveredPathInfo implements IDiscoveredPathInfo {
|
||||
|
||||
private final IPath[] paths;
|
||||
private final Map<String, String> symbols = new HashMap<String, String>();
|
||||
|
||||
public WinDiscoveredPathInfo() {
|
||||
WindowsRegistry reg = WindowsRegistry.getRegistry();
|
||||
|
||||
// Include paths
|
||||
String sdkDir = reg.getLocalMachineValue("SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v6.0", "InstallationFolder");
|
||||
if (sdkDir == null)
|
||||
sdkDir = reg.getLocalMachineValue("SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v6.1", "InstallationFolder");
|
||||
|
||||
paths = new IPath[] {
|
||||
new Path(sdkDir.concat("\\VC\\Include")),
|
||||
new Path(sdkDir.concat("\\VC\\Include\\Sys")),
|
||||
new Path(sdkDir.concat("\\Include")),
|
||||
new Path(sdkDir.concat("\\Include\\gl"))
|
||||
};
|
||||
|
||||
symbols.put("_M_IX86", "600");
|
||||
symbols.put("_WIN32", "1");
|
||||
symbols.put("_MSC_VER", "1400");
|
||||
}
|
||||
|
||||
public IPath[] getIncludePaths() {
|
||||
return paths;
|
||||
}
|
||||
|
||||
public IProject getProject() {
|
||||
return null;
|
||||
}
|
||||
|
||||
public IDiscoveredScannerInfoSerializable getSerializable() {
|
||||
return null;
|
||||
}
|
||||
|
||||
public Map<String, String> getSymbols() {
|
||||
return symbols;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,118 @@
|
|||
package org.eclipse.cdt.msw.build;
|
||||
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
||||
import org.eclipse.cdt.managedbuilder.core.IManagedProject;
|
||||
import org.eclipse.cdt.managedbuilder.envvar.IBuildEnvironmentVariable;
|
||||
import org.eclipse.cdt.managedbuilder.envvar.IConfigurationEnvironmentVariableSupplier;
|
||||
import org.eclipse.cdt.managedbuilder.envvar.IEnvironmentVariableProvider;
|
||||
import org.eclipse.cdt.managedbuilder.envvar.IProjectEnvironmentVariableSupplier;
|
||||
import org.eclipse.cdt.utils.WindowsRegistry;
|
||||
|
||||
/**
|
||||
* @author DSchaefer
|
||||
*
|
||||
*/
|
||||
public class WinEnvironmentVariableSupplier
|
||||
implements IConfigurationEnvironmentVariableSupplier, IProjectEnvironmentVariableSupplier {
|
||||
|
||||
private Map<String, IBuildEnvironmentVariable> envvars;
|
||||
|
||||
private static class WindowsBuildEnvironmentVariable implements IBuildEnvironmentVariable {
|
||||
|
||||
private final String name;
|
||||
private final String value;
|
||||
private final int operation;
|
||||
|
||||
public WindowsBuildEnvironmentVariable(String name, String value, int operation) {
|
||||
this.name = name;
|
||||
this.value = value;
|
||||
this.operation = operation;
|
||||
}
|
||||
|
||||
public String getDelimiter() {
|
||||
return ";";
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public int getOperation() {
|
||||
return operation;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public IBuildEnvironmentVariable getVariable(String variableName,
|
||||
IManagedProject project, IEnvironmentVariableProvider provider) {
|
||||
if (envvars == null)
|
||||
initvars();
|
||||
return envvars.get(variableName);
|
||||
}
|
||||
|
||||
public IBuildEnvironmentVariable getVariable(String variableName,
|
||||
IConfiguration configuration, IEnvironmentVariableProvider provider) {
|
||||
if (envvars == null)
|
||||
initvars();
|
||||
return envvars.get(variableName);
|
||||
}
|
||||
|
||||
public IBuildEnvironmentVariable[] getVariables(IManagedProject project,
|
||||
IEnvironmentVariableProvider provider) {
|
||||
if (envvars == null)
|
||||
initvars();
|
||||
return envvars.values().toArray(new IBuildEnvironmentVariable[envvars.size()]);
|
||||
}
|
||||
|
||||
public IBuildEnvironmentVariable[] getVariables(
|
||||
IConfiguration configuration, IEnvironmentVariableProvider provider) {
|
||||
if (envvars == null)
|
||||
initvars();
|
||||
return envvars.values().toArray(new IBuildEnvironmentVariable[envvars.size()]);
|
||||
}
|
||||
|
||||
private void addvar(IBuildEnvironmentVariable var) {
|
||||
envvars.put(var.getName(), var);
|
||||
}
|
||||
|
||||
private void initvars() {
|
||||
envvars = new HashMap<String, IBuildEnvironmentVariable>();
|
||||
|
||||
StringBuffer buff;
|
||||
WindowsRegistry reg = WindowsRegistry.getRegistry();
|
||||
|
||||
// The SDK Location
|
||||
String sdkDir = reg.getLocalMachineValue("SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v6.0", "InstallationFolder");
|
||||
if (sdkDir == null)
|
||||
sdkDir = reg.getLocalMachineValue("SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v6.1", "InstallationFolder");
|
||||
|
||||
// INCLUDE
|
||||
buff = new StringBuffer();
|
||||
buff.append(sdkDir).append("VC\\Include;");
|
||||
buff.append(sdkDir).append("VC\\Include\\Sys;");
|
||||
buff.append(sdkDir).append("Include;");
|
||||
buff.append(sdkDir).append("Include\\gl;");
|
||||
addvar(new WindowsBuildEnvironmentVariable("INCLUDE", buff.toString(), IBuildEnvironmentVariable.ENVVAR_PREPEND));
|
||||
|
||||
// LIB
|
||||
buff = new StringBuffer();
|
||||
buff.append(sdkDir).append("VC\\Lib;");
|
||||
buff.append(sdkDir).append("Lib;");
|
||||
addvar(new WindowsBuildEnvironmentVariable("LIB", buff.toString(), IBuildEnvironmentVariable.ENVVAR_PREPEND));
|
||||
|
||||
// PATH
|
||||
buff = new StringBuffer();
|
||||
buff.append(sdkDir).append("VC\\Bin;");
|
||||
buff.append(sdkDir).append("Bin;");
|
||||
addvar(new WindowsBuildEnvironmentVariable("PATH", buff.toString(), IBuildEnvironmentVariable.ENVVAR_PREPEND));
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
package org.eclipse.cdt.msw.build;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.eclipse.cdt.make.core.scannerconfig.IScannerInfoCollector3;
|
||||
import org.eclipse.cdt.make.core.scannerconfig.InfoContext;
|
||||
import org.eclipse.cdt.make.core.scannerconfig.ScannerInfoTypes;
|
||||
import org.eclipse.cdt.make.core.scannerconfig.IDiscoveredPathManager.IDiscoveredPathInfo;
|
||||
import org.eclipse.core.resources.IProject;
|
||||
import org.eclipse.core.runtime.CoreException;
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
|
||||
/**
|
||||
* @author Doug Schaefer
|
||||
*
|
||||
*/
|
||||
public class WinScannerInfoCollector implements IScannerInfoCollector3 {
|
||||
|
||||
public void contributeToScannerConfig(Object resource, Map scannerInfo) {
|
||||
}
|
||||
|
||||
public List getCollectedScannerInfo(Object resource, ScannerInfoTypes type) {
|
||||
return null;
|
||||
}
|
||||
|
||||
public IDiscoveredPathInfo createPathInfoObject() {
|
||||
return new WinDiscoveredPathInfo();
|
||||
}
|
||||
|
||||
public void setInfoContext(InfoContext context) {
|
||||
}
|
||||
|
||||
public void setProject(IProject project) {
|
||||
}
|
||||
|
||||
public void updateScannerConfiguration(IProgressMonitor monitor) throws CoreException {
|
||||
}
|
||||
|
||||
}
|
Loading…
Add table
Reference in a new issue