@@ -12,31 +12,42 @@ if(NOT YUMI_HARDWARE_INTERFACE)
12
12
set (YUMI_HARDWARE_INTERFACE "EffortJointInterface" )
13
13
endif ()
14
14
15
- set (YUMI_XACRO ${CMAKE_CURRENT_SOURCE_DIR} /urdf/yumi.urdf.xacro)
16
15
set (YUMI_URDF_DIR ${CATKIN_DEVEL_PREFIX} /${CATKIN_PACKAGE_SHARE_DESTINATION} /urdf)
16
+ set (YUMI_URDF_XACRO ${CMAKE_CURRENT_SOURCE_DIR} /urdf/yumi.urdf.xacro)
17
17
set (YUMI_URDF ${YUMI_URDF_DIR} /yumi.urdf)
18
+ set (YUMI_SRDF_XACRO ${CMAKE_CURRENT_SOURCE_DIR} /urdf/yumi.srdf.xacro)
19
+ set (YUMI_SRDF ${YUMI_URDF_DIR} /yumi.srdf)
18
20
19
21
file (MAKE_DIRECTORY "${YUMI_URDF_DIR} " )
20
22
21
23
# Call out to xacro to get dependencies
22
- execute_process (COMMAND ${CATKIN_ENV} rosrun xacro xacro --deps ${YUMI_XACRO}
23
- ERROR_VARIABLE _xacro_err_ignore
24
- OUTPUT_VARIABLE _xacro_deps_result
25
- OUTPUT_STRIP_TRAILING_WHITESPACE)
24
+ macro (build_xacro infile outfile argstring)
25
+ execute_process (COMMAND ${CATKIN_ENV} rosrun xacro xacro --deps ${infile}
26
+ ERROR_VARIABLE _xacro_err_ignore
27
+ OUTPUT_VARIABLE _xacro_deps_result
28
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
26
29
27
- separate_arguments (_xacro_deps_result)
30
+ separate_arguments (_xacro_deps_result)
28
31
29
- add_custom_command (OUTPUT ${YUMI_URDF}
30
- COMMENT "Generating YuMi URDF"
31
- COMMAND ${CATKIN_ENV} rosrun xacro xacro
32
- ARGS -o ${YUMI_URDF} ${YUMI_XACRO} ${_xacro_deps_result} prefix :=${YUMI_HARDWARE_INTERFACE}
33
- DEPENDS ${YUMI_XACRO} ${_xacro_deps_result} )
32
+ add_custom_command (OUTPUT ${outfile}
33
+ COMMENT "Generating ${outfile} "
34
+ COMMAND ${CATKIN_ENV} rosrun xacro xacro
35
+ ARGS -o ${outfile} ${infile} ${_xacro_deps_result} ${argstring}
36
+ DEPENDS ${infile} ${_xacro_deps_result} )
37
+ endmacro (build_xacro)
34
38
35
- # add target to actually cause generation
36
- add_custom_target (description_files ALL DEPENDS ${YUMI_URDF} )
39
+ build_xacro( ${YUMI_URDF_XACRO} ${YUMI_URDF} "prefix:= ${YUMI_HARDWARE_INTERFACE} " )
40
+ build_xacro( ${YUMI_SRDF_XACRO} ${YUMI_SRDF} "" )
37
41
38
- install (FILES ${YUMI_URDF}
39
- DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} /urdf/)
42
+ # add target to actually cause generation
43
+ add_custom_target (description_files ALL DEPENDS
44
+ ${YUMI_URDF}
45
+ ${YUMI_SRDF} )
46
+
47
+ install (FILES
48
+ ${YUMI_URDF}
49
+ ${YUMI_SRDF}
50
+ DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} /urdf/)
40
51
41
52
install (
42
53
DIRECTORY gazebo launch meshes
0 commit comments