[ros-diffs] [jgardou] 53088: [CMAKE] - make generated files depend on their generator It seems stupid, but I removed this quite some time ago, don't ask me why. Now, you just have to build the tools and do an ...

jgardou at svn.reactos.org jgardou at svn.reactos.org
Fri Aug 5 20:40:40 UTC 2011


Author: jgardou
Date: Fri Aug  5 20:40:40 2011
New Revision: 53088

URL: http://svn.reactos.org/svn/reactos?rev=53088&view=rev
Log:
[CMAKE]
- make generated files depend on their generator
It seems stupid, but I removed this quite some time ago, don't ask me why.
Now, you just have to build the tools and do an incremental build each time a tool is updated.

Modified:
    trunk/reactos/boot/CMakeLists.txt
    trunk/reactos/cmake/gcc.cmake
    trunk/reactos/cmake/idl-support.cmake
    trunk/reactos/cmake/msvc.cmake
    trunk/reactos/include/asm/CMakeLists.txt
    trunk/reactos/media/vgafonts/CMakeLists.txt
    trunk/reactos/subsystems/win32/win32k/CMakeLists.txt

Modified: trunk/reactos/boot/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/CMakeLists.txt?rev=53088&r1=53087&r2=53088&view=diff
==============================================================================
--- trunk/reactos/boot/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/boot/CMakeLists.txt [iso-8859-1] Fri Aug  5 20:40:40 2011
@@ -7,6 +7,7 @@
     ${CMAKE_COMMAND} -D CD_DIR=${CMAKE_CURRENT_BINARY_DIR}/bootcd
                              -P ${CMAKE_CURRENT_BINARY_DIR}/bootcd.cmake
     COMMAND native-cdmake -v -j -m -b ${CMAKE_CURRENT_BINARY_DIR}/freeldr/bootsect/isoboot.bin ${CMAKE_CURRENT_BINARY_DIR}/bootcd REACTOS ${REACTOS_BINARY_DIR}/bootcd.iso
+    DEPENDS native-cdmake
     VERBATIM)
     
 ##bootcdregtest
@@ -18,6 +19,7 @@
     ${CMAKE_COMMAND} -D CD_DIR=${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest
                              -P ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest.cmake
     COMMAND native-cdmake -v -j -m -b ${CMAKE_CURRENT_BINARY_DIR}/freeldr/bootsect/isobtrt.bin ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest REACTOS ${REACTOS_BINARY_DIR}/bootcdregtest.iso
+    DEPENDS native-cdmake
     VERBATIM)
     
 
@@ -43,6 +45,7 @@
     ${CMAKE_COMMAND} -D CD_DIR=${CMAKE_CURRENT_BINARY_DIR}/livecd
                              -P ${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake
     COMMAND native-cdmake -v -j -m -b ${CMAKE_CURRENT_BINARY_DIR}/freeldr/bootsect/isoboot.bin ${CMAKE_CURRENT_BINARY_DIR}/livecd REACTOS ${REACTOS_BINARY_DIR}/livecd.iso
+    DEPENDS native-cdmake
     VERBATIM)
 
 add_subdirectory(freeldr)

Modified: trunk/reactos/cmake/gcc.cmake
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/gcc.cmake?rev=53088&r1=53087&r2=53088&view=diff
==============================================================================
--- trunk/reactos/cmake/gcc.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/gcc.cmake [iso-8859-1] Fri Aug  5 20:40:40 2011
@@ -233,14 +233,14 @@
             OUTPUT ${CMAKE_BINARY_DIR}/importlibs/lib${_name}.a
             COMMAND native-spec2def -n=${_name}${_suffix} -a=${ARCH2} -d=${CMAKE_CURRENT_BINARY_DIR}/${_name}_implib.def ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file}
             COMMAND ${MINGW_PREFIX}dlltool --def ${CMAKE_CURRENT_BINARY_DIR}/${_name}_implib.def --kill-at --output-lib=${CMAKE_BINARY_DIR}/importlibs/lib${_name}.a
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file})
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file} native-spec2def)
 
         # Delayed importlib creation
         add_custom_command(
             OUTPUT ${CMAKE_BINARY_DIR}/importlibs/lib${_name}_delayed.a
             COMMAND native-spec2def -n=${_name}${_suffix} -a=${ARCH2} -d=${CMAKE_CURRENT_BINARY_DIR}/${_name}_delayed_implib.def ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file}
             COMMAND ${MINGW_PREFIX}dlltool --def ${CMAKE_CURRENT_BINARY_DIR}/${_name}_delayed_implib.def --kill-at --output-delaylib ${CMAKE_BINARY_DIR}/importlibs/lib${_name}_delayed.a
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file})
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file} native-spec2def)
 
     elseif(${_extension} STREQUAL ".def")
         message("Use of def files for import libs is deprecated: ${_exports_file}")
