On 2008.05.13 at 22:10:12 +0300, Roumen Petrov wrote:

>> Shared build of OpenSSL for Windows platform involves executing of
>> file util/mkdef.pl to creates .def file for each shared library.
>> This file specifies what symbols are exported from the library.
>>
>> Script mkdef.pl expects to receive some configuration options, such as
>> no-<alg> or zlib. If these options are not passed properly (i.e same way
>> as to Configure), build fails, either when building shared library
>> (in case if some algorithms were disabled and corresponding functions
>> are not available in the object files) or when building openssl.exe
>> binary (in case if some optional features such as zlib compression were
>> enabled and used by object files in the apps directory).
>>
>> However, script mkdef.pl is invoked from the link_a.cygwin target
>> of Makefile.shared without passsing configure arguments.
>>
>> Attached patch fixes this problem
>>
>> It does just to things:
>>
>> 1. Adds variable CONFIGURE_ARGS to the list of variables passed to make 
>> subprocess in the BUILDENV macro 2. Passes content of this variable to 
>> mkdef.pl invocation in the
>> link_a.cygwin target in the Makefile.shared.
>
> But util/mkdef.pl parse OPTIONS in top Makefile.

Therefore, it does it incorrectly.

I've encountered real errors doing build 
with

./Configure mingw shared zlib --cross-compile-prefix=i586-mingw32msvc-


mkdef.pl does

        if ($_ eq "zlib" || $_ eq "zlib-dynamic"
                         || $_ eq "enable-zlib-dynamic")


but in this case OPTIONS contain "enable-zlib no-zlib-dynamic"

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to