aboutsummaryrefslogtreecommitdiff
path: root/third_party/marl/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/marl/CMakeLists.txt')
-rw-r--r--third_party/marl/CMakeLists.txt6
1 files changed, 6 insertions, 0 deletions
diff --git a/third_party/marl/CMakeLists.txt b/third_party/marl/CMakeLists.txt
index c84076da2..5f17ee86a 100644
--- a/third_party/marl/CMakeLists.txt
+++ b/third_party/marl/CMakeLists.txt
@@ -46,6 +46,7 @@ option_if_not_defined(MARL_BUILD_EXAMPLES "Build example applications" OFF)
option_if_not_defined(MARL_BUILD_TESTS "Build tests" OFF)
option_if_not_defined(MARL_BUILD_BENCHMARKS "Build benchmarks" OFF)
option_if_not_defined(MARL_BUILD_SHARED "Build marl as a shared / dynamic library (default static)" OFF)
+option_if_not_defined(MARL_USE_PTHREAD_THREAD_LOCAL "Use pthreads for thread local storage" OFF)
option_if_not_defined(MARL_ASAN "Build marl with address sanitizer" OFF)
option_if_not_defined(MARL_MSAN "Build marl with memory sanitizer" OFF)
option_if_not_defined(MARL_TSAN "Build marl with thread sanitizer" OFF)
@@ -224,6 +225,11 @@ function(marl_set_target_options target)
endif()
endif(MARL_WARNINGS_AS_ERRORS)
+ if(MARL_USE_PTHREAD_THREAD_LOCAL)
+ target_compile_definitions(${target} PRIVATE "MARL_USE_PTHREAD_THREAD_LOCAL=1")
+ target_link_libraries(${target} PUBLIC pthread)
+ endif()
+
if(MARL_ASAN)
target_compile_options(${target} PUBLIC "-fsanitize=address")
target_link_libraries(${target} PUBLIC "-fsanitize=address")