diff options
author | Simon Rettberg | 2020-07-28 17:49:17 +0200 |
---|---|---|
committer | Simon Rettberg | 2020-07-28 17:49:17 +0200 |
commit | e4dec3562e6cab27e1a3f40165e4c0d9d0bf05c9 (patch) | |
tree | 4b9b9a2ddf0cec0188f64639ed18f18f437b7c74 /CMakeLists.txt | |
parent | Merge branch 'no-working-flag' into fuse_ll (diff) | |
download | dnbd3-e4dec3562e6cab27e1a3f40165e4c0d9d0bf05c9.tar.gz dnbd3-e4dec3562e6cab27e1a3f40165e4c0d9d0bf05c9.tar.xz dnbd3-e4dec3562e6cab27e1a3f40165e4c0d9d0bf05c9.zip |
[SERVER] Add FUSE mode
Still needs some cleanup and optimizations, variable naming sucks,
comments, etc.
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 952ff00..9986aec 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,6 +11,7 @@ ENDIF() SET(CMAKE_INSTALL_PREFIX "/usr/local" CACHE PATH "Path prefix for system installation") OPTION(BUILD_FUSE_CLIENT "Build dnbd3 fuse client" ON) OPTION(BUILD_SERVER "Build dnbd3 server" ON) +OPTION(BUILD_SERVER_FUSE "Enable FUSE-Integration for dnbd3 server" OFF) OPTION(BUILD_STRESSTEST "Build dnbd3 stress testing tool" OFF) SET(EXTRA_C_FLAGS "" CACHE STRING "Additional options to pass to compiler") OPTION(DEBUG_LOCKS "Add lock debugging code to dnbd3-server" OFF) @@ -82,12 +83,15 @@ if (DEBUG_THREADS) ENDIF() FIND_PACKAGE(Threads) +if(BUILD_SERVER_FUSE OR BUILD_FUSE_CLIENT) + FIND_PACKAGE(Fuse) + message( " FUSE: ${FUSE_VERSION} " ) +endif() SET(DO_ABORT False) message( " *************************************************" ) if(BUILD_FUSE_CLIENT) - FIND_PACKAGE(Fuse) if(NOT FUSE_FOUND) message( " *** No fuse dev libs found, can't build dnbd3-fuse" ) SET(DO_ABORT True) @@ -107,6 +111,10 @@ if(BUILD_SERVER) message( " *** No jansson lib found, can't build dnbd3-server" ) SET(DO_ABORT True) endif() + if(BUILD_SERVER_FUSE AND NOT FUSE_FOUND) + message( " *** No fuse dev libs found, can't build dnbd3-server with fuse support" ) + SET(DO_ABORT True) + endif() endif() if(BUILD_STRESSTEST) if(NOT THREADS_FOUND) @@ -169,6 +177,11 @@ if(BUILD_SERVER) ADD_EXECUTABLE(dnbd3-server ${CMAKE_BINARY_DIR}/generated/version.c ${SERVER_SRCS}) TARGET_INCLUDE_DIRECTORIES(dnbd3-server PRIVATE ${JANSSON_INCLUDE_DIR}) TARGET_LINK_LIBRARIES(dnbd3-server ${CMAKE_THREAD_LIBS_INIT} ${JANSSON_LIBRARIES}) + if(BUILD_SERVER_FUSE) + TARGET_LINK_LIBRARIES(dnbd3-server ${FUSE_LIBRARIES}) + ADD_DEFINITIONS(-DBUILD_SERVER_FUSE) + TARGET_INCLUDE_DIRECTORIES(dnbd3-server PRIVATE ${FUSE_INCLUDE_DIRS}) + endif() if(UNIX AND NOT APPLE) target_link_libraries(dnbd3-server rt) endif() |