@@ -272,7 +272,7 @@
     add_custom_command(
         OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_file}.def ${CMAKE_CURRENT_BINARY_DIR}/${_file}_stubs.c
         COMMAND native-spec2def -n=${_dllname} --kill-at -a=${ARCH2} -d=${CMAKE_CURRENT_BINARY_DIR}/${_file}.def -s=${CMAKE_CURRENT_BINARY_DIR}/${_file}_stubs.c ${CMAKE_CURRENT_SOURCE_DIR}/${_spec_file}
-        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_spec_file})
+        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_spec_file} native-spec2def)
     set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_file}.def
         PROPERTIES GENERATED TRUE EXTERNAL_OBJECT TRUE)
     set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_file}_stubs.c PROPERTIES GENERATED TRUE)
@@ -385,7 +385,7 @@
         OUTPUT ${_binary_file}
         COMMAND native-obj2bin ${_object_file} ${_binary_file} ${_base_address}
         # COMMAND objcopy --output-target binary --image-base 0x${_base_address} ${_object_file} ${_binary_file}
-        DEPENDS ${_object_file})
+        DEPENDS ${_object_file} native-obj2bin)
 
     set_source_files_properties(${_object_file} ${_binary_file} PROPERTIES GENERATED TRUE)
 

Modified: trunk/reactos/cmake/idl-support.cmake
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/idl-support.cmake?rev=53088&r1=53087&r2=53088&view=diff
==============================================================================
--- trunk/reactos/cmake/idl-support.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/idl-support.cmake [iso-8859-1] Fri Aug  5 20:40:40 2011
@@ -16,6 +16,7 @@
     else()
         set(IDL_FLAGS "")
     endif()
+    set(IDL_DEPENDS "")
 else()
     set(IDL_COMPILER native-widl)
     set(IDL_HEADER_ARG -h -o) #.h
@@ -32,6 +33,7 @@
     else()
         set(IDL_FLAGS "")
     endif()
+    set(IDL_DEPENDS native-widl)
 endif()
 
 
@@ -59,7 +61,7 @@
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.tlb
             COMMAND ${IDL_COMPILER} ${INCLUDES} ${DEFINES} ${IDL_FLAGS} ${IDL_TYPELIB_ARG} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.tlb ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE})
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE} ${IDL_DEPENDS})
         list(APPEND OBJECTS ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.tlb)
     endforeach()
     add_custom_target(${TARGET} ALL DEPENDS ${OBJECTS})
@@ -74,7 +76,7 @@
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.h
             COMMAND ${IDL_COMPILER} ${INCLUDES} ${DEFINES} ${IDL_FLAGS} ${IDL_HEADER_ARG} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.h ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE})
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE} ${IDL_DEPENDS})
         list(APPEND HEADERS ${HEADER})
     endforeach()
     add_custom_target(${TARGET} ALL DEPENDS ${HEADERS})
@@ -98,7 +100,7 @@
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_p.c ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_p.h
             COMMAND ${IDL_COMPILER} ${INCLUDES} ${DEFINES} ${IDL_FLAGS} ${IDL_PROXY_ARG} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_p.c ${IDL_HEADER_ARG2} ${NAME}_p.h ${CMAKE_CURRENT_SOURCE_DIR}/${FILE} ${DLLDATA_ARG}
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE})
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE} ${IDL_DEPENDS})
     endforeach()
 
     # Extra pass to generate dlldata
@@ -113,7 +115,7 @@
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/proxy.dlldata.c
             COMMAND ${IDL_COMPILER} ${INCLUDES} ${DEFINES} ${IDL_FLAGS} --dlldata-only -o ${CMAKE_CURRENT_BINARY_DIR}/proxy.dlldata.c ${IDLS}
-            DEPENDS ${IDLS})
+            DEPENDS ${IDLS} ${IDL_DEPENDS})
     endif()
 endmacro()
 
@@ -125,13 +127,13 @@
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_s.c ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_s.h
             COMMAND ${IDL_COMPILER} ${INCLUDES} ${DEFINES} ${IDL_FLAGS} ${IDL_HEADER_ARG2} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_s.h ${IDL_SERVER_ARG} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_s.c ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE})
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE} ${IDL_DEPENDS})
         list(APPEND server_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_s.c)
 
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_c.c ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_c.h
             COMMAND ${IDL_COMPILER} ${INCLUDES} ${DEFINES} ${IDL_FLAGS} ${IDL_HEADER_ARG2} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_c.h ${IDL_CLIENT_ARG} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_c.c ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE})
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE} ${IDL_DEPENDS})
         list(APPEND client_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_c.c)
     endforeach()
     add_library(${TARGET} ${client_SOURCES} ${server_SOURCES})
