| lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | # We can't make commitment to supporting Microsoft assembler, | 
 | 2 | # because it would mean supporting all masm versions. This in | 
 | 3 | # in turn is because masm is not really an interchangeable option, | 
 | 4 | # while users tend to have reasons to stick with specific Visual | 
 | 5 | # Studio versions. It's usually lesser hassle to make it work | 
 | 6 | # with latest assembler, but tweaking for older versions had | 
 | 7 | # proven to be daunting task. This is experimental target, for | 
 | 8 | # production builds stick with [up-to-date version of] nasm. | 
 | 9 |  | 
 | 10 | my %targets = ( | 
 | 11 |     "VC-WIN64A-masm" => { | 
 | 12 |         inherit_from    => [ "VC-WIN64-common", asm("x86_64_asm"), | 
 | 13 |                              sub { $disabled{shared} ? () : "x86_64_uplink" } ], | 
 | 14 |         AS              => "ml64", | 
 | 15 |         ASFLAGS         => "/nologo /Zi", | 
 | 16 |         asoutflag       => "/Fo", | 
 | 17 |         asflags         => "/c /Cp /Cx", | 
 | 18 |         sys_id          => "WIN64A", | 
 | 19 |         bn_asm_src      => sub { return undef unless @_; | 
 | 20 |                                  my $r=join(" ",@_); $r=~s|asm/x86_64-gcc|bn_asm|; $r; }, | 
 | 21 |         perlasm_scheme   => "masm", | 
 | 22 |     }, | 
 | 23 | ); |