[ros-users] rosmake --dist?

Bill Morris morris at ee.ccny.cuny.edu
Mon May 31 19:55:00 UTC 2010


If I add this to CMakeLists.txt

add_custom_target(distclean rm -r ${PROJECT_SOURCE_DIR}/bin
  COMMAND rm -r ${PROJECT_SOURCE_DIR}/build
  COMMAND rm -r ${PROJECT_SOURCE_DIR}/CMakeFiles
  COMMAND rm ${PROJECT_SOURCE_DIR}/CMakeCache.txt
  COMMAND rm ${PROJECT_SOURCE_DIR}/cmake_install.cmake
  COMMAND rm ${PROJECT_SOURCE_DIR}/Makefile
  COMMAND perl -e 'print qq|include \\x24\(shell rospack find mk
\)/cmake.mk|' > ${PROJECT_SOURCE_DIR}/Makefile
  WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
  COMMENT "Preparing for distribution")

This does not work...
$ rosmake --target=distclean my_pkg

[rosmake-1] >>> xmlrpcpp >>> [ make distclean ]
[ rosmake ] All 1 lines
{-------------------------------------------------------------------------------
-------------------------------------------------------------------------------}
[rosmake-1] <<< xmlrpcpp <<< [SKIP] No rule to make target distclean
[ rosmake ] Halting due to failure in package xmlrpcpp.


This does not work either...
$ rosmake -r --target=distclean my_pkg

[rosmake-1] >>> my_pkg >>> [ make distclean ]
[ rosmake ] All 1 lines
{-------------------------------------------------------------------------------
-------------------------------------------------------------------------------}
[rosmake-1] <<< my_pkg <<< [SKIP] No rule to make target distclean


This seems to work
$ cmake CMakeLists.txt &&  make distclean

Is there a better way to do this?

On Sun, 2010-05-30 at 23:39 -0400, Bill Morris wrote: 
> Is there anything that prepares a package for check-in to version
> control?
> 
> I would like a build target like $ rosmake --dist package_name that
> removes
> 
> bin/
> build/
> CMakeCache.txt
> CMakeFiles
> cmake_install.cmake
> 
> and sets the contents of Makefile to
> "include $(shell rospack find mk)/cmake.mk"





More information about the ros-users mailing list