Please ignore this clumsy solution, a proper solution was posted
previously (it involved adding nasm keywords to get the
right flags for read only data).

On 06-10-2010 14:18, Gero Peters wrote:



---------- Ursprüngliche Nachricht ----------
Von: Gero Peters <g...@likemag.org>
An: us...@openssl.org
Datum: 6. Oktober 2010 um 14:04
Betreff: Fix for linker warning LNK4078 on Windows 64bit

Dear OpenSSL users,

just remove the declaration of a DWORD (32bit) or QWORD (64bit)
containing the pointer to OPENSSL_cpuid_setup from the assembler sources
x86cpuid.asm / x86_64cpuid.asm, respectively. I would recommend to
modify perlasm!? Can someone of the core developers do this for all of us?

Then, modify cryptlib.c and add for Visual C/C++ builds:

#pragma section(".CRT$XCU",read)
__declspec(allocate(".CRT$XCU")) static void (*__dummy)(void) =
OPENSSL_cpuid_setup;

That's it. This fix circumvents the poor COFF section flags setting of
nasm for the special section .CRT$XCU.

Cheers, Gero.


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to