Skip to content

Commit 1163237

Browse files
committed
Fixed CMakeLists and increased grpc version
1 parent fe9356e commit 1163237

File tree

12 files changed

+89
-99
lines changed

12 files changed

+89
-99
lines changed

.github/actions/prepare_vm/action.yaml

Lines changed: 45 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,9 @@ runs:
1111
run: |
1212
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
1313
sudo apt-get -y update
14-
sudo apt-get -y install git ninja-build libidn11-dev ragel yasm protobuf-compiler \
15-
protobuf-compiler-grpc libprotobuf-dev libgrpc++-dev libgrpc-dev libgrpc++1 libgrpc10 \
14+
sudo apt-get -y install git ninja-build libidn11-dev ragel yasm libc-ares-dev libre2-dev \
1615
rapidjson-dev zlib1g-dev libxxhash-dev libzstd-dev libsnappy-dev libgtest-dev libgmock-dev \
17-
libbz2-dev libdouble-conversion-dev libstdc++-13-dev gcc-13 g++-13
16+
libbz2-dev liblz4-dev libdouble-conversion-dev libstdc++-13-dev gcc-13 g++-13
1817
wget https://apt.llvm.org/llvm.sh
1918
chmod u+x llvm.sh
2019
sudo ./llvm.sh 16
@@ -24,32 +23,63 @@ runs:
2423
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 10000
2524
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-13 10000
2625
27-
wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
28-
tar -xvzf libiconv-1.15.tar.gz
29-
cd libiconv-1.15
30-
./configure --prefix=/usr/local
31-
make
32-
sudo make install
33-
cd ../
26+
# Install abseil-cpp
27+
wget -O abseil-cpp-20230802.0.tar.gz https://github.com/abseil/abseil-cpp/archive/refs/tags/20230802.0.tar.gz
28+
tar -xvzf abseil-cpp-20230802.0.tar.gz
29+
cd abseil-cpp-20230802.0
30+
mkdir build && cd build
31+
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DABSL_PROPAGATE_CXX_STD=ON ..
32+
sudo cmake --build . --config Release --target install
33+
cd ../../
34+
35+
# Install protobuf
36+
wget -O protobuf-3.21.12.tar.gz https://github.com/protocolbuffers/protobuf/archive/refs/tags/v3.21.12.tar.gz
37+
tar -xvzf protobuf-3.21.12.tar.gz
38+
cd protobuf-3.21.12
39+
mkdir build && cd build
40+
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_INSTALL=ON -Dprotobuf_ABSL_PROVIDER=package ..
41+
sudo cmake --build . --config Release --target install
42+
cd ../../
43+
44+
# Install gRPC
45+
git clone -b v1.41.0 --depth 1 https://github.com/grpc/grpc.git && cd grpc
46+
mkdir build && cd build
47+
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 \
48+
-DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DgRPC_BUILD_CSHARP_EXT=OFF \
49+
-DgRPC_ZLIB_PROVIDER=package -DgRPC_CARES_PROVIDER=package -DgRPC_RE2_PROVIDER=package \
50+
-DgRPC_SSL_PROVIDER=package -DgRPC_PROTOBUF_PROVIDER=package -DgRPC_ABSL_PROVIDER=package \
51+
-DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF -DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF -DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF \
52+
-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF -DgRPC_BUILD_GRPC_CSHARP_PLUGIN=OFF -DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF ..
53+
sudo cmake --build . --config Release --target install
54+
cd ../../
55+
56+
# Install base64
3457
wget -O base64-0.5.2.tar.gz https://github.com/aklomp/base64/archive/refs/tags/v0.5.2.tar.gz
3558
tar -xvzf base64-0.5.2.tar.gz && cd base64-0.5.2
3659
mkdir build && cd build
37-
cmake -DCMAKE_BUILD_TYPE=Release ..
60+
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ..
3861
sudo cmake --build . --config Release --target install
3962
cd ../../
63+
64+
# Install brotli
4065
wget -O brotli-1.1.0.tar.gz https://github.com/google/brotli/archive/refs/tags/v1.1.0.tar.gz
4166
tar -xvzf brotli-1.1.0.tar.gz && cd brotli-1.1.0
4267
mkdir build && cd build
43-
cmake -DCMAKE_BUILD_TYPE=Release ..
68+
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ..
4469
sudo cmake --build . --config Release --target install
4570
cd ../../
71+
72+
# Install jwt-cpp
4673
wget -O jwt-cpp-0.7.0.tar.gz https://github.com/Thalhammer/jwt-cpp/archive/refs/tags/v0.7.0.tar.gz
4774
tar -xvzf jwt-cpp-0.7.0.tar.gz && cd jwt-cpp-0.7.0
4875
mkdir build && cd build
49-
cmake -DCMAKE_BUILD_TYPE=Release ..
76+
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ..
5077
sudo cmake --build . --config Release --target install
5178
cd ../../
79+
80+
# Install ccache
5281
(V=4.8.1; curl -L https://github.com/ccache/ccache/releases/download/v${V}/ccache-${V}-linux-x86_64.tar.xz | \
5382
sudo tar -xJ -C /usr/local/bin/ --strip-components=1 --no-same-owner ccache-${V}-linux-x86_64/ccache)
54-
sudo rm -rf llvm.sh libiconv-1.15.tar.gz base64-0.5.2.tar.gz brotli-1.1.0.tar.gz jwt-cpp-0.7.0.tar.gz \
55-
libiconv-1.15 base64-0.5.2 brotli-1.1.0 jwt-cpp-0.7.0
83+
sudo rm -rf llvm.sh abseil-cpp-20230802.0.tar.gz protobuf-3.21.12.tar.gz base64-0.5.2.tar.gz \
84+
brotli-1.1.0.tar.gz jwt-cpp-0.7.0.tar.gz abseil-cpp-20230802.0 protobuf-3.21.12 grpc \
85+
base64-0.5.2 brotli-1.1.0 jwt-cpp-0.7.0

