Eduard Bloch wrote: > CONFIGURE_FILE is used (see below) to adopt an autoconf-style config > file, however the result is not cleaned up when the clean target is run. > It is not that bad as long as the generated file is not shipped and so > the generation is triggered on users machine, but when something > unexpected happens then the build will get xconfig.h with wrong > contents. [snip] > How can I make sure that autogenerated files are removed? I tried > setting ADDITIONAL_MAKE_CLEAN_FILES even with complete path, it does not > help. [snip] > CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/xconfig.h.in > ${CMAKE_CURRENT_SOURCE_DIR}/xconfig.h)
With an out of source build no generated file can ever be shipped with the source. You should configure the file to ${CMAKE_CURRENT_BINARY_DIR}/xconfig.h instead. Then you don't have to worry about whether it is cleaned out of the source tree. > SET_SOURCE_FILES_PROPERTIES(xconfig.h PROPERTIES GENERATED 1) This is not necessary. This property is only for outputs of ADD_CUSTOM_COMMAND, and it is now automatically added in that case. What documentation did you read that mentioned this? > SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES > ${CMAKE_CURRENT_SOURCE_DIR}/xconfig.h ADDITIONAL_MAKE_CLEAN_FILES > ${CMAKE_CURRENT_SOURCE_DIR}/align.h) The ADDITIONAL_MAKE_CLEAN_FILES property is a string. You have to append the list yourself and then reference the variable: LIST(APPEND tmps ${CMAKE_CURRENT_SOURCE_DIR}/xconfig.h ${CMAKE_CURRENT_SOURCE_DIR}/align.h) SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${tmps}") -Brad _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake