From 43546cb5c2a109a60c195a7e01ac15ffef6c44c0 Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Fri, 16 May 2025 15:46:26 +0300 Subject: [PATCH] [UCRTBASE_APITEST] Add ucrtbase_apitest First test is ceil. --- modules/rostests/apitests/CMakeLists.txt | 1 + modules/rostests/apitests/crt/ceil.c | 4 +++ .../rostests/apitests/ucrtbase/CMakeLists.txt | 28 +++++++++++++++++++ modules/rostests/apitests/ucrtbase/testlist.c | 14 ++++++++++ 4 files changed, 47 insertions(+) create mode 100644 modules/rostests/apitests/ucrtbase/CMakeLists.txt create mode 100644 modules/rostests/apitests/ucrtbase/testlist.c diff --git a/modules/rostests/apitests/CMakeLists.txt b/modules/rostests/apitests/CMakeLists.txt index 1813245251b..19a0da766f5 100644 --- a/modules/rostests/apitests/CMakeLists.txt +++ b/modules/rostests/apitests/CMakeLists.txt @@ -55,6 +55,7 @@ add_subdirectory(shell32) add_subdirectory(shlwapi) add_subdirectory(spoolss) add_subdirectory(psapi) +add_subdirectory(ucrtbase) add_subdirectory(umkm) add_subdirectory(user32) add_subdirectory(user32_dynamic) diff --git a/modules/rostests/apitests/crt/ceil.c b/modules/rostests/apitests/crt/ceil.c index b63d5097949..445365f1748 100644 --- a/modules/rostests/apitests/crt/ceil.c +++ b/modules/rostests/apitests/crt/ceil.c @@ -59,6 +59,7 @@ void Test_ceil(void) } } +#ifndef _M_IX86 static TESTENTRY_FLT s_ceilf_tests[] = { /* Special values */ @@ -101,9 +102,12 @@ void Test_ceilf(void) ok_eq_flt_exact("ceilf", s_ceilf_tests[i].x, z, s_ceilf_tests[i].result); } } +#endif START_TEST(ceil) { Test_ceil(); +#ifndef _M_IX86 Test_ceilf(); +#endif } diff --git a/modules/rostests/apitests/ucrtbase/CMakeLists.txt b/modules/rostests/apitests/ucrtbase/CMakeLists.txt new file mode 100644 index 00000000000..5d687e6c801 --- /dev/null +++ b/modules/rostests/apitests/ucrtbase/CMakeLists.txt @@ -0,0 +1,28 @@ + +# Hack to replace the old CRT include directory with the UCRT include directory +get_property(INCLUDE_DIRS DIRECTORY . PROPERTY INCLUDE_DIRECTORIES) +list(REMOVE_ITEM INCLUDE_DIRS "${REACTOS_SOURCE_DIR}/sdk/include/crt") +set_property(DIRECTORY . PROPERTY INCLUDE_DIRECTORIES ${INCLUDE_DIRS}) +include_directories(${REACTOS_SOURCE_DIR}/sdk/include/ucrt) + +add_definitions( + -DTEST_UCRTBASE + -DUSE_WINE_TODOS +) + +list(APPEND SOURCE + ../crt/ceil.c + testlist.c +) + +add_executable(ucrtbase_apitest ${SOURCE}) +set_module_type(ucrtbase_apitest win32cui) + +target_link_libraries(ucrtbase_apitest ${PSEH_LIB} chkstk) +if(NOT MSVC) + # Add this manually here, so it can link to ucrtbase.dll and vcstartup + target_link_libraries(ucrtbase_apitest -lgcc) +endif() + +add_importlibs(ucrtbase_apitest ucrtbase kernel32 ntdll) +add_rostests_file(TARGET ucrtbase_apitest) diff --git a/modules/rostests/apitests/ucrtbase/testlist.c b/modules/rostests/apitests/ucrtbase/testlist.c new file mode 100644 index 00000000000..012c3ee408c --- /dev/null +++ b/modules/rostests/apitests/ucrtbase/testlist.c @@ -0,0 +1,14 @@ +/* Automatically generated file; DO NOT EDIT!! */ + +#define STANDALONE +#include + +extern void func_ceil(void); + + +const struct test winetest_testlist[] = +{ + { "ceil", func_ceil }, + + { 0, 0 } +};