[ros-diffs] [tkreuzer] 56283: [CMAKE] - include wincodec_i.c into uuid on MSVC builds - Improve midl support

tkreuzer at svn.reactos.org tkreuzer at svn.reactos.org
Fri Mar 30 15:36:21 UTC 2012


Author: tkreuzer
Date: Fri Mar 30 15:36:19 2012
New Revision: 56283

URL: http://svn.reactos.org/svn/reactos?rev=56283&view=rev
Log:
[CMAKE]
- include wincodec_i.c into uuid on MSVC builds
- Improve midl support

Modified:
    trunk/reactos/cmake/midl-support.cmake
    trunk/reactos/dll/win32/gdiplus/CMakeLists.txt
    trunk/reactos/dll/win32/oleaut32/CMakeLists.txt
    trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt
    trunk/reactos/lib/sdk/uuid/CMakeLists.txt

Modified: trunk/reactos/cmake/midl-support.cmake
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/midl-support.cmake?rev=56283&r1=56282&r2=56283&view=diff
==============================================================================
--- trunk/reactos/cmake/midl-support.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/midl-support.cmake [iso-8859-1] Fri Mar 30 15:36:19 2012
@@ -25,9 +25,8 @@
     get_defines(_defines)
     foreach(_idl_file ${ARGN})
         get_filename_component(_name_we ${_idl_file} NAME_WE)
-        #set(_name ${CMAKE_CURRENT_BINARY_DIR}/${_name_we})
         add_custom_command(
-            OUTPUT ${_name_we}.h ${_name_we}_dummy_i.c
+            OUTPUT ${_name_we}.h
             COMMAND midl ${_includes} ${_defines} ${IDL_FLAGS} /h ${_name_we}.h /iid ${_name_we}_dummy_i.c ${CMAKE_CURRENT_SOURCE_DIR}/${_idl_file}
             DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_idl_file})
         list(APPEND _target_dependencies ${_name_we}.h)
@@ -38,15 +37,15 @@
 function(add_rpcproxy_files)
     get_includes(_includes)
     get_defines(_defines)
-    set(_output_files "")
+    set(_chain_dependency "")
     foreach(_idl_file ${ARGN})
         get_filename_component(_name_we ${_idl_file} NAME_WE)
         add_custom_command(
             OUTPUT ${_name_we}_p.c ${_name_we}_p.h proxy.dlldata.c
             COMMAND midl ${_includes} ${_defines} ${IDL_FLAGS} /proxy ${_name_we}_p.c /h ${_name_we}_p.h /dlldata proxy.dlldata.c ${CMAKE_CURRENT_SOURCE_DIR}/${_idl_file}
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_idl_file} ${_output_files})
-        list(APPEND _output_files ${CMAKE_CURRENT_BINARY_DIR}/${_name_we}_p.c)
-        list(APPEND _output_files ${CMAKE_CURRENT_BINARY_DIR}/${_name_we}_p.h)
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_idl_file} ${_chain_dependency})
+        list(APPEND _chain_dependency ${CMAKE_CURRENT_BINARY_DIR}/${_name_we}_p.c)
+        list(APPEND _chain_dependency ${CMAKE_CURRENT_BINARY_DIR}/${_name_we}_p.h)
     endforeach()
     set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/proxy.dlldata.c PROPERTIES GENERATED TRUE)
 endfunction()
@@ -64,16 +63,16 @@
     else()
         message(FATAL_ERROR "Please pass either server or client as argument to add_rpc_files")
     endif()
-    foreach(FILE ${ARGN})
-        get_filename_component(_name_we ${FILE} NAME_WE)
-        set(_name_we ${CMAKE_CURRENT_BINARY_DIR}/${_name_we}${_suffix})
-        if(NOT IS_ABSOLUTE ${FILE})
-            set(FILE ${CMAKE_CURRENT_SOURCE_DIR}/${FILE})
+    foreach(_idl_file ${ARGN})
+        if(NOT IS_ABSOLUTE ${_idl_file})
+            set(_idl_file ${CMAKE_CURRENT_SOURCE_DIR}/${_idl_file})
         endif()
+        get_filename_component(_name_we ${_idl_file} NAME_WE)
+        set(_name_we ${_name_we}${_suffix})
         add_custom_command(
             OUTPUT ${_name_we}.c ${_name_we}.h
-            COMMAND midl ${_includes} ${_defines} ${IDL_FLAGS} /h ${_name_we}.h ${_server_client} ${_name_we}.c ${FILE}
-            DEPENDS ${FILE})
+            COMMAND midl ${_includes} ${_defines} ${IDL_FLAGS} /h ${_name_we}.h ${_server_client} ${_name_we}.c ${_idl_file}
+            DEPENDS ${_idl_file})
     endforeach()
 endfunction()
 
