提交 94de0419 编写于 作者: D Dr. Stephen Henson

Fix so Win32 assembly language works with MASM.

Add info about where to get MASM.
上级 1070e0e2
......@@ -4,6 +4,13 @@
Changes between 0.9.4 and 0.9.5 [xx XXX 2000]
*) Add an optional second argument to the set_label() in the perl
assembly language builder. If this argument exists and is set
to 1 it signals that the assembler should use a symbol whose
scope is the entire file, not just the current function. This
is needed with MASM which uses the format label:: for this scope.
[Steve Henson, pointed out by Peter Runestig <peter@runestig.com>]
*) Change the ASN1 types so they are typedefs by default. Before
almost all types were #define'd to ASN1_STRING which was causing
STACK_OF() problems: you couldn't declare STACK_OF(ASN1_UTF8STRING)
......
......@@ -21,10 +21,12 @@
* Microsoft MASM (aka "ml")
* Free Netwide Assembler NASM.
MASM was I believe distributed in the past with VC++ and it is also part of
the MSDN SDKs. It is no longer distributed as part of VC++ and can be hard
to get hold of. It can be purchased: see Microsoft's site for details at:
http://www.microsoft.com/
MASM was at one point distributed with VC++. It is now distributed with some
Microsoft DDKs, for example the Windows NT 4.0 DDK and the Windows 98 DDK. If you
do not have either of these DDKs then you can just download the binaries for the
Windows 98 DDK and extract and rename the two files XXXXXml.exe and XXXXXml.err,
to ml.exe and ml.err and install somewhere on your PATH. Both DDKs can be downloaded
from the Microsoft developers site www.msdn.com.
NASM is freely available. Version 0.98 was used during testing: other versions
may also work. It is available from many places, see for example:
......@@ -145,12 +147,16 @@
assigned in the CVS tree: so anything linked against this version of the
library may need to be recompiled.
If you get errors about unresolved externals then this means that either you
didn't read the note above about functions not having numbers assigned or
someone forgot to add a function to the header file.
If you get errors about unresolved symbols there are several possible
causes.
In this latter case check out the header file to see if the function is
defined in the header file.
If this happens when the DLL is being linked and you have disabled some
ciphers then it is possible the DEF file generator hasn't removed all
the disabled symbols: the easiest solution is to edit the DEF files manually
to delete them. The DEF files are ms\libeay32.def ms\ssleay32.def.
Another cause is if you missed or ignored the errors about missing numbers
mentioned above.
If you get warnings in the code then the compilation will halt.
......
OpenSSL STATUS Last modified at
______________ $Date: 2000/02/25 20:46:09 $
______________ $Date: 2000/02/27 01:15:18 $
DEVELOPMENT STATE
......@@ -14,7 +14,7 @@
solaris-sparcv9-gcc - test passed
hpux-parisc-gcc - test passed
AIX 4.3 (aix-cc) - test passed
VC++ - assembler error
VC++ - test passed
Proposed release time: Monday, February 28th 2000
o OpenSSL 0.9.4: Released on August 09th, 1999
o OpenSSL 0.9.3a: Released on May 29th, 1999
......
......@@ -341,7 +341,14 @@ sub main'set_label
$label{$_[0]}="${label}${_[0]}";
$label++;
}
push(@out,"$label{$_[0]}:\n");
if((defined $_[1]) && ($_[1] == 1))
{
push(@out,"$label{$_[0]}::\n");
}
else
{
push(@out,"$label{$_[0]}:\n");
}
}
sub main'data_word
......
......@@ -392,7 +392,7 @@ sub sha1_block_data
&X_expand("esi");
&mov(&wparam(1),"esi");
&set_label("shortcut");
&set_label("shortcut", 1);
&comment("");
&comment("Start processing");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册