On Sun, 12 Dec 2010, Andy Polyakov via RT wrote:

> > I used this as a jumping point to investigate and can share some
> > information about the build on Win98 with mingw. I am also attaching a
> > patch for you to look at.
> 
> Please verify http://cvs.openssl.org/chngview?cn=20153.

I just compiled on Windows98 for mingw under cygwin, configured with
"./Configure no-shared no-idea --prefix=d\:/cygwin/mingw mingw", using
the Head tarball from 12/12/2010. There were no errors with "make
depend", make, "make test", and "make install". I did not link with
unicows. The executable identifies itself as:

OpenSSL 1.1.0-dev xx XXX xxxx
built on: Sun Dec 12 13:28:12 PST 2010
platform: mingw
options:  bn(64,32) rc4(4x,int) des(ptr,risc1,16,long) blowfish(idx) 
compiler: gcc -DOPENSSL_THREADS -D_MT -DDSO_WIN32 -mno-cygwin -DL_ENDIAN 
-DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall 
-DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT 
-DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM 
-DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "d:/cygwin/mingw/ssl"

> > It turns out that despite the logs I submitted
> > to you, unicows wasn't being used. A "strings openssl.exe" revealed no
> > "unicows" string in the executable. When I instead added "-lunicows"
> > to the beginning of the $lflags variable for mingw's config-string in
> > Configure, "unicows.dll" began to appear in the executable file. I am not
> > sure why this is.
> 
> Neither am I... Why would implied change of linking order make such
> difference? But on the other hand why should it appear at all in either
> case? It should only appear if there is a reference to a UNICODE
> function from one of the real object modules. "Real" is used here to
> distinguish actual binary code from import stubs commonly found in e.g.
> libkernel32.a. And there shouldn't be any... In VC-WIN32 build we link

I presume it is there because of MultiByteToWideChar, since with
unicows, the function is different, accepting the flag
"MB_ERR_INVALID_CHARS", which isn't accepted on Win98 without it.

> with unicows.lib only if we compile with *optional* -DUNICODE, so it
> shouldn't be required in mingw build either... A.

Thanks for getting this working on Win98 again.

Doug

-- 
Doug Kaufman
Internet: [email protected]

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to