* Add fault injection macros and unit tests to rcl_lifecycle
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Address feedback
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* PR Fixup
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Increase test coverage and add more safety checks
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* More coverage
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Concatenating error messages
Signed-off-by: Stephen Brawner <stephenbrawner@verbsurgical.com>
* PR Fixup
Signed-off-by: Stephen Brawner <stephenbrawner@verbsurgical.com>
* Forgot a
Signed-off-by: Stephen Brawner <stephenbrawner@verbsurgical.com>
* PR Fixup
Signed-off-by: Stephen Brawner <stephenbrawner@verbsurgical.com>
* Moving var to top
Signed-off-by: Stephen Brawner <stephenbrawner@verbsurgical.com>
Co-authored-by: Stephen Brawner <stephenbrawner@verbsurgical.com>
* Using ament_target_dependencies where possible
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
* Modified rcl_add_custom_* to use AMENT_DEPENDENCIES where possible
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
* Added again osrf_testing_tools_cpp::memory_tools library where needed.
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
* Modified with PR comment, and replaced forgotten osrf_testing_tools_cpp including
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
* Set symbol visibility to hidden for rcl
Enabling symbol visibility feature in gcc and clang compilers.
This will hep find symbol export related issues in linux and
potentially reduce compile times.
Discourse topic link:
https://discourse.ros.org/t/set-symbol-visibility-to-hidden-for-rmw-and-rcl-packages/7981
Signed-off-by: Sachin Suresh Bhat <bhatsach@amazon.com>
* Remove WIN specific compiler definition in configure_rcl
Signed-off-by: Sachin Suresh Bhat <bhatsach@amazon.com>
* Rename macro name rcl_set_symbol_visibility_hidden
Signed-off-by: Sachin Suresh Bhat <bhatsach@amazon.com>
* Change macro to args for rcl_set_symbol_visibility_hidden
Signed-off-by: Sachin Suresh Bhat <bhatsach@amazon.com>
* refactor init to not be global
Signed-off-by: William Woodall <william@osrfoundation.org>
* style changes
Signed-off-by: William Woodall <william@osrfoundation.org>
* refactor to hide use of C11 atomics in implementation
Signed-off-by: William Woodall <william@osrfoundation.org>
* fix new action tests
Signed-off-by: William Woodall <william@osrfoundation.org>
* use alternative atomic init for Windows support
* updates after rebase
Signed-off-by: William Woodall <william@osrfoundation.org>
* cleanup rmw_init_options before copying
Signed-off-by: William Woodall <william@osrfoundation.org>
* fix two bugs in new init code
* relax validity checks in a few places to facilitate post shutdown cleanup
Signed-off-by: William Woodall <william@osrfoundation.org>
* fixing tests for new API behavior
Signed-off-by: William Woodall <william@osrfoundation.org>
* to allocator -> to allocate
* acutally call rmw_shutdown() and address review comments
Signed-off-by: William Woodall <william@osrfoundation.org>
* use rcl_allocator for rcl_lifecycle
* correct return value interpretation
* fix unsigned comparison
* use namespace for lifecycle in-built topics
* linters
* Explicitly set C99 and C++14 via the CMake variables
* Enable passing CMAKE_C_STANDARD and CMAKE_CXX_STANDARD externally
* Use add_compile_options
* Be more specific about the compiler, independent from the OS
* Check compiler, not OS. Use add_compile_options instead of CMAKE_C_FLAGS and CMAKE_CXX_FLAGS
* add_compile_options() takes a list, not a string
* switch to c11 because of redefinition warnings
avoid typedef redifinition warning on macos
remove todo, compiler come from redefinition of typedef