Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion .devcontainer/Dockerfile.dev
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ RUN cd /opt/ci && bash setup_ci_environment.sh
RUN cd /opt && bash ci/setup_googletest.sh \
&& bash ci/install_abseil.sh \
&& bash ci/install_protobuf.sh \
&& bash ci/setup_grpc.sh -r $GRPC_VERSION -s $CXX_STANDARD -p protobuf -p abseil
&& bash ci/setup_grpc.sh -r $GRPC_VERSION -s $CXX_STANDARD -p protobuf -p abseil-cpp

ADD https://github.com/bazelbuild/bazelisk/releases/download/v1.22.1/bazelisk-linux-amd64 /usr/local/bin

Expand Down
7 changes: 6 additions & 1 deletion ci/install_abseil.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,9 @@ ABSEIL_CPP_BUILD_OPTIONS=(
)

if [ ! -z "${CXX_STANDARD}" ]; then
ABSEIL_CPP_BUILD_OPTIONS=(${ABSEIL_CPP_BUILD_OPTIONS[@]} "-DCMAKE_CXX_STANDARD=${CXX_STANDARD}")
ABSEIL_CPP_BUILD_OPTIONS+=("-DCMAKE_CXX_STANDARD=${CXX_STANDARD}")
ABSEIL_CPP_BUILD_OPTIONS+=("-DCMAKE_CXX_STANDARD_REQUIRED=ON")
ABSEIL_CPP_BUILD_OPTIONS+=("-DCMAKE_CXX_EXTENSIONS=OFF")
fi

#
Expand Down Expand Up @@ -59,6 +61,9 @@ else
echo "Not patching abseil"
fi

echo "Building abseil ${ABSEIL_CPP_VERSION}"
echo "CMake build options:" "${ABSEIL_CPP_BUILD_OPTIONS[@]}"

mkdir build && pushd build
cmake "${ABSEIL_CPP_BUILD_OPTIONS[@]}" ..
make -j $(nproc)
Expand Down
7 changes: 6 additions & 1 deletion ci/install_protobuf.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,9 @@ CPP_PROTOBUF_BUILD_OPTIONS=(
)

if [ ! -z "${CXX_STANDARD}" ]; then
CPP_PROTOBUF_BUILD_OPTIONS=(${CPP_PROTOBUF_BUILD_OPTIONS[@]} "-DCMAKE_CXX_STANDARD=${CXX_STANDARD}")
CPP_PROTOBUF_BUILD_OPTIONS+=("-DCMAKE_CXX_STANDARD=${CXX_STANDARD}")
CPP_PROTOBUF_BUILD_OPTIONS+=("-DCMAKE_CXX_STANDARD_REQUIRED=ON")
CPP_PROTOBUF_BUILD_OPTIONS+=("-DCMAKE_CXX_EXTENSIONS=OFF")
fi

# After protobuf 22/4.22, protobuf depends on absl and we can use
Expand All @@ -59,6 +61,9 @@ cd /tmp
wget https://github.com/google/protobuf/releases/download/v${PROTOBUF_VERSION}/${CPP_PROTOBUF_PACKAGE_NAME}.tar.gz
tar zxf ${CPP_PROTOBUF_PACKAGE_NAME}.tar.gz --no-same-owner

echo "Building protobuf ${CPP_PROTOBUF_VERSION}"
echo "CMake build options:" "${CPP_PROTOBUF_BUILD_OPTIONS[@]}"

mkdir protobuf-${CPP_PROTOBUF_VERSION}/build && pushd protobuf-${CPP_PROTOBUF_VERSION}/build
if [ -e "../CMakeLists.txt" ]; then
cmake .. "${CPP_PROTOBUF_BUILD_OPTIONS[@]}"
Expand Down
19 changes: 19 additions & 0 deletions ci/setup_grpc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ while getopts ":v:hi:mp:r:s:TH" o; do
elif [ "${OPTARG}" == "abseil-cpp" ]; then
GRPC_BUILD_OPTIONS=(${GRPC_BUILD_OPTIONS[@]} "-DgRPC_ABSL_PROVIDER=package")
build_internal_abseil_cpp=0
else
usage
exit 1;
fi
;;
r)
Expand Down Expand Up @@ -101,6 +104,9 @@ if [[ $build_internal_abseil_cpp -ne 0 ]]; then

ABSEIL_CPP_BUILD_OPTIONS=(
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_CXX_STANDARD=${std_version}
-DCMAKE_CXX_STANDARD_REQUIRED=ON
-DCMAKE_CXX_EXTENSIONS=OFF
-DCMAKE_POSITION_INDEPENDENT_CODE=TRUE
-DCMAKE_INSTALL_PREFIX=$INSTALL_DIR
)
Expand All @@ -116,14 +122,27 @@ GRPC_BUILD_OPTIONS=(
${GRPC_BUILD_OPTIONS[@]}
-DgRPC_INSTALL=ON
-DCMAKE_CXX_STANDARD=${std_version}
-DCMAKE_CXX_STANDARD_REQUIRED=ON
-DCMAKE_CXX_EXTENSIONS=OFF
-DgRPC_BUILD_TESTS=OFF
-DgRPC_BUILD_GRPC_CPP_PLUGIN=ON
-DgRPC_BUILD_GRPC_CSHARP_PLUGIN=OFF
-DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF
-DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF
-DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF
-DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF
-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF
-DgRPC_BUILD_GRPCPP_OTEL_PLUGIN=OFF
-DCMAKE_INSTALL_PREFIX=$INSTALL_DIR
-DCMAKE_PREFIX_PATH=$INSTALL_DIR
)
if [ ! -z "$build_shared_libs" ]; then
GRPC_BUILD_OPTIONS=(${GRPC_BUILD_OPTIONS[@]} "-DBUILD_SHARED_LIBS=$build_shared_libs")
fi

echo "Building gRPC ${install_grpc_version}"
echo "CMake build options:" "${GRPC_BUILD_OPTIONS[@]}"

cmake "${GRPC_BUILD_OPTIONS[@]}" ..
cmake --build . -j$(nproc)
cmake --install .
Expand Down
Loading