[CMAKE]
[reactos.git] / dll / win32 / imm32 / CMakeLists.txt
index 6334c59..dfdd313 100644 (file)
@@ -1,24 +1,29 @@
 
-set(CMAKE_C_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -L${REACTOS_BINARY_DIR}/lib/3rdparty/mingw")
-
 add_definitions(-D__WINESRC__)
 
 remove_definitions(-D_WIN32_WINNT=0x502)
 add_definitions(-D_WIN32_WINNT=0x600)
 
+if(MSVC)
+    add_definitions(/FIwine/typeof.h)
+endif()
+
 include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
 
-spec2def(imm32 ${CMAKE_CURRENT_SOURCE_DIR}/imm32.spec ${CMAKE_CURRENT_BINARY_DIR}/imm32.def)
+set_rc_compiler()
 
-add_library(imm32 SHARED imm.c version.rc)
+spec2def(imm32.dll imm32.spec)
 
-set_target_properties(imm32 PROPERTIES LINK_FLAGS "-Wl,-entry,_DllMain@12")
+list(APPEND SOURCE
+    imm.c
+    version.rc
+    ${CMAKE_CURRENT_BINARY_DIR}/imm32_stubs.c
+    ${CMAKE_CURRENT_BINARY_DIR}/imm32.def)
 
-target_link_libraries(imm32
-    ${CMAKE_CURRENT_BINARY_DIR}/imm32.def
-    wine
-    ${REACTOS_SOURCE_DIR}/dll/win32/advapi32/libadvapi32.a
-    ${REACTOS_SOURCE_DIR}/dll/win32/user32/libuser32.a
-    mingw_common)
+add_library(imm32 SHARED ${SOURCE})
 
-add_dependencies(imm32 imm32_def psdk)
+set_module_type(imm32 win32dll)
+target_link_libraries(imm32 wine)
+add_importlibs(imm32 advapi32 user32 msvcrt kernel32 ntdll)
+add_cd_file(TARGET imm32 DESTINATION reactos/system32 FOR all)
+add_importlib_target(imm32.spec)