CMakePresets.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
"name": "base",
1111
"displayName": "Generic Config",
1212
"cacheVariables": {
13-
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
13+
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
14+
"CMAKE_PREFIX_PATH": "~/install"
1415
},
1516
"generator": "Ninja",
1617
"binaryDir": "${sourceDir}/build"

cmake/FindgRPC.cmake

Lines changed: 0 additions & 66 deletions
This file was deleted.

cmake/external_libs.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ find_package(IDN REQUIRED)
22
find_package(Iconv REQUIRED)
33
find_package(OpenSSL REQUIRED)
44
find_package(Protobuf REQUIRED)
5-
find_package(gRPC REQUIRED)
5+
find_package(gRPC 1.41.0 REQUIRED)
66
find_package(ZLIB REQUIRED)
77
find_package(xxHash REQUIRED)
88
find_package(ZSTD REQUIRED)

examples/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ add_subdirectory(bulk_upsert_simple)
33
add_subdirectory(pagination)
44
add_subdirectory(secondary_index)
55
add_subdirectory(secondary_index_builtin)
6+
add_subdirectory(time)
67
add_subdirectory(topic_reader)
78
add_subdirectory(topic_writer/transaction)
89
add_subdirectory(ttl)

examples/time/CMakeLists.txt

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
add_executable(time_example)
2+
3+
target_link_libraries(time_example
4+
PUBLIC
5+
yutil
6+
getopt
7+
YDB-CPP-SDK::Query
8+
YDB-CPP-SDK::Helpers
9+
)
10+
11+
target_sources(time_example
12+
PRIVATE
13+
main.cpp
14+
)
15+
16+
vcs_info(time_example)
17+
18+
if (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "AMD64")
19+
target_link_libraries(time_example PUBLIC
20+
cpuid_check
21+
)
22+
endif()
23+
24+
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
25+
target_link_options(time_example PRIVATE
26+
-ldl
27+
-lrt
28+
-Wl,--no-as-needed
29+
-lpthread
30+
)
31+
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
32+
target_link_options(time_example PRIVATE
33+
-Wl,-platform_version,macos,11.0,11.0
34+
-framework
35+
CoreFoundation
36+
)
37+
endif()

include/ydb-cpp-sdk/client/iam/common/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ target_link_libraries(client-iam-types
44
INTERFACE
55
client-ydb_types-credentials
66
library-jwt
7+
gRPC::grpc++
78
yutil
89
)
910

src/client/iam/CMakeLists.txt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
add_subdirectory(common)
2-
31
_ydb_sdk_add_library(client-iam)
42

53
target_link_libraries(client-iam
@@ -8,7 +6,6 @@ target_link_libraries(client-iam
86
yutil
97
PRIVATE
108
api-client-yc_public
11-
client-iam-common
129
json
1310
http-simple
1411
)

src/client/iam/common/CMakeLists.txt

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/client/iam_private/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ target_link_libraries(client-iam_private
88
yutil
99
PRIVATE
1010
api-client-yc_private
11-
client-iam_private-common
1211
)
1312

1413
target_sources(client-iam_private

0 commit comments

Comments
 (0)