[CMAKE]
[reactos.git] / dll / win32 / shlwapi / CMakeLists.txt
index c5e8fcb..da7a627 100644 (file)
@@ -1,16 +1,13 @@
 
-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")
-
 include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
-
 add_definitions(-D__WINESRC__)
 
 remove_definitions(-D_WIN32_WINNT=0x502)
 add_definitions(-D_WIN32_WINNT=0x600)
 
-spec2def(shlwapi ${CMAKE_CURRENT_SOURCE_DIR}/shlwapi.spec ${CMAKE_CURRENT_BINARY_DIR}/shlwapi.def)
+spec2def(shlwapi.dll shlwapi.spec)
 
-add_library(shlwapi SHARED
+list(APPEND SOURCE
     assoc.c
     clist.c
     istream.c
@@ -25,27 +22,34 @@ add_library(shlwapi SHARED
     thread.c
     url.c
     wsprintf.c
-    shlwapi.rc)
-
-set_target_properties(shlwapi PROPERTIES LINK_FLAGS "-Wl,-entry,_DllMain@12")
-
-target_link_libraries(shlwapi
-    ${CMAKE_CURRENT_BINARY_DIR}/shlwapi.def
-    wine
-    uuid
-    -luser32
-    -lgdi32
-    -ladvapi32
-    -loleaut32
-    -lole32
-    -lcomctl32
-    -lcomdlg32
-    -lmpr
-    -lmlang
-    -lurlmon
-    -lshell32
-    -lwinmm
-    -lversion
-    mingw_common)
-
-add_dependencies(shlwapi shlwapi_def psdk)
+    shlwapi.rc
+    ${CMAKE_CURRENT_BINARY_DIR}/shlwapi_stubs.c
+    ${CMAKE_CURRENT_BINARY_DIR}/shlwapi.def)
+
+add_library(shlwapi SHARED ${SOURCE})
+
+set_module_type(shlwapi win32dll)
+
+target_link_libraries(shlwapi wine uuid)
+
+add_importlibs(shlwapi
+    user32
+    gdi32
+    advapi32
+    oleaut32
+    ole32
+    comctl32
+    comdlg32
+    mpr
+    mlang
+    urlmon
+    winmm
+    version
+    shell32
+    kernel32
+    msvcrt
+    ntdll)
+
+add_cab_target(shlwapi 1)
+
+add_importlib_target(shlwapi.spec)