On Mon, Nov 30, 2015 at 2:09 AM, André Hentschel nerv@dawncrow.de wrote:
Am 29.11.2015 um 18:30 schrieb Bruno Jesus:
Hi all, I'm trying to create tests for GetPrivateProfileString16 but it is not working as expected because the test is calling the kernel32 version of the function instead of the krnl386.exe16.
Is there any way to make a test that compiles and runs against krnl386 instead of kernel32?
I tried a few different things and the attached patch is the last attempt (the tests are wrong but that is not the point yet).
Hi Bruno,
winegcc links to kernel32 by default, try adding -m16 or -nodefaultlibs somewhere (see winegcc code)
Hi, I'm compiling a standard wine test so gcc is being used and it does not recognize -m16. I then tried to change the Makefile compiler to winegcc and I get:
winegcc -c -o profile.o ../../../../wine/dlls/krnl386.exe16/tests/profile.c -I. \ -I../../../../wine/dlls/krnl386.exe16/tests -I../../../include -I../../../../wine/include \ -D__WINESRC__ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement \ -Wempty-body -Wignored-qualifiers -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter \ -Wvla -Wwrite-strings -Wpointer-arith -Wlogical-op -gdwarf-2 -gstrict-dwarf \ -fno-omit-frame-pointer -g -O0 -m16 -nodefaultlibs gcc: error: unrecognized command line option ‘-m16’
So in the end winegcc is calling gcc.