@@ -81,8 +80,7 @@
     get_includes(_includes)
     get_defines(_defines)
 
-    get_filename_component(_name ${_idl_file} NAME)
-    if(_name STREQUAL "${_idl_file}")
+    if(NOT IS_ABSOLUTE ${_idl_file})
         set(_idl_file "${CMAKE_CURRENT_SOURCE_DIR}/${_idl_file}")
     endif()
 

Modified: trunk/reactos/dll/win32/gdiplus/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdiplus/CMakeLists.txt?rev=56283&r1=56282&r2=56283&view=diff
==============================================================================
--- trunk/reactos/dll/win32/gdiplus/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/gdiplus/CMakeLists.txt [iso-8859-1] Fri Mar 30 15:36:19 2012
@@ -28,12 +28,6 @@
     ${CMAKE_CURRENT_BINARY_DIR}/gdiplus_stubs.c
     ${CMAKE_CURRENT_BINARY_DIR}/gdiplus.def)
 
-if(MSVC)
-    set_source_files_properties(${REACTOS_BINARY_DIR}/include/psdk/wincodec_i.c PROPERTIES GENERATED TRUE)
-    list(APPEND SOURCE
-        ${REACTOS_BINARY_DIR}/include/psdk/wincodec_i.c)
-endif()
-
 add_library(gdiplus SHARED ${SOURCE})
 set_module_type(gdiplus win32dll)
 target_link_libraries(gdiplus uuid wine)
@@ -49,10 +43,4 @@
     kernel32
     ntdll)
 
-
-
-if(ARCH MATCHES amd64)
-    target_link_libraries(gdiplus crt)
-endif()
-
 add_cd_file(TARGET gdiplus DESTINATION reactos/system32 FOR all)

Modified: trunk/reactos/dll/win32/oleaut32/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oleaut32/CMakeLists.txt?rev=56283&r1=56282&r2=56283&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oleaut32/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/oleaut32/CMakeLists.txt [iso-8859-1] Fri Mar 30 15:36:19 2012
@@ -47,10 +47,7 @@
     ${CMAKE_CURRENT_BINARY_DIR}/oleaut32.def)
 
 if(MSVC)
-    set_source_files_properties(${REACTOS_BINARY_DIR}/include/psdk/wincodec_i.c PROPERTIES GENERATED TRUE)
-    list(APPEND SOURCE
-        ${REACTOS_BINARY_DIR}/include/psdk/wincodec_i.c
-        msvc.S)
+    list(APPEND SOURCE msvc.S)
 endif()
 
 add_library(oleaut32 SHARED ${SOURCE})

Modified: trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt?rev=56283&r1=56282&r2=56283&view=diff
==============================================================================
--- trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt [iso-8859-1] Fri Mar 30 15:36:19 2012
@@ -41,12 +41,6 @@
     ${CMAKE_CURRENT_BINARY_DIR}/windowscodecs_stubs.c
     ${CMAKE_CURRENT_BINARY_DIR}/windowscodecs.def)
 
-if(MSVC)
-    set_source_files_properties(${REACTOS_BINARY_DIR}/include/psdk/wincodec_i.c PROPERTIES GENERATED TRUE)
-    list(APPEND SOURCE
-         ${REACTOS_BINARY_DIR}/include/psdk/wincodec_i.c)
-endif()
-
 add_library(windowscodecs SHARED ${SOURCE})
 
 set_module_type(windowscodecs win32dll)

Modified: trunk/reactos/lib/sdk/uuid/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/uuid/CMakeLists.txt?rev=56283&r1=56282&r2=56283&view=diff
==============================================================================
--- trunk/reactos/lib/sdk/uuid/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/lib/sdk/uuid/CMakeLists.txt [iso-8859-1] Fri Mar 30 15:36:19 2012
@@ -169,6 +169,7 @@
     tuner.idl
     vmr9.idl
     wia_xp.idl
+    wincodec.idl
     xmldom.idl
     xmldso.idl
     ctfutb.idl
@@ -183,7 +184,6 @@
 else()
     list(APPEND IDL_SOURCES
         wbemcli.idl
-        wincodec.idl
         wuapi.idl)
 endif()
 




More information about the Ros-diffs mailing list