aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNikita Kozlovskiy <nikitka@gmail.com>2023-07-04 08:51:38 +0000
committernkozlovskiy <nmk@ydb.tech>2023-07-04 11:51:38 +0300
commit5339262ca4ffb940e14e659a82a3b50ecaad3506 (patch)
treec5f2ff4edf4abac760eea635c3649c15ea55ccf3
parent2413a1ef29b0b1144d2d1151f4a48277a0b2c8a3 (diff)
downloadydb-5339262ca4ffb940e14e659a82a3b50ecaad3506.tar.gz
ci: build with Release and -UNDEBUG by default
ci: build with Release and -UNDEBUG by default Pull Request resolved: #283
-rw-r--r--.github/actions/build/action.yml21
-rw-r--r--.github/prewarm/build.sh2
-rw-r--r--BUILD.md4
3 files changed, 20 insertions, 7 deletions
diff --git a/.github/actions/build/action.yml b/.github/actions/build/action.yml
index 0487186084..dd8cffaba2 100644
--- a/.github/actions/build/action.yml
+++ b/.github/actions/build/action.yml
@@ -19,11 +19,13 @@ runs:
patch -p1 < ydb/deploy/patches/0001-sanitizer-build.patch
cd ../build
rm -rf *
+ export CC=/usr/bin/clang-12
+ export CC_FOR_BUILD=$CC
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
+ -DCMAKE_C_COMPILER_LAUNCHER=/usr/local/bin/ccache -DCMAKE_CXX_COMPILER_LAUNCHER=/usr/local/bin/ccache \
-DCMAKE_TOOLCHAIN_FILE=../ydb/clang.toolchain \
- -DCMAKE_CXX_FLAGS="-fsanitize=${{ inputs.sanitizer }} -g -fno-omit-frame-pointer" \
- -DCMAKE_C_FLAGS="-fsanitize=${{ inputs.sanitizer }} -g -fno-omit-frame-pointer" \
+ -DCMAKE_CXX_FLAGS="-fsanitize=${{ inputs.sanitizer }} -g -fno-omit-frame-pointer -UNDEBUG" \
+ -DCMAKE_C_FLAGS="-fsanitize=${{ inputs.sanitizer }} -g -fno-omit-frame-pointer -UNDEBUG" \
../ydb
- name: Configure
shell: bash
@@ -32,12 +34,19 @@ runs:
mkdir -p ../build
cd ../build
rm -rf *
- export CONAN_USER_HOME=`realpath .`
+ export CONAN_USER_HOME=`pwd`
+ export CC=/usr/bin/clang-12
+ export CC_FOR_BUILD=$CC
+
+ # FIXME: set DCMAKE_CXX_FLAGS_RELWITHDEBINFO and DCMAKE_CXX_FLAGS bacause of global_flags.cmake flags override.
+
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER_LAUNCHER=/usr/local/bin/ccache -DCMAKE_CXX_COMPILER_LAUNCHER=/usr/local/bin/ccache \
-DCMAKE_TOOLCHAIN_FILE=../ydb/clang.toolchain \
- -DCMAKE_CXX_FLAGS="-g" \
- -DCMAKE_C_FLAGS="-g" \
+ -DCMAKE_C_FLAGS="-O2 -UNDEBUG" \
+ -DCMAKE_CXX_FLAGS="-O2 -UNDEBUG" \
+ -DCMAKE_C_FLAGS_RELEASE="-O2 -UNDEBUG" \
+ -DCMAKE_CXX_FLAGS_RELEASE="-O2 -UNDEBUG" \
../ydb
- name: Build
shell: bash
diff --git a/.github/prewarm/build.sh b/.github/prewarm/build.sh
index 3d144264ad..b722e82870 100644
--- a/.github/prewarm/build.sh
+++ b/.github/prewarm/build.sh
@@ -13,6 +13,8 @@ echo "::group::cmake"
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER_LAUNCHER=/usr/local/bin/ccache -DCMAKE_CXX_COMPILER_LAUNCHER=/usr/local/bin/ccache \
-DCMAKE_TOOLCHAIN_FILE=../ydb/clang.toolchain \
+-DCMAKE_C_FLAGS_RELWITHDEBINFO="-O2 -UNDEBUG" \
+-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-O2 -UNDEBUG" \
../ydb
echo "::endgroup::"
diff --git a/BUILD.md b/BUILD.md
index 066a8b410f..6b1397786f 100644
--- a/BUILD.md
+++ b/BUILD.md
@@ -89,7 +89,7 @@ Run cmake to generate build configuration:
```bash
cd build
-cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=../ydb/clang.toolchain ../ydb
+cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS_RELEASE="-O2 -UNDEBUG" -DCMAKE_CXX_FLAGS_RELEASE="-O2 -UNDEBUG" -DCMAKE_TOOLCHAIN_FILE=../ydb/clang.toolchain ../ydb
```
@@ -134,6 +134,8 @@ With enabled Ccache, you can finish the compilation of all targets on supported
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER_LAUNCHER=/usr/local/bin/ccache -DCMAKE_CXX_COMPILER_LAUNCHER=/usr/local/bin/ccache \
-DCMAKE_TOOLCHAIN_FILE=../ydb/clang.toolchain \
+ -DCMAKE_C_FLAGS_RELEASE="-O2 -UNDEBUG" \
+ -DCMAKE_CXX_FLAGS_RELEASE="-O2 -UNDEBUG" \
../ydb
```