@@ -151,7 +153,7 @@
     add_custom_command(
         OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_i.c
         COMMAND ${IDL_COMPILER} ${INCLUDES} ${DEFINES} ${IDL_FLAGS} ${IDL_INTERFACE_ARG} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}_i.c ${IDL_FILE_FULL}
-        DEPENDS ${IDL_FILE_FULL})
+        DEPENDS ${IDL_FILE_FULL} ${IDL_DEPENDS})
     set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${NAME}_i.c PROPERTIES GENERATED TRUE)
 endmacro()
 

Modified: trunk/reactos/cmake/msvc.cmake
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/msvc.cmake?rev=53088&r1=53087&r2=53088&view=diff
==============================================================================
--- trunk/reactos/cmake/msvc.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/msvc.cmake [iso-8859-1] Fri Aug  5 20:40:40 2011
@@ -146,7 +146,7 @@
     add_custom_command(
         OUTPUT ${CMAKE_BINARY_DIR}/importlibs/lib${_name}_stubs.asm ${CMAKE_BINARY_DIR}/importlibs/lib${_name}_exp.def
         COMMAND native-spec2def --ms --kill-at -a=${SPEC2DEF_ARCH} --implib -n=${_name}${_suffix} -d=${CMAKE_BINARY_DIR}/importlibs/lib${_name}_exp.def -l=${CMAKE_BINARY_DIR}/importlibs/lib${_name}_stubs.asm ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file}
-        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file})
+        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_exports_file} native-spec2def)
 
     # Assemble the stub file
     add_custom_command(
@@ -185,7 +185,7 @@
     add_custom_command(
         OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_file}.def ${CMAKE_CURRENT_BINARY_DIR}/${_file}_stubs.c
         COMMAND native-spec2def --ms --kill-at -a=${SPEC2DEF_ARCH} -n=${_dllname} -d=${CMAKE_CURRENT_BINARY_DIR}/${_file}.def -s=${CMAKE_CURRENT_BINARY_DIR}/${_file}_stubs.c ${CMAKE_CURRENT_SOURCE_DIR}/${_spec_file}
-        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_spec_file})
+        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_spec_file} native-spec2def)
     set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_file}.def ${CMAKE_CURRENT_BINARY_DIR}/${_file}_stubs.c
         PROPERTIES GENERATED TRUE)
 endmacro()
@@ -217,7 +217,7 @@
     add_custom_command(
         OUTPUT ${_binary_file}
         COMMAND native-obj2bin ${_object_file} ${_binary_file} ${_base_address}
-        DEPENDS ${_object_file})
+        DEPENDS ${_object_file} native-obj2bin)
 
     set_source_files_properties(${_object_file} ${_temp_file} ${_binary_file} PROPERTIES GENERATED TRUE)
 

Modified: trunk/reactos/include/asm/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/asm/CMakeLists.txt?rev=53088&r1=53087&r2=53088&view=diff
==============================================================================
--- trunk/reactos/include/asm/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/include/asm/CMakeLists.txt [iso-8859-1] Fri Aug  5 20:40:40 2011
@@ -21,7 +21,7 @@
 add_custom_command(
     OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_filename}.inc
     COMMAND native-geninc ${genincdata_dll} ${CMAKE_CURRENT_BINARY_DIR}/${_filename}.inc ${OPT_MS}
-    DEPENDS genincdata)
+    DEPENDS genincdata native-geninc)
 
 add_custom_target(asm
     DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_filename}.inc)

Modified: trunk/reactos/media/vgafonts/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/media/vgafonts/CMakeLists.txt?rev=53088&r1=53087&r2=53088&view=diff
==============================================================================
--- trunk/reactos/media/vgafonts/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/media/vgafonts/CMakeLists.txt [iso-8859-1] Fri Aug  5 20:40:40 2011
@@ -12,7 +12,7 @@
 
 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/vgafonts.cab
                    COMMAND native-cabman -M raw -S ${CMAKE_CURRENT_BINARY_DIR}/vgafonts.cab ${SOURCE}
-                   DEPENDS ${SOURCE})
+                   DEPENDS ${SOURCE} native-cabman)
                    
 add_custom_target(vgafonts DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/vgafonts.cab)
 

Modified: trunk/reactos/subsystems/win32/win32k/CMakeLists.txt
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/CMakeLists.txt?rev=53088&r1=53087&r2=53088&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/CMakeLists.txt [iso-8859-1] Fri Aug  5 20:40:40 2011
@@ -22,7 +22,8 @@
 
 add_custom_command(
     OUTPUT ${GENDIB_FILES}
-    COMMAND native-gendib ${CMAKE_CURRENT_BINARY_DIR}/dib)
+    COMMAND native-gendib ${CMAKE_CURRENT_BINARY_DIR}/dib
+    DEPENDS native-gendib)
 
 list(APPEND SOURCE
     dib/alphablend.c




More information about the Ros-diffs mailing list