From 969496f15e1e0359e26c2c6e995ad4ef82720f86 Mon Sep 17 00:00:00 2001 From: Manuel Bentele Date: Fri, 16 Oct 2020 17:15:49 +0200 Subject: [BUILD] rewrite CMake build system to track changes of source files This change restructures the source code directories, separates shared form non-shared application code and adds CMake dependencies. These dependencies allow the tracking of changes and trigger a rebuild of those build targets where changed files are involved. WARNING: Note that the support of the DNBD3_SERVER_AFL build option is not supported yet. Thus, the option should be never turned on. --- src/bench/CMakeLists.txt | 13 +++++++++++++ src/bench/connection.c | 10 +++++----- src/bench/connection.h | 2 +- src/bench/helper.h | 2 +- src/bench/main.c | 6 ++++-- src/bench/serialize.c | 5 ----- 6 files changed, 24 insertions(+), 14 deletions(-) create mode 100644 src/bench/CMakeLists.txt delete mode 100644 src/bench/serialize.c (limited to 'src/bench') diff --git a/src/bench/CMakeLists.txt b/src/bench/CMakeLists.txt new file mode 100644 index 0000000..d8a5dc9 --- /dev/null +++ b/src/bench/CMakeLists.txt @@ -0,0 +1,13 @@ +cmake_minimum_required(VERSION 3.10) + +# set the project name +project(dnbd3-bench) + +# add compile option to enable enhanced POSIX pthread features +add_compile_options(-D_GNU_SOURCE) + +add_executable(dnbd3-bench ${CMAKE_CURRENT_SOURCE_DIR}/connection.c + ${CMAKE_CURRENT_SOURCE_DIR}/helper.c + ${CMAKE_CURRENT_SOURCE_DIR}/main.c) +target_link_libraries(dnbd3-bench dnbd3-version dnbd3-shared ${CMAKE_THREAD_LIBS_INIT}) +install(TARGETS dnbd3-bench RUNTIME DESTINATION bin) diff --git a/src/bench/connection.c b/src/bench/connection.c index 65f1757..974bc8a 100644 --- a/src/bench/connection.c +++ b/src/bench/connection.c @@ -1,10 +1,10 @@ #include "connection.h" #include "helper.h" -#include "../config.h" -#include "../shared/protocol.h" -#include "../shared/fdsignal.h" -#include "../shared/sockhelper.h" -#include "../shared/log.h" +#include +#include +#include +#include +#include #include #include diff --git a/src/bench/connection.h b/src/bench/connection.h index 770bf0d..422c93e 100644 --- a/src/bench/connection.h +++ b/src/bench/connection.h @@ -1,7 +1,7 @@ #ifndef _CONNECTION_H_ #define _CONNECTION_H_ -#include "../shared/fdsignal.h" +#include #include #include #include "helper.h" diff --git a/src/bench/helper.h b/src/bench/helper.h index e0c0262..53f32bf 100644 --- a/src/bench/helper.h +++ b/src/bench/helper.h @@ -1,7 +1,7 @@ #ifndef IMAGEHELPER_H #define IMAGEHELPER_H -#include "../types.h" +#include #include #include diff --git a/src/bench/main.c b/src/bench/main.c index f8c55c3..89c09f3 100644 --- a/src/bench/main.c +++ b/src/bench/main.c @@ -4,8 +4,9 @@ #include "connection.h" #include "helper.h" -#include "../shared/protocol.h" -#include "../shared/log.h" +#include +#include +#include #include #include @@ -19,6 +20,7 @@ static void printUsage(char *argv0, int exitCode) { + printf( "Version: %s\n", DNBD3_VERSION ); printf( "Usage: %s [--debug] --host --image [--rid revision]\n", argv0 ); printf( "Or: %s [-d] -h -i [-r revision]\n", argv0 ); printf( " -h --host List of space separated hosts to use\n" ); diff --git a/src/bench/serialize.c b/src/bench/serialize.c deleted file mode 100644 index 4934132..0000000 --- a/src/bench/serialize.c +++ /dev/null @@ -1,5 +0,0 @@ -#include -#include -#include - -#include "../serialize.c" -- cgit v1.2.3-55-g7522