[SHELL32] CDrivesFolder: Implement the eject and disconnect menu items. CORE-13841
[reactos.git] / dll / win32 / windowscodecs / CMakeLists.txt
index 9c9ef55..227552a 100644 (file)
@@ -9,11 +9,11 @@ remove_definitions(-D_WIN32_WINNT=0x502)
 add_definitions(-D_WIN32_WINNT=0x600)
 
 include_directories(
-    ${REACTOS_SOURCE_DIR}/include/reactos/wine
-    ${REACTOS_SOURCE_DIR}/include/reactos/libs/libjpeg
-    ${REACTOS_SOURCE_DIR}/include/reactos/libs/zlib
-    ${REACTOS_SOURCE_DIR}/include/reactos/libs/libpng
-    ${REACTOS_SOURCE_DIR}/include/reactos/libs/libtiff)
+    BEFORE ${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine
+    ${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/libjpeg
+    ${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/zlib
+    ${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/libpng
+    ${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/libtiff)
 
 if(MSVC)
     add_compile_flags("/FItypeof.h")
@@ -23,7 +23,6 @@ spec2def(windowscodecs.dll windowscodecs.spec ADD_IMPORTLIB)
 add_rpcproxy_files(windowscodecs_wincodec.idl)
 
 list(APPEND SOURCE
-    bitmap.c
     bmpdecode.c
     bmpencode.c
     clipper.c
@@ -40,6 +39,7 @@ list(APPEND SOURCE
     jpegformat.c
     main.c
     metadatahandler.c
+    metadataquery.c
     palette.c
     pngformat.c
     propertybag.c
@@ -52,8 +52,17 @@ list(APPEND SOURCE
     ungif.c
     wincodecs_private.h)
 
-add_library(windowscodecs SHARED
-    ${SOURCE}
+if(MSVC)
+    if(ARCH STREQUAL "i386")
+        list(APPEND SOURCE msvc-thiscall.c)
+    endif()
+    set_source_files_properties(bitmap.c PROPERTIES COMPILE_FLAGS "/FImsvc.h")
+    list(APPEND ADDITIONAL_SOURCE bitmap.c)
+else()
+    list(APPEND SOURCE bitmap.c)
+endif()
+
+list(APPEND ADDITIONAL_SOURCE
     guid.c
     version.rc
     ${CMAKE_CURRENT_BINARY_DIR}/proxy.dlldata.c
@@ -61,8 +70,12 @@ add_library(windowscodecs SHARED
     ${CMAKE_CURRENT_BINARY_DIR}/windowscodecs.def
     ${CMAKE_CURRENT_BINARY_DIR}/windowscodecs_wincodec_p.c)
 
+add_library(windowscodecs SHARED
+    ${SOURCE}
+    ${ADDITIONAL_SOURCE})
+
 set_module_type(windowscodecs win32dll)
 target_link_libraries(windowscodecs wine uuid ${PSEH_LIB})
-add_importlibs(windowscodecs ole32 oleaut32 rpcrt4 shlwapi user32 gdi32 advapi32 msvcrt kernel32 ntdll)
+add_importlibs(windowscodecs ole32 oleaut32 rpcrt4 shlwapi user32 gdi32 advapi32 advapi32_vista propsys msvcrt kernel32 ntdll)
 add_pch(windowscodecs wincodecs_private.h SOURCE)
 add_cd_file(TARGET windowscodecs DESTINATION reactos/system32 FOR all)