Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support protobuf 3.22 or upper #2163

Merged
merged 54 commits into from
Aug 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
fbb68dd
Support protobuf 3.22 or upper
owent May 27, 2023
5c013c0
Test modern gRPC
owent May 27, 2023
7b5f955
Fix dependency
owent May 27, 2023
f95fd57
Using installed protobuf to build gRPC when using modern protobuf and…
owent May 27, 2023
f016a75
Make install_abseil.sh has the same options like it in setup_grpc.sh
owent May 27, 2023
c94e488
Fix abseil-cpp dependency of proto when using protobuf 3.22 or upper.
owent May 27, 2023
0dc7575
Fix protobuf installer with package absl.
owent May 27, 2023
8db4a61
Fix CI job for custom protobuf and abseil version
owent May 27, 2023
0f0085a
Allow to set `CXX_STANDARD` by environment variable in CI job.
owent May 27, 2023
1dcceaa
Update modern gRPC version
owent May 27, 2023
6fa4e95
Fix gcc version detection
owent May 27, 2023
93d347c
Fix abseil-cpp checking.
owent May 27, 2023
234ab40
Fix stringpiece including.
owent May 29, 2023
8956193
Fix link order of grpc example
owent May 29, 2023
5f3e6db
Patch dependencies.
owent May 29, 2023
8a36378
Allow to ignore more libraries's CONFIGs.
owent May 29, 2023
2ecaf75
Patch several third party libraries to allow they are built in a diff…
owent May 31, 2023
ace2e84
Support GTest cmake package
owent May 31, 2023
2e1af98
Optimize protoc execute.
owent May 31, 2023
c562424
Rename `proto-options-patch.cmake` to `tools.cmake`
owent May 31, 2023
77f4ec1
Support set PROTOBUF_PROTOC_EXECUTABLE from protobuf::protoc
owent May 31, 2023
1fa8631
Fix GTest package on Windows
owent May 31, 2023
d3db7c8
Merge remote-tracking branch 'opentelemetry/main' into support_protob…
owent Jun 1, 2023
68aa11c
Restore `WITH_OTLP_GRPC` in `cmake.maintainer.sync.test`
owent Jun 1, 2023
f63e145
Fix sepss problem.
owent Jun 1, 2023
0ba0fb2
Merge branch 'main' into support_protobuf_3.22_or_upper
ThomsonTan Jun 1, 2023
f2e3009
Fix undefined uint64_t in metrics headers.
owent Jun 1, 2023
53ef61b
Merge remote-tracking branch 'opentelemetry/main' into support_protob…
owent Jun 6, 2023
85bea45
Remove the legacy `protobuf_MODULE_COMPATIBLE` requirement.
owent Jun 6, 2023
b903710
Fix format
owent Jun 6, 2023
f783127
Merge branch 'main' into support_protobuf_3.22_or_upper
marcalff Jun 30, 2023
afed730
Try to use c++14 for modern protobuf and gRPC
owent Jul 4, 2023
22e767c
Merge remote-tracking branch 'github/main' into support_protobuf_3.22…
owent Jul 4, 2023
ecdc611
Merge remote-tracking branch 'github/main' into support_protobuf_3.22…
owent Jul 13, 2023
43f5996
Use environment to control c++ standardn in CI jobs.
owent Jul 13, 2023
95fb02d
Merge branch 'main' into support_protobuf_3.22_or_upper
owent Jul 14, 2023
a947146
Merge remote-tracking branch 'github/main' into support_protobuf_3.22…
owent Jul 26, 2023
b24f299
Restore the changelogs by mistake.
owent Jul 26, 2023
052dfea
Merge branch 'main' into support_protobuf_3.22_or_upper
owent Aug 1, 2023
c73f9b8
Ignore more warnings os MSVC for protobuf generated sources.
owent Aug 1, 2023
7a2c75b
Remove different package CONFIG supporting.
owent Aug 1, 2023
46caba6
Merge remote-tracking branch 'github/main' into support_protobuf_3.22…
owent Aug 1, 2023
5e08424
Merge branch 'main' into support_protobuf_3.22_or_upper
lalitb Aug 2, 2023
ef1f0be
Add CI job without abseil
owent Aug 3, 2023
bb90f44
Merge remote-tracking branch 'origin/support_protobuf_3.22_or_upper' …
owent Aug 3, 2023
edeed26
Remove dependency of absl for OTLP HTTP client.
owent Aug 3, 2023
9bfce35
Fix type
owent Aug 3, 2023
0d3b76f
Move base64 encoder and decoder into sdk
owent Aug 4, 2023
67dc6ff
Early exit if base64 source is empty
owent Aug 4, 2023
b8f2e5c
Fix including
owent Aug 4, 2023
c996738
Fix style
owent Aug 4, 2023
ec5f39e
Remove unsupport base64 format of absl
owent Aug 4, 2023
fd9dc99
Fix including
owent Aug 4, 2023
fdff03d
Restore protobuf and abseil checking
owent Aug 4, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,7 @@ jobs:
env:
CC: /usr/bin/gcc-4.8
CXX: /usr/bin/g++-4.8
CXX_STANDARD: '11'
run: ./ci/do_ci.sh cmake.legacy.test

