summaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2008-02-13 13:07:52 +0000
committerAndy Polyakov <appro@openssl.org>2008-02-13 13:07:52 +0000
commita23e3dbee13448c3001cefd382de39741b1c8bff (patch)
tree4a77a91235a1d7d9d9c3d09a5b513da7790d5fca /util
parent400ca0e467d29aa8499e897aa447afe10a53a9f6 (diff)
Support for NASM>=2 in Win64/x64 build.
Diffstat (limited to 'util')
-rw-r--r--util/pl/VC-32.pl13
1 files changed, 10 insertions, 3 deletions
diff --git a/util/pl/VC-32.pl b/util/pl/VC-32.pl
index d873c721d2..23f8d190de 100644
--- a/util/pl/VC-32.pl
+++ b/util/pl/VC-32.pl
@@ -42,6 +42,7 @@ if ($FLAVOR =~ /WIN64/)
$bname =~ s/(.*)\.[^\.]$/$1/;
$ret=<<___;
\$(TMP_D)$o$bname.asm: $source
+ set ASM=\$(ASM)
\$(PERL) $source \$\@
$target: \$(TMP_D)$o$bname.asm
@@ -171,9 +172,15 @@ $lfile='/out:';
$shlib_ex_obj="";
$app_ex_obj="setargv.obj" if ($FLAVOR !~ /CE/);
if ($FLAVOR =~ /WIN64A/) {
- $asm='ml64 /c /Cp /Cx';
- $asm.=" /Zi" if $debug;
- $afile='/Fo';
+ if (`nasm -v` =~ /NASM version ([0-9]+\.[0-9]+)/ && $1 >= 2.0) {
+ $asm='nasm -f win64';
+ $asm.=' -g' if $debug;
+ $afile='-o ';
+ } else {
+ $asm='ml64 /c /Cp /Cx';
+ $asm.=" /Zi" if $debug;
+ $afile='/Fo';
+ }
} elsif ($FLAVOR =~ /WIN64I/) {
$asm='ias';
$asm.=" -d debug" if $debug;