From: Kefu Chai Date: Fri, 15 Dec 2023 11:03:57 +0000 (+0800) Subject: cmake/modules/BuildRocksDB.cmake: inherit parent's CMAKE_CXX_FLAGS X-Git-Tag: v16.2.15~4^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F55500%2Fhead;p=ceph.git cmake/modules/BuildRocksDB.cmake: inherit parent's CMAKE_CXX_FLAGS CMake allows us to customize `CMAKE_CXX_FLAGS` by setting CXXFLAGS environmental variable. and Debian's debhelper also sets CXXFLAGS when it builds cmake projects for customizing the building flags. but we fail to populate this setting down when building external projects. this is important when it comes to the projects which is critical to the performance. RocksDB is one of them. in this change, we pass the `CMAKE_CXX_FLAGS` down in `BuildRocksDB.cmake` so that its `CMAKE_CXX_FLAGS` contains the same set of `CMAKE_CXX_FLAGS` used by its parent project. this should help with the performance in the bluestore, where RocksDB is used. Signed-off-by: Kefu Chai (cherry picked from commit beb1a624921d7589db63dea066935b3aa9ce2698) --- diff --git a/cmake/modules/BuildRocksDB.cmake b/cmake/modules/BuildRocksDB.cmake index 01b4ef0e31c8..32f8df97619a 100644 --- a/cmake/modules/BuildRocksDB.cmake +++ b/cmake/modules/BuildRocksDB.cmake @@ -56,6 +56,7 @@ function(build_rocksdb) endif() include(CheckCXXCompilerFlag) check_cxx_compiler_flag("-Wno-deprecated-copy" HAS_WARNING_DEPRECATED_COPY) + set(rocksdb_CXX_FLAGS "${CMAKE_CXX_FLAGS}") if(HAS_WARNING_DEPRECATED_COPY) string(APPEND rocksdb_CXX_FLAGS " -Wno-deprecated-copy") endif()