I fixed the problem ! It was very easy. You can't use yasm with VS2010. Use 
vsyasm instead. You can download the zip file here :download the 
http://www.tortall.net/projects/yasm/releases/vsyasm-1.0.0-win64.zip
After that it's very straightforward !
Add this to build_rules.txt :
[Yasm-Assembly-Code-File.COMMON.COMMON]    <InputFile>        ?.yasm, ?.Yasm, 
?.YASM
    <ExtraDependency>        $(MAKE_FILE)
    <OutputFile>        $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
    <Command>        "$(PP)" $(PP_FLAGS) $(INC) ${src} > 
${d_path}(+)${s_base}.i        Trim --trim-long --source-code -o 
${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i        vsyasm -I${s_path}(+) 
$(YASM_FLAGS) -o $dst ${d_path}(+)${s_base}.iii
Add this to the appropriate place in tools_def.txt :
DEBUG_VS2010x86_X64_YASM_FLAGS   = -Ox -f win64 
-wRELEASE_VS2010x86_X64_YASM_FLAGS   = -Ox -f win64 
-wNOOPT_VS2010x86_X64_YASM_FLAGS     = -O0 -f win64 -w
That's it. The lesson to learn - DON'T USE yasm.exe with Visual Studio 2010  
!!! The zip package willhave a readme telling you where to install the vsyasm 
stuff.

Yasm 1.0.0 - The Yasm Modular Assembler Project

|   |
|   |  |   |   |   |   |   |
| Yasm 1.0.0 - The Yasm Modular Assembler ProjectTarget Audience Welcome to the 
1.0.0 release of the Yasm Modular Assembler. Its target audience includes 
people who want to:  |
|  |
| View on yasm.tortall.net | Preview by Yahoo |
|  |
|   |


 Shubha D. [email protected]
[email protected] 


     On Friday, September 4, 2015 8:51 PM, Shubha Ramani 
<[email protected]> wrote:
   

 I ended up hacking Edk2Setup.bat too to get YASM to work. Still doesn't work.  
If you notice in the build output yasm is supposed to be inside those double 
quotes I think:        "" 
-Ic:\edk2\myworkspace\MdeModulePkg\Application\Dumdum\ 

I really really need to get yasm going. Can you check out the attached files 
and tell me where I'm going wrong ?
Thanks,
Shubha
        "C:\Program Files (x86)\Microsoft Visual Studio 
10.0\Vc\bin\x86_amd64\cl.exe" /nologo /E /TC /FIAutoGen.h 
/Ic:\edk2\myworkspace\MdeModulePkg\Application\Dumdum  
/Ic:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\DEBUG
  /Ic:\edk2\myworkspace\MdePkg  /Ic:\edk2\myworkspace\MdePkg\Include  
/Ic:\edk2\myworkspace\MdePkg\Include\X64  /Ic:\edk2\myworkspace\MdeModulePkg  
/Ic:\edk2\myworkspace\MdeModulePkg\Include  
/Ic:\edk2\myworkspace\IntelFrameworkPkg  
/Ic:\edk2\myworkspace\IntelFrameworkPkg\Include 
c:\edk2\myworkspace\MdeModulePkg\Application\Dumdum\hsw_avx_features.yasm > 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.ihsw_avx_features.yasm
        Trim --trim-long --source-code -o 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.iii
 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.i
        "" -Ic:\edk2\myworkspace\MdeModulePkg\Application\Dumdum\ -Ox -f win64 
-o 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.obj
 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.iii'-Ic:\edk2\myworkspace\MdeModulePkg\Application\Dumdum\'
 is not recognized as an internal or external command,operable program or batch 
file.NMAKE : fatal error U1077: '"' : return code '0x1'Stop. Shubha D. 
[email protected]
[email protected] 


     On Friday, September 4, 2015 5:55 PM, Shubha Ramani 
<[email protected]> wrote:
   

 Error I am getting:
        "C:\Program Files (x86)\Microsoft Visual Studio 
10.0\Vc\bin\x86_amd64\cl.exe" /nologo /E /TC /FIAutoGen.h 
/Ic:\edk2\myworkspace\MdeModulePkg\Application\Dumdum  
/Ic:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\DEBUG
  /Ic:\edk2\myworkspace\MdePkg  /Ic:\edk2\myworkspace\MdePkg\Include  
/Ic:\edk2\myworkspace\MdePkg\Include\X64  /Ic:\edk2\myworkspace\MdeModulePkg  
/Ic:\edk2\myworkspace\MdeModulePkg\Include  
/Ic:\edk2\myworkspace\IntelFrameworkPkg  
/Ic:\edk2\myworkspace\IntelFrameworkPkg\Include 
c:\edk2\myworkspace\MdeModulePkg\Application\Dumdum\hsw_avx_features.yasm > 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.ihsw_avx_features.yasm
        Trim --trim-long --source-code -o 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.iii
 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.i
        "" -Ic:\edk2\myworkspace\MdeModulePkg\Application\Dumdum\  -o 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.obj
 
c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum\OUTPUT\.\hsw_avx_features.iii'-Ic:\edk2\myworkspace\MdeModulePkg\Application\Dumdum\'
 is not recognized as an internal or external command,operable program or batch 
file.NMAKE : fatal error U1077: '"' : return code '0x1'Stop.

build.exe... : error 7000: Failed to execute command        C:\Program Files 
(x86)\Microsoft Visual Studio 10.0\Vc\bin\nmake.exe /nologo all 
[c:\edk2\myworkspace\Build\DuetPkgX64\RELEASE_VS2010x86\X64\MdeModulePkg\Application\Dumdum\Dumdum]
- Failed -Build end time: 17:54:35, Sep.04 2015Build total time: 00:00:06
PS C:\edk2\MyWorkSpace> Shubha D. [email protected]
[email protected] 


     On Friday, September 4, 2015 5:50 PM, Shubha Ramani 
<[email protected]> wrote:
   

 This is what's in my build_rule.txt:
[Nasm-Assembly-Code-File.COMMON.COMMON]    <InputFile>        ?.nasm, ?.Nasm, 
?.NASM
    <ExtraDependency>        $(MAKE_FILE)
    <OutputFile>        $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
    <Command>        "$(PP)" $(PP_FLAGS) $(INC) ${src} > 
${d_path}(+)${s_base}.i        Trim --trim-long --source-code -o 
${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i        "$(NASM)" 
-I${s_path}(+) $(NASM_FLAGS) -o $dst ${d_path}(+)${s_base}.iii


[yasm-Assembly-Code-File.COMMON.COMMON]    <InputFile>        ?.yasm, ?.Yasm, 
?.YASM
    <ExtraDependency>        $(MAKE_FILE)
    <OutputFile>        $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
    <Command>        "$(PP)" $(PP_FLAGS) $(INC) ${src} > 
${d_path}(+)${s_base}.i        Trim --trim-long --source-code -o 
${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i        "$(YASM)" 
-I${s_path}(+) $(YASM_FLAGS) -o $dst ${d_path}(+)${s_base}.iii

[Nasm-to-Binary-Code-File]    <InputFile>        ?.nasmb, ?.NASMB
    <ExtraDependency>        $(MAKE_FILE)
    <OutputFile>        $(OUTPUT_DIR)(+)${s_base}.bin
    <Command>        "$(PP)" $(PP_FLAGS) $(INC) ${src} > 
${d_path}(+)${s_base}.i        Trim --source-code --convert-hex -o 
${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i        "$(NASM)" 
-I${s_path}(+) -l ${d_path}(+)${s_base}.lst $(NASMB_FLAGS) -o $dst 
${d_path}(+)${s_base}.iii
[yasm-to-Binary-Code-File]    <InputFile>        ?.yasmb, ?.YASMB
    <ExtraDependency>        $(MAKE_FILE)
    <OutputFile>        $(OUTPUT_DIR)(+)${s_base}.bin
    <Command>        "$(PP)" $(PP_FLAGS) $(INC) ${src} > 
${d_path}(+)${s_base}.i        Trim --source-code --convert-hex -o 
${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i        "$(YASM)" 
-I${s_path}(+) -l ${d_path}(+)${s_base}.lst $(YASMB_FLAGS) -o $dst 
${d_path}(+)${s_base}.iii 
And I have properly defined in "tools_def.txt"
DEFINE YASM_BIN = C:\edk2\MyWorkSpace\BaseTools\Bin\Win32
*_VS2010_X64_ASM_PATH      = DEF(YASM_BIN)\yasm.exe


Shubha D. [email protected]
[email protected] 


     On Friday, September 4, 2015 5:36 PM, Shubha Ramani 
<[email protected]> wrote:
   

 Andrew Fish pointed out 
:http://news.gmane.org/gmane.comp.bios.tianocore.buildtools.devel/cutoff=15
 Unfortunately it doesn't work. The guy who asked the original question 
actuallyworked in my group. I'm supporting his code (which doesn't work).  Any 
helpwould be appreciated.
Thanks,
Shubha
Shubha D. [email protected]
[email protected] 


     On Friday, September 4, 2015 5:33 PM, Shubha Ramani 
<[email protected]> wrote:
   

 I followed the examples for NASM and things just don't work. Can someone fix 
this  and post an update ?I realize that by default EDK2 only supports NASM and 
MASM. But though I've followed previous posts onthis topic I'm getting massive 
errors.
Please help !
Shubha
 Shubha D. [email protected]
[email protected]

   

   

   

   

  
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to