Forced serialization of msg/srv generation, #1828

This commit is contained in:
Brian Gerkey 2009-10-02 19:21:05 +00:00
parent 0723dd04c4
commit d605344804
1 changed files with 15 additions and 3 deletions

View File

@ -15,10 +15,16 @@ macro(genmsg_py)
set(_output_py ${PROJECT_SOURCE_DIR}/src/${PROJECT_NAME}/msg/_${_msg})
string(REPLACE ".msg" ".py" _output_py ${_output_py})
# Add the rule to build the .h the .msg
# Add the rule to build the .h the .msg.
#
# Note the dependency on ${_autogen}. This is done to force serial
# execution of the message-generation steps, because genmsg_py is not
# parallel-safe. When that's fixed
# (https://code.ros.org/trac/ros/ticket/1827), this dependency can be
# removed.
add_custom_command(OUTPUT ${_output_py}
COMMAND ${genmsg_py_exe} ${_input}
DEPENDS ${_input} ${genmsg_py_exe} ${gendeps_exe} ${${PROJECT_NAME}_${_msg}_GENDEPS} ${ROS_MANIFEST_LIST})
DEPENDS ${_input} ${genmsg_py_exe} ${gendeps_exe} ${${PROJECT_NAME}_${_msg}_GENDEPS} ${ROS_MANIFEST_LIST} ${_autogen})
list(APPEND _autogen ${_output_py})
endforeach(_msg)
# Create a target that depends on the union of all the autogenerated
@ -48,9 +54,15 @@ macro(gensrv_py)
string(REPLACE ".srv" ".py" _output_py ${_output_py})
# Add the rule to build the .h from the .srv
#
# Note the dependency on ${_autogen}. This is done to force serial
# execution of the service-generation steps, because genmsg_py is not
# parallel-safe. When that's fixed
# (https://code.ros.org/trac/ros/ticket/1827), this dependency can be
# removed.
add_custom_command(OUTPUT ${_output_py}
COMMAND ${gensrv_py_exe} ${_input}
DEPENDS ${_input} ${gensrv_py_exe} ${gendeps_exe} ${${PROJECT_NAME}_${_srv}_GENDEPS} ${ROS_MANIFEST_LIST})
DEPENDS ${_input} ${gensrv_py_exe} ${gendeps_exe} ${${PROJECT_NAME}_${_srv}_GENDEPS} ${ROS_MANIFEST_LIST} ${_autogen})
list(APPEND _autogen ${_output_py})
endforeach(_srv)
# Create a target that depends on the union of all the autogenerated