reactos/dll/win32/msvcrt40/CMakeLists.txt
Jérôme Gardou 23373acbb9 [CMAKE] Use modules instead of shared libraries
There is no need to compile our DLLs as shared libraries since we are
managing symbols exports and imports through spec files.

On my system, this reduces the configure-time by a factor of two.
2019-04-06 17:43:38 +02:00

33 lines
815 B
CMake

include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/crt/include)
spec2def(msvcrt40.dll msvcrt40.spec)
add_definitions(
-DUSE_MSVCRT_PREFIX
-D_MSVCRT_
-D_MSVCRT_LIB_
-D_MT
-D_CTYPE_DISABLE_MACROS
-D_NO_INLINING
-DCRTDLL
-D__MINGW_IMPORT="")
list(APPEND SOURCE
msvcrt40.c
stubs.c
${CMAKE_CURRENT_BINARY_DIR}/msvcrt40_stubs.c
${CMAKE_CURRENT_BINARY_DIR}/msvcrt40.def)
add_library(msvcrt40 MODULE ${SOURCE})
set_module_type(msvcrt40 win32dll ENTRYPOINT DllMain 12)
add_dependencies(msvcrt40 psdk)
target_link_libraries(msvcrt40 crt wine ${PSEH_LIB})
if(MSVC)
# export of deleting destructor "name"
add_target_link_flags(msvcrt40 "/ignore:4102")
endif()
add_importlibs(msvcrt40 kernel32 ntdll)
add_cd_file(TARGET msvcrt40 DESTINATION reactos/system32 FOR all)