diff options
| author | KunoiSayami <[email protected]> | 2021-11-11 22:01:31 +0800 |
|---|---|---|
| committer | KunoiSayami <[email protected]> | 2021-11-11 22:01:31 +0800 |
| commit | ff62cbaad13d4bd309de5d3dda8c7051325d5663 (patch) | |
| tree | 8b04f0fe87368228a980f63bf280dd4ebd8e0f5d /CMakeLists.txt | |
| parent | 9907b61c574baf0747747f1c512f7cdd88ebed25 (diff) | |
feat(cmake): Support cuda build
Signed-off-by: KunoiSayami <[email protected]>
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index f8285b8..ad9a488 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ cmake_minimum_required(VERSION 3.9) # Keep the version below in sync with the one in db.h -project(leveldb VERSION 1.23.0 LANGUAGES C CXX) +project(leveldb VERSION 1.23.0 LANGUAGES C CXX CUDA) # C standard can be overridden when this is used as a sub-project. if(NOT CMAKE_C_STANDARD) @@ -76,6 +76,8 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti") endif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -frtti") + # Test whether -Wthread-safety is available. See # https://clang.llvm.org/docs/ThreadSafetyAnalysis.html include(CheckCXXCompilerFlag) @@ -116,6 +118,9 @@ endif(BUILD_SHARED_LIBS) # Must be included before CMAKE_INSTALL_INCLUDEDIR is used. include(GNUInstallDirs) +set(CMAKE_CUDA_STANDARD 14) +find_package(CUDA REQUIRED) + add_library(leveldb "") target_sources(leveldb PRIVATE @@ -169,8 +174,8 @@ target_sources(leveldb "table/table.cc" "table/two_level_iterator.cc" "table/two_level_iterator.h" - "util/arena.cc" - "util/arena.h" + "util/arena.cu" + "util/arena.cuh" "util/bloom.cc" "util/cache.cc" "util/coding.cc" @@ -208,6 +213,7 @@ target_sources(leveldb "${LEVELDB_PUBLIC_INCLUDE_DIR}/table.h" "${LEVELDB_PUBLIC_INCLUDE_DIR}/write_batch.h" ) +set_target_properties(leveldb PROPERTIES CUDA_ARCHITECTURES "35;50;72") if (WIN32) target_sources(leveldb @@ -367,7 +373,7 @@ if(LEVELDB_BUILD_TESTS) leveldb_test("table/filter_block_test.cc") leveldb_test("table/table_test.cc") - leveldb_test("util/arena_test.cc") + leveldb_test("util/arena_test.cu") leveldb_test("util/bloom_test.cc") leveldb_test("util/cache_test.cc") leveldb_test("util/coding_test.cc") |
