From 3059e1f80340fecff904adab1943bae638ee8eaf Mon Sep 17 00:00:00 2001 From: JaySon-Huang Date: Wed, 22 Mar 2023 00:43:40 +0800 Subject: [PATCH 1/6] test Signed-off-by: JaySon-Huang --- .github/workflows/cpp-test.yaml | 38 +++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/cpp-test.yaml diff --git a/.github/workflows/cpp-test.yaml b/.github/workflows/cpp-test.yaml new file mode 100644 index 00000000..7d1b16d0 --- /dev/null +++ b/.github/workflows/cpp-test.yaml @@ -0,0 +1,38 @@ +name: C++ Test +on: + push: + branches: + - master + pull_request: + branches: + - master +jobs: + cpp-test: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v2 + - name: Install dependencies + run: sudo apt install -y cmake clang libclang-dev llvm llvm-dev + - name: Cache gRPC + id: cache-grpc + uses: actions/cache@v3 + with: + path: ~/grpcinstall/v1_44_0 + key: ${{ runner.os }}-gRPC-v1_44_0-t0 + - name: Install gRPC + if: steps.cache-grpc.outputs.cache-hit != 'true' + run: | + export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 && mkdir -p $GRPC_INSTALL_PATH + git clone https://github.com/grpc/grpc.git + pushd grpc && git checkout v1.44.0 && git submodule update --init + mkdir -p grpcbuild && pushd grpcbuild && cmake .. -DgRPC_BUILD_TESTS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$GRPC_INSTALL_PATH && make install && popd + rm -rf grpcbuild && mkdir -p grpcbuild && pushd grpcbuild && cmake .. -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DgRPC_PROTOBUF_PROVIDER=package -DgRPC_ZLIB_PROVIDER=package -DgRPC_CARES_PROVIDER=package -DgRPC_SSL_PROVIDER=package -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$GRPC_INSTALL_PATH && make install && popd + popd + - name: Test C++ + run: | + export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 + export PATH="$GRPC_INSTALL_PATH/bin:$PATH" + rm -rf build && mkdir build && pushd build \ + && cmake .. -DCMAKE_PREFIX_PATH=$GRPC_INSTALL_PATH && make \ + && popd && rm -rf build From c9f23db88858f2659da05e106c1913fe476b4b0c Mon Sep 17 00:00:00 2001 From: JaySon-Huang Date: Wed, 22 Mar 2023 00:45:36 +0800 Subject: [PATCH 2/6] Remove abseil-cpp Signed-off-by: JaySon-Huang --- third_party/CMakeLists.txt | 4 ---- third_party/abseil-cpp | 1 - third_party/abseil-cpp-cmake/CMakeLists.txt | 25 --------------------- 3 files changed, 30 deletions(-) delete mode 160000 third_party/abseil-cpp delete mode 100644 third_party/abseil-cpp-cmake/CMakeLists.txt diff --git a/third_party/CMakeLists.txt b/third_party/CMakeLists.txt index 430d948a..fab0208c 100644 --- a/third_party/CMakeLists.txt +++ b/third_party/CMakeLists.txt @@ -1,8 +1,4 @@ -if (NOT ABSL_ROOT_DIR) - add_subdirectory(abseil-cpp-cmake) -endif() - if (NOT KVPROTO_FOUND) add_subdirectory (kvproto/cpp) endif() diff --git a/third_party/abseil-cpp b/third_party/abseil-cpp deleted file mode 160000 index 21510581..00000000 --- a/third_party/abseil-cpp +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 215105818dfde3174fe799600bb0f3cae233d0bf diff --git a/third_party/abseil-cpp-cmake/CMakeLists.txt b/third_party/abseil-cpp-cmake/CMakeLists.txt deleted file mode 100644 index 604135d8..00000000 --- a/third_party/abseil-cpp-cmake/CMakeLists.txt +++ /dev/null @@ -1,25 +0,0 @@ -set(ABSL_ROOT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../abseil-cpp") -set(ABSL_ROOT_DIR "${ABSL_ROOT_DIR}" PARENT_SCOPE) -if(NOT EXISTS "${ABSL_ROOT_DIR}/CMakeLists.txt") - message(FATAL_ERROR " submodule third_party/abseil-cpp is missing. To fix try run: \n git submodule update --init --recursive") -endif() -set(BUILD_TESTING OFF) -set(ABSL_PROPAGATE_CXX_STD ON) - -add_subdirectory("${ABSL_ROOT_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/../abseil-cpp") - -add_library(abseil_swiss_tables INTERFACE) -set_target_properties(abseil_swiss_tables PROPERTIES INTERFACE_COMPILE_OPTIONS "-Wno-array-parameter") - -target_link_libraries(abseil_swiss_tables INTERFACE - absl::flat_hash_map - absl::flat_hash_set -) - -get_target_property(FLAT_HASH_MAP_INCLUDE_DIR absl::flat_hash_map INTERFACE_INCLUDE_DIRECTORIES) -target_include_directories (abseil_swiss_tables SYSTEM BEFORE INTERFACE ${FLAT_HASH_MAP_INCLUDE_DIR}) - -get_target_property(FLAT_HASH_SET_INCLUDE_DIR absl::flat_hash_set INTERFACE_INCLUDE_DIRECTORIES) -target_include_directories (abseil_swiss_tables SYSTEM BEFORE INTERFACE ${FLAT_HASH_SET_INCLUDE_DIR}) - -message(STATUS "Using absl: dir=${ABSL_ROOT_DIR}") From 5a81e16a6fdbb277a852f042ee9bca213cf1c25f Mon Sep 17 00:00:00 2001 From: JaySon-Huang Date: Wed, 22 Mar 2023 00:55:38 +0800 Subject: [PATCH 3/6] test Signed-off-by: JaySon-Huang --- .github/workflows/cpp-test.yaml | 38 -------------------- .github/workflows/cpp-test.yml | 61 +++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+), 38 deletions(-) delete mode 100644 .github/workflows/cpp-test.yaml create mode 100644 .github/workflows/cpp-test.yml diff --git a/.github/workflows/cpp-test.yaml b/.github/workflows/cpp-test.yaml deleted file mode 100644 index 7d1b16d0..00000000 --- a/.github/workflows/cpp-test.yaml +++ /dev/null @@ -1,38 +0,0 @@ -name: C++ Test -on: - push: - branches: - - master - pull_request: - branches: - - master -jobs: - cpp-test: - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v2 - - name: Install dependencies - run: sudo apt install -y cmake clang libclang-dev llvm llvm-dev - - name: Cache gRPC - id: cache-grpc - uses: actions/cache@v3 - with: - path: ~/grpcinstall/v1_44_0 - key: ${{ runner.os }}-gRPC-v1_44_0-t0 - - name: Install gRPC - if: steps.cache-grpc.outputs.cache-hit != 'true' - run: | - export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 && mkdir -p $GRPC_INSTALL_PATH - git clone https://github.com/grpc/grpc.git - pushd grpc && git checkout v1.44.0 && git submodule update --init - mkdir -p grpcbuild && pushd grpcbuild && cmake .. -DgRPC_BUILD_TESTS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$GRPC_INSTALL_PATH && make install && popd - rm -rf grpcbuild && mkdir -p grpcbuild && pushd grpcbuild && cmake .. -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DgRPC_PROTOBUF_PROVIDER=package -DgRPC_ZLIB_PROVIDER=package -DgRPC_CARES_PROVIDER=package -DgRPC_SSL_PROVIDER=package -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$GRPC_INSTALL_PATH && make install && popd - popd - - name: Test C++ - run: | - export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 - export PATH="$GRPC_INSTALL_PATH/bin:$PATH" - rm -rf build && mkdir build && pushd build \ - && cmake .. -DCMAKE_PREFIX_PATH=$GRPC_INSTALL_PATH && make \ - && popd && rm -rf build diff --git a/.github/workflows/cpp-test.yml b/.github/workflows/cpp-test.yml new file mode 100644 index 00000000..81c3495f --- /dev/null +++ b/.github/workflows/cpp-test.yml @@ -0,0 +1,61 @@ +name: C++ Test +on: + push: + branches: + - master + pull_request: + branches: + - master +jobs: + cpp-test: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + - name: Install dependencies + run: sudo apt install -y cmake clang libclang-dev llvm llvm-dev libssl-dev + + - name: Cache Poco + id: cache-poco + uses: actions/cache@v3 + with: + path: ~/pocoinstall/v1_12_4 + key: ${{ runner.os }}-Poco-v_1_12_4-t0 + - name: Install Poco + if: steps.cache-poco.outputs.cache-hit != 'true' + run: | + export POCO_INSTALL_PATH=~/pocoinstall/v1_12_4 && mkdir -p ${POCO_INSTALL_PATH} + git clone https://github.com/pocoproject/poco.git + pushd poco && git checkout poco-1.12.4-release && git submodule update --init + mkdir poco_build && pushd poco_build \ + && cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$POCO_INSTALL_PATH \ + && make install && popd + + - name: Cache gRPC + id: cache-grpc + uses: actions/cache@v3 + with: + path: ~/grpcinstall/v1_44_0 + key: ${{ runner.os }}-gRPC-v1_44_0-t0 + - name: Install gRPC + if: steps.cache-grpc.outputs.cache-hit != 'true' + run: | + export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 && mkdir -p $GRPC_INSTALL_PATH + git clone https://github.com/grpc/grpc.git + pushd grpc && git checkout v1.44.0 && git submodule update --init + mkdir -p grpcbuild && pushd grpcbuild \ + && cmake .. -DgRPC_BUILD_TESTS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$GRPC_INSTALL_PATH \ + && make install && popd + rm -rf grpcbuild && mkdir -p grpcbuild && pushd grpcbuild \ + && cmake .. -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DgRPC_PROTOBUF_PROVIDER=package -DgRPC_ZLIB_PROVIDER=package -DgRPC_CARES_PROVIDER=package -DgRPC_SSL_PROVIDER=package -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$GRPC_INSTALL_PATH \ + && make install && popd + popd + + - name: Test C++ + run: | + export POCO_INSTALL_PATH=~/pocoinstall/v1_12_4 + export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 + export PATH="$GRPC_INSTALL_PATH/bin:$PATH" + # rm -rf build && mkdir build && pushd build \ + # && cmake .. -DCMAKE_PREFIX_PATH=$GRPC_INSTALL_PATH && make \ + # && popd && rm -rf build From 4639af6ecad2d87a27ac935a08b96929ab24a3e0 Mon Sep 17 00:00:00 2001 From: JaySon-Huang Date: Wed, 22 Mar 2023 11:37:32 +0800 Subject: [PATCH 4/6] try build Signed-off-by: JaySon-Huang --- .github/workflows/cpp-test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cpp-test.yml b/.github/workflows/cpp-test.yml index 81c3495f..2a1f99b3 100644 --- a/.github/workflows/cpp-test.yml +++ b/.github/workflows/cpp-test.yml @@ -56,6 +56,6 @@ jobs: export POCO_INSTALL_PATH=~/pocoinstall/v1_12_4 export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 export PATH="$GRPC_INSTALL_PATH/bin:$PATH" - # rm -rf build && mkdir build && pushd build \ - # && cmake .. -DCMAKE_PREFIX_PATH=$GRPC_INSTALL_PATH && make \ - # && popd && rm -rf build + rm -rf build && mkdir build && pushd build \ + && cmake .. -DCMAKE_PREFIX_PATH=$GRPC_INSTALL_PATH && make \ + && popd && rm -rf build From 3a251921734fdc5d0543e27d45aa58bb9328cb78 Mon Sep 17 00:00:00 2001 From: JaySon-Huang Date: Wed, 22 Mar 2023 11:46:47 +0800 Subject: [PATCH 5/6] Add prefix Signed-off-by: JaySon-Huang --- .github/workflows/cpp-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cpp-test.yml b/.github/workflows/cpp-test.yml index 2a1f99b3..eb70b358 100644 --- a/.github/workflows/cpp-test.yml +++ b/.github/workflows/cpp-test.yml @@ -57,5 +57,5 @@ jobs: export GRPC_INSTALL_PATH=~/grpcinstall/v1_44_0 export PATH="$GRPC_INSTALL_PATH/bin:$PATH" rm -rf build && mkdir build && pushd build \ - && cmake .. -DCMAKE_PREFIX_PATH=$GRPC_INSTALL_PATH && make \ + && cmake .. -DCMAKE_PREFIX_PATH="$GRPC_INSTALL_PATH;$POCO_INSTALL_PATH" && make \ && popd && rm -rf build From 63c1b1a98fd8a2dbbc127634a3cae915e3009955 Mon Sep 17 00:00:00 2001 From: JaySon-Huang Date: Wed, 22 Mar 2023 11:57:25 +0800 Subject: [PATCH 6/6] checkout submodule Signed-off-by: JaySon-Huang --- .github/workflows/cpp-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/cpp-test.yml b/.github/workflows/cpp-test.yml index eb70b358..52acf510 100644 --- a/.github/workflows/cpp-test.yml +++ b/.github/workflows/cpp-test.yml @@ -12,6 +12,8 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 + with: + submodules: 'true' - name: Install dependencies run: sudo apt install -y cmake clang libclang-dev llvm llvm-dev libssl-dev