allows building Contrib using scons. The change to
NSIS/Contrib/BgImage/SConscript is due to needing
memcpy. msvcrt, ntdll, ntoskrnl might also supply this.
Thanks, applied all but the BgImage patch. If you want to
make it use default libraries, pass nodeflib=0 on to
BuildPlugin. But why include crtdll anyway? It doesn't use
any functions from the CRT, only from Windows API.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ah, that problem again. I've experienced it with the stubs
before. That's why I've added memcpy inside #ifdef __GUNC__
in Source\exehead\util.c. I've replaced this solution with a
better one which works for BgImage too. I've made it so the
gnu tools configuration set for scons will check for this
weird memcpy requirement. If it finds it's required, it'll
create a file called funcs.c which includes an
implementation of memcpy and link it with every crt-less build.
I've attached the patch so you can test it before anonymous
CVS updates. If you want to test it, don't forget to remove
the memcpy implementation from Source\exehead\util.c.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
scons contrib fixage
Logged In: YES
user_id=584402
Thanks, applied all but the BgImage patch. If you want to
make it use default libraries, pass nodeflib=0 on to
BuildPlugin. But why include crtdll anyway? It doesn't use
any functions from the CRT, only from Windows API.
Logged In: YES
user_id=35028
Linking with crtdll (or msvcrt, or ntdll or ntoskrnl)
prevents the following error:
i586-mingw32msvc-g++ -s -Wl,--file-alignment,512
-Wl,-e,_DllMain@16 -nostdlib -Wl,--exclude-libs,msvcrt.a
-Wl,-Map,BgImage.map -shared -o
build/release/BgImage/libBgImage.so
build/release/BgImage/BgImage.os -L/usr/i586-mingw32msvc/lib
-lkernel32 -luser32 -lgdi32 -lwinmm
build/release/BgImage/BgImage.os:BgImage.cpp:(.text+0xc4e):
undefined reference to `_memcpy'
build/release/BgImage/BgImage.os:BgImage.cpp:(.text+0xda3):
undefined reference to `_memcpy'
collect2: ld returned 1 exit status
scons: *** [build/release/BgImage/libBgImage.so] Error 1
scons: building terminated because of errors.
Logged In: YES
user_id=584402
Ah, that problem again. I've experienced it with the stubs
before. That's why I've added memcpy inside #ifdef __GUNC__
in Source\exehead\util.c. I've replaced this solution with a
better one which works for BgImage too. I've made it so the
gnu tools configuration set for scons will check for this
weird memcpy requirement. If it finds it's required, it'll
create a file called funcs.c which includes an
implementation of memcpy and link it with every crt-less build.
I've attached the patch so you can test it before anonymous
CVS updates. If you want to test it, don't forget to remove
the memcpy implementation from Source\exehead\util.c.
SCons/Config/gnu 1.3 -> 1.4 diff