44cmake_minimum_required (VERSION 3.10)
55project (opentelemetry-cpp-component -install -tests LANGUAGES CXX)
66
7- if (CXX_STANDARD)
8- message (STATUS "CMAKE_CXX_STANDARD is set from CXX_STANDARD=${CXX_STANDARD} " )
9- set (CMAKE_CXX_STANDARD $CXX_STANDARD)
10- else ()
11- set (CMAKE_CXX_STANDARD 14)
12- message (
13- STATUS "CMAKE_CXX_STANDARD is set to default of ${CMAKE_CXX_STANDARD} " )
7+ if (NOT INSTALL_TEST_CMAKE_OPTIONS)
8+ set (INSTALL_TEST_CMAKE_OPTIONS
9+ "-DCMAKE_CXX_STANDARD=14 -DCMAKE_BUILD_TYPE=Debug" )
1410endif ()
1511
16- include (${CMAKE_SOURCE_DIR} /../../../cmake/component -definitions .cmake)
12+ separate_arguments (INSTALL_TEST_CMAKE_OPTIONS)
13+
14+ message (
15+ STATUS "INSTALL_TEST_CMAKE_OPTIONS is set to ${INSTALL_TEST_CMAKE_OPTIONS} " )
16+
17+ find_package (opentelemetry-cpp CONFIG REQUIRED)
1718
18- # Check that COMPONENTS_TO_TEST is set and contains valid components
19- if (NOT COMPONENTS_TO_TEST)
20- message (FATAL_ERROR "COMPONENTS_TO_TEST is not set" )
19+ message (
20+ STATUS
21+ "OPENTELEMETRY_CPP_COMPONENTS_INSTALLED = ${OPENTELEMETRY_CPP_COMPONENTS_INSTALLED} "
22+ )
23+
24+ # Check that INSTALL_TEST_COMPONENTS is set and contains installed components
25+ if (NOT INSTALL_TEST_COMPONENTS)
26+ message (
27+ STATUS
28+ "INSTALL_TEST_COMPONENTS is not set. Setting to OPENTELEMETRY_CPP_COMPONENTS_INSTALLED"
29+ )
30+ set (INSTALL_TEST_COMPONENTS ${OPENTELEMETRY_CPP_COMPONENTS_INSTALLED} )
2131else ()
2232 set (COMPONENTS_ARE_VALID TRUE )
23- foreach (component ${COMPONENTS_TO_TEST } )
24- if (NOT component IN_LIST opentelemetry-cpp_COMPONENTS )
33+ foreach (component ${INSTALL_TEST_COMPONENTS } )
34+ if (NOT component IN_LIST OPENTELEMETRY_CPP_COMPONENTS_INSTALLED )
2535 message (
2636 ERROR
27- " Component ${component} is not a valid opentelemetry-cpp component" )
37+ " Component ${component} is not an installed opentelemetry-cpp component"
38+ )
2839 set (COMPONENTS_ARE_VALID FALSE )
2940 endif ()
3041 endforeach ()
3142 if (NOT COMPONENTS_ARE_VALID)
32- message (FATAL_ERROR "COMPONENTS_TO_TEST contains invalid components" )
43+ message (FATAL_ERROR "INSTALL_TEST_COMPONENTS contains invalid components" )
3344 endif ()
3445endif ()
3546
47+ message (STATUS "INSTALL_TEST_COMPONENTS = ${INSTALL_TEST_COMPONENTS} " )
48+
3649set (INSTALL_TEST_SRC_DIR "${CMAKE_SOURCE_DIR} /../src" )
3750
3851enable_testing ()
@@ -53,31 +66,31 @@ add_test(
5366 ${CMAKE_COMMAND} --log -level=DEBUG -S
5467 ${CMAKE_SOURCE_DIR} /usage_tests/no_components -B
5568 build -cmake-usage-no -components-test
56- -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} )
69+ -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} ${INSTALL_TEST_CMAKE_OPTIONS} )
5770
5871add_test (
5972 NAME cmake-usage-unsorted-components-test
6073 COMMAND
6174 ${CMAKE_COMMAND} --log -level=DEBUG -S
6275 ${CMAKE_SOURCE_DIR} /usage_tests/unsorted_components -B
6376 build -cmake-usage-unsorted-components-test
64- -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} )
77+ -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} ${INSTALL_TEST_CMAKE_OPTIONS} )
6578
6679add_test (
6780 NAME cmake-usage-missing-components-test
6881 COMMAND
6982 ${CMAKE_COMMAND} --log -level=DEBUG -S
7083 ${CMAKE_SOURCE_DIR} /usage_tests/missing_components -B
7184 build -cmake-usage-missing-components-test
72- -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} )
85+ -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} ${INSTALL_TEST_CMAKE_OPTIONS} )
7386
7487add_test (
7588 NAME cmake-usage-unsupported-components-test
7689 COMMAND
7790 ${CMAKE_COMMAND} --log -level=DEBUG -S
7891 ${CMAKE_SOURCE_DIR} /usage_tests/unsupported_components -B
7992 build -cmake-usage-unsupported-components-test
80- -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} )
93+ -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} ${INSTALL_TEST_CMAKE_OPTIONS} )
8194
8295# -----------------------------------------------------------
8396# Test the full package install using legacy cmake build instructions
@@ -89,6 +102,8 @@ add_test(
89102 COMMAND
90103 ${CMAKE_COMMAND} --log -level=DEBUG -S ${CMAKE_SOURCE_DIR} /package_test -B
91104 build -full-package-test -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
105+ ${INSTALL_TEST_CMAKE_OPTIONS}
106+ -DINSTALL_TEST_COMPONENTS=${INSTALL_TEST_COMPONENTS}
92107 -DINSTALL_TEST_SRC_DIR=${INSTALL_TEST_SRC_DIR} )
93108
94109# Build the full package test executable
@@ -103,14 +118,15 @@ add_test(NAME full-package-run-test
103118
104119# -----------------------------------------------------------
105120# Loop over all the components to test
106- foreach (component ${COMPONENTS_TO_TEST } )
121+ foreach (component ${INSTALL_TEST_COMPONENTS } )
107122 # Test cmake configuration
108123 add_test (
109124 NAME component -${component} -cmake-config-test
110125 COMMAND
111126 ${CMAKE_COMMAND} --log -level=DEBUG -S
112127 ${CMAKE_SOURCE_DIR} /component_tests/${component} -B
113128 build -${component} -test -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
129+ ${INSTALL_TEST_CMAKE_OPTIONS}
114130 -DINSTALL_TEST_SRC_DIR=${INSTALL_TEST_SRC_DIR} )
115131
116132 # Build the component test executable
0 commit comments