1
2include_directories(BEFORE ${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine)
3remove_definitions(-DWINVER=0x502 -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x502)
4add_definitions(-DWINVER=0x600 -D_WIN32_WINNT=0x601)
5
6add_definitions(
7    -Dstrcasecmp=_stricmp
8)
9
10list(APPEND SOURCE
11    actctx.c
12    atom.c
13    change.c
14    codepage.c
15    comm.c
16    console.c
17    debugger.c
18    directory.c
19    drive.c
20    environ.c
21    fiber.c
22    file.c
23    format_msg.c
24    generated.c
25    heap.c
26    loader.c
27    locale.c
28    mailslot.c
29    module.c
30    path.c
31    pipe.c
32    process.c
33    profile.c
34    resource.c
35    sync.c
36    thread.c
37    time.c
38    timer.c
39    toolhelp.c
40    version.c
41    virtual.c
42    volume.c)
43
44list(APPEND PCH_SKIP_SOURCE
45    testlist.c)
46
47add_executable(kernel32_winetest
48    ${SOURCE}
49    ${PCH_SKIP_SOURCE}
50    resource.rc)
51
52if(MSVC)
53    # Disable warning C4477 (printf format warnings)
54    remove_target_compile_option(kernel32_winetest "/we4477")
55
56    if(ARCH STREQUAL "amd64")
57        # error C4101: 'is_wow64': unreferenced local variable
58        remove_target_compile_option(kernel32_winetest "/we4101")
59        target_compile_options(kernel32_winetest PRIVATE /wd4101)
60    endif()
61endif()
62
63if(CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID STREQUAL "Clang")
64    target_compile_options(kernel32_winetest PRIVATE "-Wno-format")
65endif()
66
67set_module_type(kernel32_winetest win32cui)
68target_link_libraries(kernel32_winetest pseh)
69add_importlibs(kernel32_winetest user32 advapi32 msvcrt kernel32 ntdll)
70add_pch(kernel32_winetest precomp.h "${PCH_SKIP_SOURCE}")
71add_rostests_file(TARGET kernel32_winetest)
72