shithub: libvpx

Download patch

ref: ec1871554b4793ad274ed8ae764ff5044d75e0d4
parent: 89c8b3dbc6400ccfcbe5f0dcfe5ccc4fd320f500
author: James Zern <jzern@google.com>
date: Fri Jun 4 14:05:12 EDT 2010

VisualStudio projects: asm tool updates

vs8
 - pull yasm.rules [1] into the source tree to avoid need to install
   file into VC/VCProjectDefaults
 - reference same w/ToolFile & RelativePath
 - update arm branch to match

vs7:
 - quote source file paths passed to yasm

[1]:
http://www.tortall.net/svn/yasm/trunk/yasm/Mkfiles/vc9/yasm.rules@2271

Change-Id: I52b801496340cd7b1d0023d12afbc04624ecefc3

diff: cannot open b/build/x86-msvs//null: file does not exist: 'b/build/x86-msvs//null'
--- /dev/null
+++ b/build/.gitattributes
@@ -1,0 +1,2 @@
+*-vs8/*.rules -crlf
+*-msvs/*.rules -crlf
--- a/build/arm-wince-vs8/.gitattributes
+++ /dev/null
@@ -1,1 +1,0 @@
-*.rules -crlf
--- a/build/make/gen_msvs_proj.sh
+++ b/build/make/gen_msvs_proj.sh
@@ -12,6 +12,7 @@
 
 self=$0
 self_basename=${self##*/}
+self_dirname=$(dirname "$0")
 EOL=$'\n'
 
 show_help() {
@@ -292,8 +293,8 @@
     x86*)
         platforms[0]="Win32"
         # these are only used by vs7
-        asm_Debug_cmdline="yasm -Xvc -g cv8 -f \$(PlatformName) ${yasmincs} \$(InputPath)"
-        asm_Release_cmdline="yasm -Xvc -f \$(PlatformName) ${yasmincs} \$(InputPath)"
+        asm_Debug_cmdline="yasm -Xvc -g cv8 -f \$(PlatformName) ${yasmincs} &quot;\$(InputPath)&quot;"
+        asm_Release_cmdline="yasm -Xvc -f \$(PlatformName) ${yasmincs} &quot;\$(InputPath)&quot;"
     ;;
     arm*|iwmmx*)
         case "${name}" in
@@ -343,19 +344,19 @@
 
     open_tag  ToolFiles
     case "$target" in
-        x86*) $uses_asm && tag DefaultToolFile FileName="yasm.rules"
+        x86*) $uses_asm && tag ToolFile RelativePath="$self_dirname/../x86-msvs/yasm.rules"
         ;;
         arm*|iwmmx*)
             if [ "$name" == "vpx_decoder" ];then
             case "$target" in
                 armv5*)
-                    tag DefaultToolFile FileName="armasmv5.rules"
+                    tag ToolFile RelativePath="$self_dirname/../arm-wince-vs8/armasmv5.rules"
                 ;;
                 armv6*)
-                    tag DefaultToolFile FileName="armasmv6.rules"
+                    tag ToolFile RelativePath="$self_dirname/../arm-wince-vs8/armasmv6.rules"
                 ;;
                 iwmmxt*)
-                    tag DefaultToolFile FileName="armasmxscale.rules"
+                    tag ToolFile RelativePath="$self_dirname/../arm-wince-vs8/armasmxscale.rules"
                 ;;
             esac
             fi
--- /dev/null
+++ b/build/x86-msvs/yasm.rules
@@ -1,0 +1,115 @@
+<?xml version="1.0" encoding="utf-8"?>
+<VisualStudioToolFile
+	Name="Yasm"
+	Version="8.00"
+	>
+  <Rules>
+    <CustomBuildRule
+			Name="YASM"
+			DisplayName="Yasm Assembler"
+			CommandLine="yasm -Xvc -f $(PlatformName) [AllOptions] [AdditionalOptions] [Inputs]"
+			Outputs="[$ObjectFileName]"
+			FileExtensions="*.asm"
+			ExecutionDescription="Assembling $(InputFileName)"
+			ShowOnlyRuleProperties="false"
+			>
+      <Properties>
+        <StringProperty
+					Name="Defines"
+					DisplayName="Definitions"
+					Category="Pre-Defined Symbols"
+					Description="Specify pre-defined symbols (&apos;symbol&apos; or &apos;symbol = value&apos;) "
+					Switch="-D [value]"
+					Delimited="true"
+					Inheritable="true"
+				/>
+        <StringProperty
+					Name="IncludePaths"
+					DisplayName="Include Paths"
+					Category="Configuration"
+					Description="Set the paths for any additional include files"
+					Switch="-I [value]"
+					Delimited="true"
+					Inheritable="true"
+				/>
+        <StringProperty
+					Name="UnDefines"
+					DisplayName="Remove Definitions"
+					Category="Pre-Defined Symbols"
+					Description="Remove pre-defined symbols "
+					Switch="-U [value]"
+					Delimited="true"
+					Inheritable="true"
+				/>
+        <StringProperty
+					Name="ObjectFileName"
+					DisplayName="Object File Name"
+					Category="Output"
+					Description="Select the output file name"
+					Switch="-o [value]"
+					DefaultValue="$(IntDir)\$(InputName).obj"
+				/>
+        <StringProperty
+					Name="ListFileName"
+					DisplayName="List File Name"
+					Category="Output"
+					Description="Select an output listing by setting its file name"
+					Switch="-l [value]"
+				/>
+        <StringProperty
+					Name="PreIncludeFile"
+					DisplayName="Pre Include File"
+					Category="Configuration"
+					Description="Select a pre-included file by setting its name"
+					Switch="-P [value]"
+				/>
+        <BooleanProperty
+					Name="Debug"
+					DisplayName="Debug Information"
+					Category="Output"
+					Description="Generate debugging information"
+					Switch="-g cv8"
+				/>
+        <EnumProperty
+					Name="PreProc"
+					DisplayName="Pre-Processor"
+					Category="Configuration"
+					Description="Select the pre-processor (&apos;nasm&apos; or &apos;raw&apos;)"
+					>
+          <Values>
+            <EnumValue
+							Value="0"
+							Switch="-rnasm"
+							DisplayName="Nasm "
+						/>
+            <EnumValue
+							Value="1"
+							Switch="-rraw"
+							DisplayName="Raw"
+						/>
+          </Values>
+        </EnumProperty>
+        <EnumProperty
+					Name="Parser"
+					DisplayName="Parser"
+					Category="Configuration"
+					Description="Select the parser for Intel (&apos;nasm&apos;) or AT&amp;T ( &apos;gas&apos;) syntax"
+					>
+          <Values>
+            <EnumValue
+							Value="0"
+							Switch="-pnasm"
+							DisplayName="Nasm"
+						/>
+            <EnumValue
+							Value="1"
+							Switch="-pgas"
+							DisplayName="Gas"
+						/>
+          </Values>
+        </EnumProperty>
+      </Properties>
+    </CustomBuildRule>
+  </Rules>
+</VisualStudioToolFile>
+
--- a/libs.mk
+++ b/libs.mk
@@ -132,7 +132,6 @@
 endif
 obj_int_extract.vcproj: $(SRC_PATH_BARE)/build/make/obj_int_extract.c
 	@cp $(SRC_PATH_BARE)/build/arm-wince-vs8/obj_int_extract.bat .
-	@cp $(SRC_PATH_BARE)/build/arm-wince-vs8/armasm$(ARM_ARCH).rules .
 	@echo "    [CREATE] $@"
 	$(SRC_PATH_BARE)/build/make/gen_msvs_proj.sh\
 			--exe\