At 17:04 8/4/2001, Michael Widenius wrote the following:
-------------------------------------------------------------- 
>What's the vcpp.exe package ?  Is this VC++ 6.0 ?

I guess that's the Processor Pack. It's a free download from 
Microsoft that contains a free version of MASM 6.xx.

>For normal users, we should make it trivial to build without
>assembler.

So I guess we are agree on this.

>One the other hand, the best thing would be if we could get the
>assembler functions to build with VC++ 6.0

I'm no big coder, but it seemed like it shouldn't be too hard
to adjust the code for MASM 6.xx. See the following quote from
my earlier mail to Miguel. Note: the linker problem should be
fixed in Visual Studio SP 3.

*********************

>The MASM program converts command-line options from MASM style 
>to ML style, adds options to maximize compatibility, and calls 
>ML.EXE.
>
>Note
>MASM.EXE is provided to maintain compatibility with old makefiles. 
>For new makefiles, use the more powerful ML driver.

Well, the free version doesn't contain masm.exe, only ml.exe. Looks 
like ml supercedes masm. I changed the custom build steps for 
strings/strings.asm and strings/strxmov.asm to reflect ml's parameter
syntax, i. e. 
masm -Mx -t -DDOS386 -DM_I386 $(InputPath),$(Outdir)\$(InputName).obj,,,
=>
ml -Cx -Zm -nologo -DDOS386 -DM_I386 $(InputPath) $(OutDir)\$(InputName).obj

and got this:

--------------------Configuration: strings - Win32 Release--------------------
Performing Custom Build Step on .\Strings.asm
 Assembling: .\Strings.asm
Microsoft (R) Incremental Linker Version 6.00.8447
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
/z2 
"Strings.obj+" 
".\release\Strings.obj" 
"Strings.exe" 
NUL 
LINK : warning LNK4044: unrecognized option "z2"; ignored
LINK : fatal error LNK1181: cannot open input file "Strings.obj+"
Error executing c:\winnt\system32\cmd.exe.

mysqld-nt.exe - 1 error(s), 1 warning(s)

Note the "+" sign appended to strings.obj name. I'm not faimiliar with 
VS enough to solve this.

If this is solved, people interested in building MySQL on win32 machines 
will be able to benefit from the assembler code without the need to buy 
the commercial version of MASM. And that would be a Good Thing(tm), IMO.

BTW, the -Zm option is required for compatibility with MASM 5.x, otherwise 
it emits A2032 on these lines (except ecx,P+SIZEPTR*2[ebp] is actually 
A2026):

        mov     edi,P-SIZEPTR[esp]      ;p1
        mov     edi,P-SIZEPTR[esp]      ;to
        mov     edi,P-SIZEPTR[esp]      ;p1
        mov     edi,P-SIZEPTR[esp]      ; str
        mov     edi,P-SIZEPTR[esp]      ; s1
        mov     ecx,P+SIZEPTR*2[ebp]    ; Length of memory-area
        mov     edi,P-SIZEPTR[esp]      ; EDI -> s1

(see http://support.microsoft.com/support/kb/articles/Q119/8/72.asp)

>The index operator '[]' is now at the very top of the MASM operator 
>precedence list, while the binary "+" and "-" operators are in the 
>lower half. 





[EMAIL PROTECTED]
-------------
And the eyes of them both were opened and they saw that their files
were world readable and writable, so they chmoded 600 their files.
    - Book of Installation chapt 3 sec 7 


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to