From 4c726c759a16aa2bb86e020b712211709f6aa092 Mon Sep 17 00:00:00 2001 From: "Dmitriy A. Gerasimov" <dmitriy.gerasimov@demlabs.net> Date: Tue, 26 Jan 2021 16:17:28 +0700 Subject: [PATCH] [+] libmdbx is used only if BUILD_WITH_GDB_DRIVER_MDBX=True in cmake --- CMakeLists.txt | 2 +- modules/global-db/CMakeLists.txt | 28 ++++++++++++++++--- .../global-db/dap_chain_global_db_driver.c | 2 ++ 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 13324c4e31..1d1256cdaf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ project(cellframe-sdk C) cmake_minimum_required(VERSION 2.8) set(CMAKE_C_STANDARD 11) -set(CELLFRAME_SDK_NATIVE_VERSION "2.8-13") +set(CELLFRAME_SDK_NATIVE_VERSION "2.8-14") add_definitions ("-DCELLFRAME_SDK_VERSION=\"${CELLFRAME_SDK_NATIVE_VERSION}\"") set(DAPSDK_MODULES "") diff --git a/modules/global-db/CMakeLists.txt b/modules/global-db/CMakeLists.txt index 4fc6a463cb..7ab3deeefb 100644 --- a/modules/global-db/CMakeLists.txt +++ b/modules/global-db/CMakeLists.txt @@ -1,14 +1,34 @@ cmake_minimum_required(VERSION 3.1) project (dap_chain_global_db C) -file(GLOB DAP_CHAIN_GLOBAL_DB_SRC *.c) -file(GLOB DAP_CHAIN_GLOBAL_DB_HDR include/*.h) +set(DAP_CHAIN_GLOBAL_DB_SRC + dap_chain_global_db.c + dap_chain_global_db_driver.c + dap_chain_global_db_driver_cdb.c + dap_chain_global_db_driver_sqlite.c + dap_chain_global_db_hist.c + dap_chain_global_db_remote.c + ) +set(DAP_CHAIN_GLOBAL_DB_HDR + include/dap_chain_global_db.h + include/dap_chain_global_db_driver.h + include/dap_chain_global_db_driver_cdb.h + include/dap_chain_global_db_driver_sqlite.h + include/dap_chain_global_db_hist.h + include/dap_chain_global_db_remote.h + ) +set(DAP_CHAIN_GLOBAL_DB_LIBS dap_core dap_crypto dap_chain sqlite3 dap_cuttdb json-c) +if(BUILD_WITH_GDB_DRIVER_MDBX) + set(DAP_CHAIN_GLOBAL_DB_SRC ${DAP_CHAIN_GLOBAL_DB_SRC} dap_chain_global_db_driver_mdbx.c) + set(DAP_CHAIN_GLOBAL_DB_HDR ${DAP_CHAIN_GLOBAL_DB_HDR} include/dap_chain_global_db_driver_mdbx.h) + set(DAP_CHAIN_GLOBAL_DB_LIBS ${DAP_CHAIN_GLOBAL_DB_LIBS} mdbx-static) + add_definitions ("-DDAP_CHAIN_GDB_ENGINE_MDBX") +endif() add_library(${PROJECT_NAME} STATIC ${DAP_CHAIN_GLOBAL_DB_SRC} ${DAP_CHAIN_GLOBAL_DB_HDR}) -target_link_libraries(${PROJECT_NAME} dap_core dap_crypto dap_chain sqlite3 dap_cuttdb json-c mdbx-static) -add_definitions ("-DDAP_CHAIN_GDB_ENGINE_MDBX") +target_link_libraries(${PROJECT_NAME} ${DAP_CHAIN_GLOBAL_DB_LIBS}) target_include_directories(dap_chain_global_db INTERFACE .) target_include_directories(${PROJECT_NAME} PUBLIC include) diff --git a/modules/global-db/dap_chain_global_db_driver.c b/modules/global-db/dap_chain_global_db_driver.c index 03562894c7..0c9309cee7 100644 --- a/modules/global-db/dap_chain_global_db_driver.c +++ b/modules/global-db/dap_chain_global_db_driver.c @@ -88,8 +88,10 @@ int dap_db_driver_init(const char *a_driver_name, const char *a_filename_db) l_ret = dap_db_driver_sqlite_init(a_filename_db, &s_drv_callback); else if(!dap_strcmp(s_used_driver, "cdb")) l_ret = dap_db_driver_cdb_init(a_filename_db, &s_drv_callback); +#ifdef DAP_CHAIN_GDB_ENGINE_MDBX else if(!dap_strcmp(s_used_driver, "mdbx")) l_ret = dap_db_driver_mdbx_init(a_filename_db, &s_drv_callback); +#endif else log_it(L_ERROR, "Unknown global_db driver \"%s\"", a_driver_name); #ifdef USE_WRITE_BUFFER -- GitLab