Skip to content

ROS cmake usage tips

Install directory set permission and filter

1
2
3
4
install(DIRECTORY bin/
        DESTINATION share/${PROJECT_NAME}
        FILES_MATCHING PATTERN "*.py"
        PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_EXECUTE WORLD_EXECUTE)

Install file set permission

1
2
3
install(FILES config.yaml
        DESTINATION share/${PROJECT_NAME}/config
        PERMISSIONS OWNER_READ GROUP_READ WORLD_READ)

Architecture Detection

1
2
3
4
5
6
7
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
  message(STATUS "Building for x86_64 architecture")
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
  message(STATUS "Building for ARM64 (aarch64)")
else()
  message(STATUS "Unknown architecture: ${CMAKE_SYSTEM_PROCESSOR}")
endif()