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=53…
==============================================================================
--- 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&…
==============================================================================
--- 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?re…
==============================================================================
--- 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…
==============================================================================
--- 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…
==============================================================================
--- 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.…
==============================================================================
--- 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/CM…
==============================================================================
--- 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