CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. # Copyright The OpenTelemetry Authors
  2. # SPDX-License-Identifier: Apache-2.0
  3. include(GoogleTest)
  4. add_library(component_a STATIC component_a.cc)
  5. target_link_libraries(component_a opentelemetry_api)
  6. add_library(component_b STATIC component_b.cc)
  7. target_link_libraries(component_b opentelemetry_api)
  8. add_library(component_c SHARED component_c.cc)
  9. set_target_properties(component_c PROPERTIES CXX_VISIBILITY_PRESET default)
  10. target_link_libraries(component_c opentelemetry_api)
  11. add_library(component_d SHARED component_d.cc)
  12. set_target_properties(component_d PROPERTIES CXX_VISIBILITY_PRESET hidden)
  13. target_link_libraries(component_d opentelemetry_api)
  14. add_library(component_e SHARED component_e.cc)
  15. set_target_properties(component_e PROPERTIES CXX_VISIBILITY_PRESET default)
  16. target_link_libraries(component_e opentelemetry_api)
  17. add_library(component_f SHARED component_f.cc)
  18. set_target_properties(component_f PROPERTIES CXX_VISIBILITY_PRESET hidden)
  19. target_link_libraries(component_f opentelemetry_api)
  20. add_library(component_g SHARED component_g.cc)
  21. set_target_properties(component_g PROPERTIES CXX_VISIBILITY_PRESET default)
  22. target_link_libraries(component_g opentelemetry_api)
  23. add_library(component_h SHARED component_h.cc)
  24. set_target_properties(component_h PROPERTIES CXX_VISIBILITY_PRESET hidden)
  25. target_link_libraries(component_h opentelemetry_api)
  26. add_executable(singleton_test singleton_test.cc)
  27. # Not linking with component_g and component_h on purpose
  28. target_link_libraries(
  29. singleton_test
  30. component_a
  31. component_b
  32. component_c
  33. component_d
  34. component_e
  35. component_f
  36. ${GTEST_BOTH_LIBRARIES}
  37. ${CMAKE_THREAD_LIBS_INIT}
  38. ${CMAKE_DL_LIBS}
  39. opentelemetry_api)
  40. gtest_add_tests(
  41. TARGET singleton_test
  42. TEST_PREFIX singleton.
  43. TEST_LIST singleton_test)