changed asm obj output filenames in MSVC build this commit changed the asm file compiling in MSVC to use individually customized build command line with object filename specified for each input file. This allows object filenames prefixed with path name, and avoid name collision in link time Change-Id: I996098643dcadc393af57035a04bef3877f45424
diff --git a/build/make/gen_msvs_proj.sh b/build/make/gen_msvs_proj.sh index 35fb4df..9a7b25e 100755 --- a/build/make/gen_msvs_proj.sh +++ b/build/make/gen_msvs_proj.sh
@@ -155,7 +155,7 @@ tag Tool \ Name="VCCustomBuildTool" \ Description="Assembling \$(InputFileName)" \ - CommandLine="$(eval echo \$asm_${cfg}_cmdline)" \ + CommandLine="$(eval echo \$asm_${cfg}_cmdline) -o \$(IntDir)$objf" \ Outputs="\$(IntDir)$objf" \ close_tag FileConfiguration @@ -262,8 +262,10 @@ asm_use_custom_step=$uses_asm ;; 8) vs_ver_id="8.00" + asm_use_custom_step=$uses_asm ;; 9) vs_ver_id="9.00" + asm_use_custom_step=$uses_asm ;; esac @@ -302,10 +304,11 @@ case "$target" in x86_64*) platforms[0]="x64" + asm_Debug_cmdline="yasm -Xvc -g cv8 -f \$(PlatformName) ${yasmincs} "\$(InputPath)"" + asm_Release_cmdline="yasm -Xvc -f \$(PlatformName) ${yasmincs} "\$(InputPath)"" ;; 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)"" ;;