cmake_gcc_48_otlp_exporter_test:
Expand Down Expand Up @@ -329,8 +330,12 @@ jobs:
sudo -E ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
- name: run tests
env:
CXX_STANDARD: '20'
run: ./ci/do_ci.sh cmake.c++20.test
- name: run tests (enable stl)
env:
CXX_STANDARD: '20'
run: ./ci/do_ci.sh cmake.c++20.stl.test

cmake_test_cxx20_clang:
Expand All @@ -354,12 +359,14 @@ jobs:
CC: /usr/bin/clang
CXX: /usr/bin/clang++
CXXFLAGS: "-stdlib=libc++"
CXX_STANDARD: '20'
run: ./ci/do_ci.sh cmake.c++20.test
- name: run tests (enable stl)
env:
CC: /usr/bin/clang
CXX: /usr/bin/clang++
CXXFLAGS: "-stdlib=libc++"
CXX_STANDARD: '20'
run: ./ci/do_ci.sh cmake.c++20.stl.test

cmake_otprotocol_test:
Expand All @@ -378,6 +385,31 @@ jobs:
sudo ./ci/setup_grpc.sh
./ci/do_ci.sh cmake.exporter.otprotocol.test

cmake_modern_protobuf_grpc_with_abseil_test:
name: CMake test (with modern protobuf,grpc and abseil)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: 'recursive'
- name: setup
env:
PROTOBUF_VERSION: '23.3'
ABSEIL_CPP_VERSION: '20230125.3'
CXX_STANDARD: '14'
run: |
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
lalitb marked this conversation as resolved.
Show resolved Hide resolved
sudo -E ./ci/install_abseil.sh
sudo -E ./ci/install_protobuf.sh
- name: run otlp exporter tests
env:
WITH_ABSEIL: 'ON'
lalitb marked this conversation as resolved.
Show resolved Hide resolved
CXX_STANDARD: '14'
run: |
sudo -E ./ci/setup_grpc.sh -m -p protobuf -p abseil-cpp
./ci/do_ci.sh cmake.exporter.otprotocol.test

cmake_do_not_install_test:
name: CMake do not install test (with otlp-exporter)
runs-on: ubuntu-20.04
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ Increment the:

## [Unreleased]

