On 31. Mar, 2010, at 12:07 , elizabeta petreska wrote:
> Hello
>
> I am using cmake 2.8 to generate Visual Studio 2010 solution files.
>
> I have the following cmakelists.txt :
>
> set(PROJECT_NAME Test2)
> PROJECT(${PROJECT_NAME})
>
> FILE(GLOB Test_SRCS
> main.cpp
> )
>
>
> ADD_EXECUTABLE(${PROJECT_NAME}
> ${Test_SRCS}
> )
>
>
> ADD_CUSTOM_COMMAND (OUTPUT "$(ConfigurationName)/Foo.txt"
> COMMAND echo Foo > "$(ConfigurationName)/Foo.txt"
> DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/myfile.txt
> )
> ADD_CUSTOM_TARGET (Foo DEPENDS "$(ConfigurationName)/Foo.txt")
> ADD_DEPENDENCIES(${PROJECT_NAME} Foo)
>
> The problem is that Foo.txt is generated on every build on the solution
> although myfile.txt is not changed.
Use absolute paths in the OUTPUT and DEPENDS options. And you should also use
the CMAKE_CFG_INTDIR variable instead of $(ConfigurationName)...
set(outfile "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/Foo.txt")
add_custom_command(OUTPUT "${outfile}"
COMMAND echo Foo > "${outfile}"
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/myfile.txt"
)
add_custom_target(Foo DEPENDS "${outfile}")
HTH
Michael
_______________________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake