1
2list(APPEND SOURCE_STATIC
3    _snprintf.c
4    _snwprintf.c
5    _vscprintf.c
6    _vscwprintf.c
7    _vsnprintf.c
8    _vsnwprintf.c
9    atexit.c
10    ceil.c
11    fabs.c
12    floor.c
13    fpcontrol.c
14    mbstowcs.c
15    mbtowc.c
16    rand_s.c
17    sprintf.c
18    strcpy.c
19    strlen.c
20    strtoul.c
21    wcstombs.c
22    wcstoul.c
23    wctomb.c
24)
25
26if(ARCH STREQUAL "i386")
27    list(APPEND SOURCE_STATIC
28        # To be filled
29    )
30elseif(ARCH STREQUAL "amd64")
31    list(APPEND SOURCE_STATIC
32        # To be filled
33    )
34elseif(ARCH STREQUAL "arm")
35    list(APPEND SOURCE_STATIC
36        __rt_div.c
37        __fto64.c
38        __64tof.c
39    )
40endif()
41
42add_executable(static_crt_apitest EXCLUDE_FROM_ALL testlist.c ${SOURCE_STATIC})
43target_compile_definitions(static_crt_apitest PRIVATE TEST_STATIC_CRT _CRTBLD wine_dbgstr_an=wine_dbgstr_an_ wine_dbgstr_wn=wine_dbgstr_wn_)
44target_link_libraries(static_crt_apitest crt wine ${PSEH_LIB})
45set_module_type(static_crt_apitest win32cui)
46add_importlibs(static_crt_apitest kernel32 ntdll)
47add_rostests_file(TARGET static_crt_apitest)
48
49if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
50    target_compile_options(static_crt_apitest PRIVATE -Wno-format)
51endif()
52