@@ -83,13 +83,28 @@ BAZEL_MACOS_TEST_OPTIONS="$BAZEL_MACOS_OPTIONS --test_output=errors"
8383
8484BAZEL_STARTUP_OPTIONS=" --output_user_root=$HOME /.cache/bazel"
8585
86- CMAKE_OPTIONS=(-DCMAKE_BUILD_TYPE=Debug)
87- if [ ! -z " ${CXX_STANDARD} " ]; then
88- CMAKE_OPTIONS=(${CMAKE_OPTIONS[@]} " -DCMAKE_CXX_STANDARD=${CXX_STANDARD} " )
86+ if [[ " ${BUILD_TYPE} " =~ ^(Debug| Release| RelWithDebInfo| MinSizeRel)$ ]]; then
87+ CMAKE_OPTIONS=(-DCMAKE_BUILD_TYPE=${BUILD_TYPE} )
8988else
90- CMAKE_OPTIONS=(${CMAKE_OPTIONS[@]} " -DCMAKE_CXX_STANDARD=14 " )
89+ CMAKE_OPTIONS=(-DCMAKE_BUILD_TYPE=Debug )
9190fi
9291
92+ if [ -n " ${CXX_STANDARD} " ]; then
93+ CMAKE_OPTIONS+=(" -DCMAKE_CXX_STANDARD=${CXX_STANDARD} " )
94+ else
95+ CMAKE_OPTIONS+=(" -DCMAKE_CXX_STANDARD=14" )
96+ fi
97+
98+ CMAKE_OPTIONS+=(" -DCMAKE_CXX_STANDARD_REQUIRED=ON" )
99+ CMAKE_OPTIONS+=(" -DCMAKE_CXX_EXTENSIONS=OFF" )
100+
101+ if [ -n " $CMAKE_TOOLCHAIN_FILE " ]; then
102+ echo " CMAKE_TOOLCHAIN_FILE is set to: $CMAKE_TOOLCHAIN_FILE "
103+ CMAKE_OPTIONS+=(" -DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE " )
104+ fi
105+
106+ echo " CMAKE_OPTIONS: ${CMAKE_OPTIONS[@]} "
107+
93108export CTEST_OUTPUT_ON_FAILURE=1
94109
95110if [[ " $1 " == " cmake.test" ]]; then
@@ -242,10 +257,23 @@ elif [[ "$1" == "cmake.opentracing_shim.test" ]]; then
242257 make test
243258 make install
244259 export LD_LIBRARY_PATH=" ${INSTALL_TEST_DIR} /lib:$LD_LIBRARY_PATH "
260+ CMAKE_OPTIONS_STRING=$( IFS=" " ; echo " ${CMAKE_OPTIONS[*]} " )
261+ EXPECTED_COMPONENTS=(
262+ " api"
263+ " sdk"
264+ " ext_common"
265+ " ext_http_curl"
266+ " exporters_in_memory"
267+ " exporters_ostream"
268+ " shims_opentracing"
269+ )
270+ EXPECTED_COMPONENTS_STRING=$( IFS=\; ; echo " ${EXPECTED_COMPONENTS[*]} " )
245271 cmake -S " ${SRC_DIR} /install/test/cmake" \
246272 -B " ${BUILD_DIR} /install_test" \
273+ " ${CMAKE_OPTIONS[@]} " \
247274 " -DCMAKE_PREFIX_PATH=${INSTALL_TEST_DIR} " \
248- " -DCOMPONENTS_TO_TEST=shims_opentracing"
275+ " -DINSTALL_TEST_CMAKE_OPTIONS=${CMAKE_OPTIONS_STRING} " \
276+ " -DINSTALL_TEST_COMPONENTS=${EXPECTED_COMPONENTS} "
249277 ctest --test-dir " ${BUILD_DIR} /install_test" --output-on-failure
250278 exit 0
251279elif [[ " $1 " == " cmake.c++20.test" ]]; then
@@ -423,14 +451,29 @@ elif [[ "$1" == "cmake.do_not_install.test" ]]; then
423451 cd exporters/otlp && make test
424452 exit 0
425453elif [[ " $1 " == " cmake.install.test" ]]; then
454+ if [[ -n " ${BUILD_SHARED_LIBS} " && " ${BUILD_SHARED_LIBS} " == " ON" ]]; then
455+ CMAKE_OPTIONS+=(" -DBUILD_SHARED_LIBS=ON" )
456+ echo " BUILD_SHARED_LIBS is set to: ON"
457+ else
458+ CMAKE_OPTIONS+=(" -DBUILD_SHARED_LIBS=OFF" )
459+ echo " BUILD_SHARED_LIBS is set to: OFF"
460+ fi
461+ CMAKE_OPTIONS+=(" -DCMAKE_POSITION_INDEPENDENT_CODE=ON" )
462+
426463 cd " ${BUILD_DIR} "
427464 rm -rf *
428465 rm -rf ${INSTALL_TEST_DIR} /*
466+
429467 cmake " ${CMAKE_OPTIONS[@]} " \
430468 -DCMAKE_INSTALL_PREFIX=${INSTALL_TEST_DIR} \
431- -DWITH_ABSEIL=ON \
469+ -DWITH_ABI_VERSION_1=OFF \
470+ -DWITH_ABI_VERSION_2=ON \
471+ -DWITH_ABSEIL=OFF \
432472 -DWITH_METRICS_EXEMPLAR_PREVIEW=ON \
433473 -DWITH_ASYNC_EXPORT_PREVIEW=ON \
474+ -DWITH_THREAD_INSTRUMENTATION_PREVIEW=ON \
475+ -DWITH_OTLP_GRPC_SSL_MTLS_PREVIEW=ON \
476+ -DWITH_OTLP_RETRY_PREVIEW=ON \
434477 -DWITH_OTLP_GRPC=ON \
435478 -DWITH_OTLP_HTTP=ON \
436479 -DWITH_OTLP_FILE=ON \
@@ -439,15 +482,40 @@ elif [[ "$1" == "cmake.install.test" ]]; then
439482 -DWITH_PROMETHEUS=ON \
440483 -DWITH_ZIPKIN=ON \
441484 -DWITH_ELASTICSEARCH=ON \
485+ -DWITH_EXAMPLES=ON \
442486 -DOPENTELEMETRY_INSTALL=ON \
443487 " ${SRC_DIR} "
488+
444489 make -j $( nproc)
490+ make test
445491 make install
446492 export LD_LIBRARY_PATH=" ${INSTALL_TEST_DIR} /lib:$LD_LIBRARY_PATH "
493+
494+ CMAKE_OPTIONS_STRING=$( IFS=" " ; echo " ${CMAKE_OPTIONS[*]} " )
495+
496+ EXPECTED_COMPONENTS=(
497+ " api"
498+ " sdk"
499+ " ext_common"
500+ " ext_http_curl"
501+ " exporters_in_memory"
502+ " exporters_ostream"
503+ " exporters_otlp_common"
504+ " exporters_otlp_file"
505+ " exporters_otlp_grpc"
506+ " exporters_otlp_http"
507+ " exporters_prometheus"
508+ " exporters_elasticsearch"
509+ " exporters_zipkin"
510+ )
511+ EXPECTED_COMPONENTS_STRING=$( IFS=\; ; echo " ${EXPECTED_COMPONENTS[*]} " )
512+
447513 cmake -S " ${SRC_DIR} /install/test/cmake" \
448514 -B " ${BUILD_DIR} /install_test" \
515+ " ${CMAKE_OPTIONS[@]} " \
449516 " -DCMAKE_PREFIX_PATH=${INSTALL_TEST_DIR} " \
450- " -DCOMPONENTS_TO_TEST=api;sdk;ext_common;ext_http_curl;exporters_in_memory;exporters_ostream;exporters_otlp_common;exporters_otlp_file;exporters_otlp_grpc;exporters_otlp_http;exporters_prometheus;exporters_elasticsearch;exporters_zipkin"
517+ " -DINSTALL_TEST_CMAKE_OPTIONS=${CMAKE_OPTIONS_STRING} " \
518+ " -DINSTALL_TEST_COMPONENTS=${EXPECTED_COMPONENTS_STRING} "
451519 ctest --test-dir " ${BUILD_DIR} /install_test" --output-on-failure
452520 exit 0
453521elif [[ " $1 " == " cmake.test_example_plugin" ]]; then
0 commit comments