On 01/05/2011 02:13 PM, Reinhard Thies wrote:
> On Wednesday 05 January 2011 12:32:52 David Cole wrote:
>> You can't depend on "package", but you can do this as your custom
>> target's command:
>>
>>   cmake --build . --target package --config Release
>>   scp ...
>>
> that the way I have it 
> ADD_CUSTOM_TARGET(delivery                                                    
>                                  
>         rm -rf ${CMAKE_PROJECT_NAME}*.tar.gz                                  
>                                  
>         COMMAND make package                                                  
>                                  
>         COMMAND scp ${CMAKE_PROJECT_NAME}*.tar.gz ds:/srv/repos/bin           
>           
> )                                                                             
>                                  
> 
> I just thought there might be a better way.
> 
> thx,
> Reinhard

If you *know* that you *always*

- have a POSIX shell
- use a Makefile generator
- have scp installed on host and target machine

then things are fine, otherwise this will fail. If you used

find_program(SCP_EXECUTABLE scp)
if(SCP_EXECUTABLE)
add_custom_target(delivery
  COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_PROJECT_NAME}*.tar.gz
  COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR}
                           --target package
                           --config Release
  COMMAND ${SCP_EXECUTABLE} ${CMAKE_PROJECT_NAME}*.tar.gz
                            ds:/srv/repos/bin)
else()
  message(SEND_ERROR "Require scp for the delivery target")
endif()

you at least wouldn't require a POSIX shell, don't have to care about
the build system and check that you actually have scp.

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

Reply via email to