* [EXPORTER] Support protobuf 3.22 or upper
[#2163](https://github.com/open-telemetry/opentelemetry-cpp/pull/2163)
* [SDK] Mark logs signal as stable API/SDK
[#2229](https://github.com/open-telemetry/opentelemetry-cpp/pull/2229)

Expand Down
55 changes: 45 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ project(opentelemetry-cpp)
# Mark variables as used so cmake doesn't complain about them
mark_as_advanced(CMAKE_TOOLCHAIN_FILE)

# Prefer cmake CONFIG to auto resolve dependencies.
set(CMAKE_FIND_PACKAGE_PREFER_CONFIG TRUE)
ThomsonTan marked this conversation as resolved.
Show resolved Hide resolved

# Don't use customized cmake modules if vcpkg is used to resolve dependence.
if(NOT DEFINED CMAKE_TOOLCHAIN_FILE)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules/")
Expand Down Expand Up @@ -125,6 +128,8 @@ endif()
option(OPENTELEMETRY_INSTALL "Whether to install opentelemetry targets"
${OPENTELEMETRY_INSTALL_default})

include("${PROJECT_SOURCE_DIR}/cmake/tools.cmake")

if(NOT DEFINED CMAKE_CXX_STANDARD)
if(WITH_STL)
# Require at least C++17. C++20 is needed to avoid gsl::span
Expand Down Expand Up @@ -340,9 +345,21 @@ if(WITH_PROMETHEUS)
endif()
endif()

if(WITH_ABSEIL)
find_package(absl CONFIG REQUIRED)
endif()

if(WITH_OTLP_GRPC OR WITH_OTLP_HTTP)
set(protobuf_MODULE_COMPATIBLE ON)
find_package(Protobuf)
if(Protobuf_VERSION AND Protobuf_VERSION VERSION_GREATER_EQUAL "3.22.0")
if(NOT WITH_ABSEIL)
message(
FATAL_ERROR
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems with new protobuf, the main SDK will no longer buildable with WITH_ABSEIL=0 so this will be a required dependency. Can we separate the abseil dependency to protobuf related library only?

Copy link
Member Author

@owent owent Jul 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

protobuf has a internal reference to abseil and will use it when building without -Dprotobuf_ABSL_PROVIDER=package, just like gRPC.I think we can ensure the compatibility only by using the same version of abseil for protobuf, gRPC and otel-cpp.

"Protobuf 3.22 or upper require abseil-cpp(Recommended version: 20230125 or upper)"
)
endif()
endif()

if(WITH_OTLP_GRPC)
find_package(gRPC)
endif()
Expand Down Expand Up @@ -372,10 +389,14 @@ if(WITH_OTLP_GRPC OR WITH_OTLP_HTTP)
)
endif()
endif()
# Latest Protobuf uses mixed case instead of uppercase
if(Protobuf_PROTOC_EXECUTABLE)
set(PROTOBUF_PROTOC_EXECUTABLE ${Protobuf_PROTOC_EXECUTABLE})
endif()
endif()
# Latest Protobuf imported targets and without legacy module support
if(TARGET protobuf::protoc)
project_build_tools_get_imported_location(PROTOBUF_PROTOC_EXECUTABLE
protobuf::protoc)
elseif(Protobuf_PROTOC_EXECUTABLE)
# Some versions of FindProtobuf.cmake uses mixed case instead of uppercase
set(PROTOBUF_PROTOC_EXECUTABLE ${Protobuf_PROTOC_EXECUTABLE})
endif()
include(CMakeDependentOption)

Expand Down Expand Up @@ -524,10 +545,14 @@ if(BUILD_TESTING)
set(GTEST_INCLUDE_DIRS
${CMAKE_CURRENT_SOURCE_DIR}/third_party/googletest/googletest/include
${CMAKE_CURRENT_SOURCE_DIR}/third_party/googletest/googlemock/include)
set(GTEST_BOTH_LIBRARIES
${CMAKE_BINARY_DIR}/lib/libgtest.a
${CMAKE_BINARY_DIR}/lib/libgtest_main.a
${CMAKE_BINARY_DIR}/lib/libgmock.a)
if(TARGET gtest)
set(GTEST_BOTH_LIBRARIES gtest gtest_main gmock)
else()
set(GTEST_BOTH_LIBRARIES
${CMAKE_BINARY_DIR}/lib/libgtest.a
${CMAKE_BINARY_DIR}/lib/libgtest_main.a
${CMAKE_BINARY_DIR}/lib/libgmock.a)
endif()
elseif(WIN32)
# Make sure we are always bootsrapped with vcpkg on Windows
find_package(GTest)
Expand All @@ -540,7 +565,17 @@ if(BUILD_TESTING)
# Prefer GTest installed by OS distro, brew or vcpkg package manager
find_package(GTest REQUIRED)
endif()
include_directories(SYSTEM ${GTEST_INCLUDE_DIRS})
if(NOT GTEST_BOTH_LIBRARIES)
# New GTest package names
if(TARGET GTest::gtest)
set(GTEST_BOTH_LIBRARIES GTest::gtest GTest::gtest_main GTest::gmock)
elseif(TARGET GTest::GTest)
set(GTEST_BOTH_LIBRARIES GTest::GTest GTest::Main)
endif()
endif()
if(GTEST_INCLUDE_DIRS)
include_directories(SYSTEM ${GTEST_INCLUDE_DIRS})
endif()
message("GTEST_INCLUDE_DIRS = ${GTEST_INCLUDE_DIRS}")
message("GTEST_BOTH_LIBRARIES = ${GTEST_BOTH_LIBRARIES}")
enable_testing()
Expand Down
1 change: 1 addition & 0 deletions api/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ cc_library(
deps = select({
":with_external_abseil": [
"@com_google_absl//absl/base",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/types:variant",
],
"//conditions:default": [],
Expand Down
2 changes: 0 additions & 2 deletions api/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,6 @@ endif()

if(WITH_ABSEIL)

find_package(absl CONFIG REQUIRED)

target_compile_definitions(opentelemetry_api INTERFACE HAVE_ABSEIL)
target_link_libraries(
opentelemetry_api INTERFACE absl::bad_variant_access absl::any absl::base
Expand Down
60 changes: 28 additions & 32 deletions ci/do_ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -83,13 +83,19 @@ BAZEL_MACOS_TEST_OPTIONS="$BAZEL_MACOS_OPTIONS --test_output=errors"

BAZEL_STARTUP_OPTIONS="--output_user_root=$HOME/.cache/bazel"

CMAKE_OPTIONS=(-DCMAKE_BUILD_TYPE=Debug)
if [ ! -z "${CXX_STANDARD}" ]; then
CMAKE_OPTIONS=(${CMAKE_OPTIONS[@]} "-DCMAKE_CXX_STANDARD=${CXX_STANDARD}")
else
CMAKE_OPTIONS=(${CMAKE_OPTIONS[@]} "-DCMAKE_CXX_STANDARD=14")
fi

export CTEST_OUTPUT_ON_FAILURE=1

if [[ "$1" == "cmake.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_PROMETHEUS=ON \
-DWITH_ZIPKIN=ON \
-DWITH_ELASTICSEARCH=ON \
Expand All @@ -102,8 +108,7 @@ if [[ "$1" == "cmake.test" ]]; then
elif [[ "$1" == "cmake.maintainer.sync.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_OTLP_HTTP=ON \
-DWITH_OTLP_HTTP_SSL_PREVIEW=ON \
-DWITH_OTLP_HTTP_SSL_TLS_PREVIEW=ON \
Expand All @@ -126,8 +131,7 @@ elif [[ "$1" == "cmake.maintainer.sync.test" ]]; then
elif [[ "$1" == "cmake.maintainer.async.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_OTLP_HTTP=ON \
-DWITH_OTLP_HTTP_SSL_PREVIEW=ON \
-DWITH_OTLP_HTTP_SSL_TLS_PREVIEW=ON \
Expand All @@ -150,7 +154,7 @@ elif [[ "$1" == "cmake.maintainer.async.test" ]]; then
elif [[ "$1" == "cmake.maintainer.cpp11.async.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_STANDARD=11 \
-DWITH_OTLP_HTTP=ON \
-DWITH_OTLP_HTTP_SSL_PREVIEW=ON \
Expand All @@ -173,8 +177,7 @@ elif [[ "$1" == "cmake.maintainer.cpp11.async.test" ]]; then
elif [[ "$1" == "cmake.with_async_export.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_PROMETHEUS=ON \
-DWITH_ZIPKIN=ON \
-DWITH_ELASTICSEARCH=ON \
Expand All @@ -188,8 +191,7 @@ elif [[ "$1" == "cmake.with_async_export.test" ]]; then
elif [[ "$1" == "cmake.abseil.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_METRICS_EXEMPLAR_PREVIEW=ON \
-DCMAKE_CXX_FLAGS="-Werror $CXXFLAGS" \
-DWITH_ASYNC_EXPORT_PREVIEW=ON \
Expand All @@ -201,8 +203,7 @@ elif [[ "$1" == "cmake.abseil.test" ]]; then
elif [[ "$1" == "cmake.opentracing_shim.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_FLAGS="-Werror -Wno-error=redundant-move $CXXFLAGS" \
-DWITH_OPENTRACING=ON \
"${SRC_DIR}"
Expand All @@ -212,8 +213,7 @@ elif [[ "$1" == "cmake.opentracing_shim.test" ]]; then
elif [[ "$1" == "cmake.c++20.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=20 \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_FLAGS="-Werror $CXXFLAGS" \
-DWITH_ASYNC_EXPORT_PREVIEW=ON \
${IWYU} \
Expand All @@ -224,8 +224,7 @@ elif [[ "$1" == "cmake.c++20.test" ]]; then
elif [[ "$1" == "cmake.c++20.stl.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=20 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_METRICS_EXEMPLAR_PREVIEW=ON \
-DCMAKE_CXX_FLAGS="-Werror $CXXFLAGS" \
-DWITH_ASYNC_EXPORT_PREVIEW=ON \
Expand All @@ -240,8 +239,7 @@ elif [[ "$1" == "cmake.legacy.test" ]]; then
rm -rf *
export BUILD_ROOT="${BUILD_DIR}"
${SRC_DIR}/tools/build-benchmark.sh
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=11 \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_FLAGS="-Werror $CXXFLAGS" \
"${SRC_DIR}"
make -j $(nproc)
Expand All @@ -252,7 +250,7 @@ elif [[ "$1" == "cmake.legacy.exporter.otprotocol.test" ]]; then
rm -rf *
export BUILD_ROOT="${BUILD_DIR}"
${SRC_DIR}/tools/build-benchmark.sh
cmake -DCMAKE_BUILD_TYPE=Debug \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_STANDARD=11 \
-DWITH_OTLP_GRPC=ON \
-DWITH_OTLP_HTTP=ON \
Expand All @@ -267,8 +265,10 @@ elif [[ "$1" == "cmake.legacy.exporter.otprotocol.test" ]]; then
elif [[ "$1" == "cmake.exporter.otprotocol.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
if [[ ! -z "${WITH_ABSEIL}" ]]; then
CMAKE_OPTIONS=(${CMAKE_OPTIONS[@]} "-DWITH_ABSEIL=${WITH_ABSEIL}")
fi
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_OTLP_GRPC=ON \
-DWITH_OTLP_HTTP=ON \
-DWITH_OTLP_GRPC_SSL_MTLS_PREVIEW=ON \
Expand All @@ -282,8 +282,7 @@ elif [[ "$1" == "cmake.exporter.otprotocol.test" ]]; then
elif [[ "$1" == "cmake.exporter.otprotocol.shared_libs.with_static_grpc.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_OTLP_GRPC=ON \
-DWITH_OTLP_HTTP=ON \
-DBUILD_SHARED_LIBS=ON \
Expand All @@ -297,8 +296,7 @@ elif [[ "$1" == "cmake.exporter.otprotocol.shared_libs.with_static_grpc.test" ]]
elif [[ "$1" == "cmake.exporter.otprotocol.with_async_export.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_OTLP_GRPC=ON \
-DWITH_OTLP_HTTP=ON \
-DWITH_ASYNC_EXPORT_PREVIEW=ON \
Expand All @@ -312,8 +310,7 @@ elif [[ "$1" == "cmake.exporter.otprotocol.with_async_export.test" ]]; then
elif [[ "$1" == "cmake.do_not_install.test" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DWITH_OTLP_GRPC=ON \
-DWITH_OTLP_HTTP=ON \
-DWITH_ASYNC_EXPORT_PREVIEW=ON \
Expand Down Expand Up @@ -346,7 +343,7 @@ EOF
-static-libgcc \
-Wl,--version-script=${PWD}/export.map \
"
cmake -DCMAKE_BUILD_TYPE=Debug \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_FLAGS="-Werror $CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LINKER_FLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LINKER_FLAGS" \
Expand All @@ -357,7 +354,7 @@ EOF
# Verify we can load the plugin
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_FLAGS="-Werror $CXXFLAGS" \
"${SRC_DIR}"
make load_plugin_example
Expand Down Expand Up @@ -439,8 +436,7 @@ elif [[ "$1" == "format" ]]; then
elif [[ "$1" == "code.coverage" ]]; then
cd "${BUILD_DIR}"
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_STANDARD=14 \
cmake ${CMAKE_OPTIONS[@]} \
-DCMAKE_CXX_FLAGS="-Werror --coverage $CXXFLAGS" \
"${SRC_DIR}"
make
Expand Down
Loading