summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Gladman <brg@gladman.plus.com>2010-03-10 11:33:55 +0000
committerBrian Gladman <brg@gladman.plus.com>2010-03-10 11:33:55 +0000
commit293d7392b43b7667618f65566a092d162fdc71bd (patch)
treecb9e31108b8a78841d40dd00a1965aaec0e82571
parentd7c5571bcb8c403ffa30cb096094aa5fb3cccd60 (diff)
downloadyasm-293d7392b43b7667618f65566a092d162fdc71bd.tar.gz
Improve VSYASM integration into Visual Studio 2010
svn path=/trunk/yasm/; revision=2307
-rw-r--r--Mkfiles/vc10/vsyasm.props4
-rw-r--r--Mkfiles/vc10/vsyasm.targets26
-rw-r--r--Mkfiles/vc10/vsyasm.xml103
3 files changed, 107 insertions, 26 deletions
diff --git a/Mkfiles/vc10/vsyasm.props b/Mkfiles/vc10/vsyasm.props
index 24d8972a..c7a97495 100644
--- a/Mkfiles/vc10/vsyasm.props
+++ b/Mkfiles/vc10/vsyasm.props
@@ -12,11 +12,11 @@
<ItemDefinitionGroup>
<YASM>
<Debug>False</Debug>
- <ObjectFileName>$(IntDir)</ObjectFileName>
+ <ObjectFile>$(IntDir)</ObjectFile>
<PreProc>0</PreProc>
<Parser>0</Parser>
<CommandLineTemplate>vsyasm -Xvc -f $(Platform) [AllOptions] [AdditionalOptions] [Inputs]</CommandLineTemplate>
- <Outputs>%(ObjectFileName)</Outputs>
+ <Outputs>%(ObjectFile)</Outputs>
<ExecutionDescription>Assembling %(Filename)%(Extension)</ExecutionDescription>
<ShowOnlyRuleProperties>false</ShowOnlyRuleProperties>
</YASM>
diff --git a/Mkfiles/vc10/vsyasm.targets b/Mkfiles/vc10/vsyasm.targets
index a250afbb..c86180dd 100644
--- a/Mkfiles/vc10/vsyasm.targets
+++ b/Mkfiles/vc10/vsyasm.targets
@@ -20,7 +20,7 @@
AfterTargets="$(YASMAfterTargets)"
Condition="'@(YASM)' != ''"
DependsOnTargets="$(YASMDependsOn);ComputeYASMOutput"
- Outputs="@(YASM->'%(ObjectFileName)')"
+ Outputs="@(YASM->'%(ObjectFile)')"
Inputs="@(YASM);%(YASM.AdditionalDependencies);$(MSBuildProjectFile)">
<ItemGroup
Condition="'@(SelectedFiles)' != ''">
@@ -30,8 +30,8 @@
</ItemGroup>
<ItemGroup>
<YASM_tlog
- Include="%(YASM.ObjectFileName)"
- Condition="'%(YASM.ObjectFileName)' != '' and '%(YASM.ExcludedFromBuild)' != 'true'">
+ Include="%(YASM.ObjectFile)"
+ Condition="'%(YASM.ObjectFile)' != '' and '%(YASM.ExcludedFromBuild)' != 'true'">
<Source>@(YASM, '|')</Source>
</YASM_tlog>
</ItemGroup>
@@ -46,12 +46,16 @@
Condition="'@(YASM)' != '' and '%(YASM.ExcludedFromBuild)' != 'true'"
CommandLineTemplate="%(YASM.CommandLineTemplate)"
Debug="%(YASM.Debug)"
- Defines="%(YASM.Defines)"
+ PreIncludeFile="%(YASM.PreIncludeFile)"
IncludePaths="%(YASM.IncludePaths)"
+ Defines="%(YASM.Defines)"
UnDefines="%(YASM.UnDefines)"
- ObjectFileName="%(YASM.ObjectFileName)"
- ListFileName="%(YASM.ListFileName)"
- PreIncludeFile="%(YASM.PreIncludeFile)"
+ ObjectFile="%(YASM.ObjectFile)"
+ ListFile="%(YASM.ListFile)"
+ MapFile="%(YASM.MapFile)"
+ ErrorFile="%(YASM.ErrorFile)"
+ SymbolPrefix="%(YASM.SymbolPrefix)"
+ SymbolSuffix="%(YASM.SymbolSuffix)"
PreProc="%(YASM.PreProc)"
Parser="%(YASM.Parser)"
AdditionalOptions="%(YASM.AdditionalOptions)"
@@ -72,8 +76,8 @@
Condition="'@(YASM)' != ''">
<ItemGroup>
<YASMDirsToMake
- Condition="'@(YASM)' != '' and '%(YASM.ExcludedFromBuild)' != 'true' and !HasTrailingSlash('%(YASM.ObjectFileName)')"
- Include="%(YASM.ObjectFileName)" />
+ Condition="'@(YASM)' != '' and '%(YASM.ExcludedFromBuild)' != 'true' and !HasTrailingSlash('%(YASM.ObjectFile)')"
+ Include="%(YASM.ObjectFile)" />
<Link
Include="%(YASMDirsToMake.Identity)"
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
@@ -86,8 +90,8 @@
</ItemGroup>
<ItemGroup>
<YASMDirsToMake
- Condition="'@(YASM)' != '' and '%(YASM.ExcludedFromBuild)' != 'true' and HasTrailingSlash('%(YASM.ObjectFileName)')"
- Include="@(YASM->'%(ObjectFileName)%(Filename).obj')" />
+ Condition="'@(YASM)' != '' and '%(YASM.ExcludedFromBuild)' != 'true' and HasTrailingSlash('%(YASM.ObjectFile)')"
+ Include="@(YASM->'%(ObjectFile)%(Filename).obj')" />
<Link
Include="%(YASMDirsToMake.Identity)"
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
diff --git a/Mkfiles/vc10/vsyasm.xml b/Mkfiles/vc10/vsyasm.xml
index a2170083..9ee43193 100644
--- a/Mkfiles/vc10/vsyasm.xml
+++ b/Mkfiles/vc10/vsyasm.xml
@@ -5,18 +5,36 @@
PageTemplate="tool"
DisplayName="Yasm Assembler"
Order="200">
+
<Rule.DataSource>
<DataSource
Persistence="ProjectFile"
ItemType="YASM" />
</Rule.DataSource>
+
<Rule.Categories>
+
<Category
Name="General">
<Category.DisplayName>
<sys:String>General</sys:String>
</Category.DisplayName>
</Category>
+
+ <Category
+ Name="Symbols">
+ <Category.DisplayName>
+ <sys:String>Symbols</sys:String>
+ </Category.DisplayName>
+ </Category>
+
+ <Category
+ Name="Files">
+ <Category.DisplayName>
+ <sys:String>Files</sys:String>
+ </Category.DisplayName>
+ </Category>
+
<Category
Name="Command Line"
Subtype="CommandLine">
@@ -24,7 +42,9 @@
<sys:String>Command Line</sys:String>
</Category.DisplayName>
</Category>
+
</Rule.Categories>
+
<StringListProperty
Name="Inputs"
Category="Command Line"
@@ -37,21 +57,15 @@
SourceType="Item" />
</StringListProperty.DataSource>
</StringListProperty>
+
<BoolProperty
Name="Debug"
- Subcategory="Output"
+ Subcategory="Configuration"
HelpContext="0"
DisplayName="Debug Information"
Description="Generate debugging information"
Switch="-g cv8" />
- <StringListProperty
- Name="Defines"
- Subcategory="Pre-Defined Symbols"
- HelpContext="0"
- DisplayName="Definitions"
- Description="Specify pre-defined symbols ('symbol' or 'symbol = value') "
- Separator=";"
- Switch="-D [value]" />
+
<StringListProperty
Name="IncludePaths"
Subcategory="Configuration"
@@ -60,35 +74,89 @@
Description="Set the paths for any additional include files"
Separator=";"
Switch="-i &quot;[value]&quot;" />
+
+ <StringListProperty
+ Name="Defines"
+ Category="Symbols"
+ Subcategory="Pre-Defined Symbols"
+ HelpContext="0"
+ DisplayName="Defined Symbols"
+ Description="Specify pre-defined symbols ('symbol' or 'symbol = value') "
+ Separator=";"
+ Switch="-d &quot;[value]&quot;" />
+
<StringListProperty
Name="UnDefines"
+ Category="Symbols"
Subcategory="Pre-Defined Symbols"
HelpContext="0"
- DisplayName="Remove Definitions"
+ DisplayName="Remove Symbols"
Description="Remove pre-defined symbols "
Separator=";"
- Switch="-u [value]" />
+ Switch="-u &quot;[value]&quot;" />
+
<StringProperty
- Name="ObjectFileName"
+ Name="ObjectFile"
Subcategory="Output"
HelpContext="0"
DisplayName="Object File Name"
Description="Select the output file name"
Switch="-o &quot;[value]&quot;" />
+
<StringProperty
- Name="ListFileName"
+ Name="ListFile"
+ Category="Files"
Subcategory="Output"
HelpContext="0"
DisplayName="List File Name"
Description="Select an output listing by setting its file name"
Switch="-l &quot;[value]&quot;" />
+
<StringProperty
Name="PreIncludeFile"
+ Category="Files"
Subcategory="Configuration"
HelpContext="0"
DisplayName="Pre Include File"
Description="Select a pre-included file by setting its name"
Switch="-P &quot;[value]&quot;" />
+
+ <StringProperty
+ Name="MapFile"
+ Category="Files"
+ Subcategory="Output"
+ HelpContext="0"
+ DisplayName="Map File Name"
+ Description="Select a map output by setting its file name"
+ Switch="--mapdir= &quot;[value]&quot;" />
+
+ <StringProperty
+ Name="ErrorFile"
+ Category="Files"
+ Subcategory="Output"
+ HelpContext="0"
+ DisplayName="Error File Name"
+ Description="Send error/warning messages to a file by setting its name"
+ Switch="-E &quot;[value]&quot;" />
+
+ <StringProperty
+ Name="SymbolPrefix"
+ Category="Symbols"
+ Subcategory="Symbols"
+ HelpContext="0"
+ DisplayName="External Symbol Prefix"
+ Description="Prepend symbol to all external symbols"
+ Switch="--prefix &quot;[value]&quot;" />
+
+ <StringProperty
+ Name="SymbolSuffix"
+ Category="Symbols"
+ Subcategory="Symbols"
+ HelpContext="0"
+ DisplayName="External Symbol Suffix"
+ Description="Append symbol to all external symbols"
+ Switch="--suffix &quot;[value]&quot;" />
+
<EnumProperty
Name="PreProc"
Subcategory="Configuration"
@@ -104,6 +172,7 @@
DisplayName="Raw"
Switch="-rraw" />
</EnumProperty>
+
<EnumProperty
Name="Parser"
Subcategory="Configuration"
@@ -119,11 +188,13 @@
DisplayName="Gas"
Switch="-pgas" />
</EnumProperty>
+
<StringProperty
Name="CommandLineTemplate"
DisplayName="Command Line"
Visible="False"
IncludeInCommandLine="False" />
+
<DynamicEnumProperty
Name="YASMBeforeTargets"
Category="General"
@@ -146,6 +217,7 @@
HasConfigurationCondition="true" />
</DynamicEnumProperty.DataSource>
</DynamicEnumProperty>
+
<DynamicEnumProperty
Name="YASMAfterTargets"
Category="General"
@@ -169,21 +241,25 @@
HasConfigurationCondition="true" />
</DynamicEnumProperty.DataSource>
</DynamicEnumProperty>
+
<StringListProperty
Name="Outputs"
DisplayName="Outputs"
Visible="False"
IncludeInCommandLine="False" />
+
<StringProperty
Name="ExecutionDescription"
DisplayName="Execution Description"
Visible="False"
IncludeInCommandLine="False" />
+
<StringListProperty
Name="AdditionalDependencies"
DisplayName="Additional Dependencies"
IncludeInCommandLine="False"
Visible="true" />
+
<StringProperty
Subtype="AdditionalOptions"
Name="AdditionalOptions"
@@ -196,6 +272,7 @@
</StringProperty.Description>
</StringProperty>
</Rule>
+
<ItemType
Name="YASM"
DisplayName="Yasm Assembler" />