User macro reference

add_message_files(DIRECTORY dir FILES file1 [file2...] [PACKAGE pkgname] [NOINSTALL])
Parameters:
  • DIRECTORY – Directory containing messages. May be absolute or relative to CMAKE_CURRENT_SOURCE_DIR.
  • FILES – Files containing messages, relative to msgdir
  • PACKAGE – Optional alternate packagename (if the current project doesn’t match the desired namespace for the messages)
  • NOINSTALL – Do not automatically install the messages to the package’s share/ directory.

Register the listed files as requiring message generation and installation.

add_service_files(DIRECTORY dir FILES file1 [file2...] [PACKAGE pkgname] [NOINSTALL])

Same as add_message_files… but for services.

generate_messages(DEPENDENCIES deps [LANGS lang1 lang2...])
Parameters:
  • DEPENDENCIES – Names of packages containing messages contained by messages in the current package. Got it? i.e. if one of our messages contains std_msgs.Header, std_msgs should appear in this list.
  • LANGS – Restrict generation to the listed languages.

Triggers the generation of message generation targets. i.e. in project foo with generators gencpp and genpy accessible in the workspace, triggers creation of targets foo_gencpp and foo_genpy.