2009/9/9 Bob Tanner <[email protected]>:
> I must be missing something simple?
>
> During "make install" I only want to install a set of files if the do not
> exist in destination.
>
> MACRO (COPY_IF_DOES_NOT_EXIST SOURCE DESTINATION)
>        ADD_CUSTOM_COMMAND (
>                TARGET COPY
>                IF (NOT EXISTS ${DESTINATION})
>                        COMMAND ${CMAKE_COMMAND} -E copy ${SOURCE}
> ${DESTINATION}
>                ENDIF (NOT EXISTS ${DESTINATION})
>        )
>
>        ADD_CUSTOM_TARGET (
>                COPY ALL
>                COMMENT "Copy file: ${SOURCE} ${DESTINATION}"
>        )
>
> ENDMACRO (COPY_IF_DOES_NOT_EXIST SOURCE DESTINATION)
>
> Works the first time, but if I delete the destination file a make install
> won't install it again.

With your current macro the file is "installed" at CMake run time and
not during "make install".

You may check that fact if you rerun cmake the file is copied again.

You should look at the install(SCRIPT or install(CODE  command
in order to execute CMake script at "install time".




-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
_______________________________________________
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

Reply via email to