From 8e886651f1f39e5281f8e19f3cd9cb65772d2e27 Mon Sep 17 00:00:00 2001 From: Timotej S <6674623+underhood@users.noreply.github.com> Date: Wed, 28 Sep 2022 11:12:44 +0200 Subject: [PATCH] CMake - add possibility to build without ACLK (#13736) make aclk optional in CMake --- CMakeLists.txt | 16 ++++++++++++++-- config.cmake.h.in | 2 +- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0bc0f7f8c9..fc7e47fbd0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -417,6 +417,8 @@ target_include_directories(judy PUBLIC libnetdata/libjudy/src libnetdata/libjudy/src/JudyCommon) +target_include_directories(judy BEFORE PUBLIC ${GENERATED_CONFIG_H_DIR}) + target_compile_definitions(judy PUBLIC JU_64BIT JUDYL) @@ -514,6 +516,8 @@ ENDIF() add_library(libnetdata OBJECT ${LIBNETDATA_FILES}) +target_include_directories(libnetdata BEFORE PUBLIC ${GENERATED_CONFIG_H_DIR}) + set(APPS_PLUGIN_FILES collectors/apps.plugin/apps_plugin.c) @@ -1195,6 +1199,10 @@ ENDIF() set(NETDATA_COMMON_LIBRARIES ${NETDATA_COMMON_LIBRARIES} m ${CMAKE_THREAD_LIBS_INIT}) +option(ENABLE_ACLK "Enables functionality required to connect to cloud (must be activated by user at run time)" ON) + +if(ENABLE_ACLK) + find_package(Protobuf REQUIRED) function(PROTOBUF_ACLK_GENERATE_CPP SRCS HDRS) @@ -1250,14 +1258,17 @@ PROTOBUF_ACLK_GENERATE_CPP(ACLK_PROTO_BUILT_SRCS ACLK_PROTO_BUILT_HDRS ${ACLK_PR list(APPEND NETDATA_COMMON_LIBRARIES ${PROTOBUF_LIBRARIES}) list(APPEND NETDATA_COMMON_INCLUDE_DIRS ${PROTOBUF_INCLUDE_DIRS}) list(APPEND NETDATA_COMMON_CFLAGS ${PROTOBUF_CFLAGS_OTHER}) -list(APPEND NETDATA_FILES ${ACLK_ALWAYS_BUILD}) -list(APPEND NETDATA_FILES ${TIMEX_PLUGIN_FILES}) list(APPEND NETDATA_FILES ${ACLK_FILES} ${ACLK_PROTO_BUILT_SRCS} ${ACLK_PROTO_BUILT_HDRS}) include_directories(BEFORE ${CMAKE_SOURCE_DIR}/aclk/aclk-schemas) include_directories(BEFORE ${CMAKE_SOURCE_DIR}/mqtt_websockets/MQTT-C/include) include_directories(BEFORE ${CMAKE_SOURCE_DIR}/mqtt_websockets/src/include) include_directories(BEFORE ${CMAKE_SOURCE_DIR}/mqtt_websockets/c-rbuf/include) +ENDIF() + +list(APPEND NETDATA_FILES ${ACLK_ALWAYS_BUILD}) +list(APPEND NETDATA_FILES ${TIMEX_PLUGIN_FILES}) + # ----------------------------------------------------------------------------- # netdata @@ -1273,6 +1284,7 @@ IF(LINUX) ) target_link_libraries (netdata libnetdata ${NETDATA_COMMON_LIBRARIES}) target_include_directories(netdata PUBLIC ${NETDATA_COMMON_INCLUDE_DIRS}) + target_include_directories(netdata BEFORE PUBLIC ${GENERATED_CONFIG_H_DIR}) target_compile_options(netdata PUBLIC ${NETDATA_COMMON_CFLAGS}) SET(ENABLE_PLUGIN_CGROUP_NETWORK True) diff --git a/config.cmake.h.in b/config.cmake.h.in index cc06bd6950..e0faaa4cfd 100644 --- a/config.cmake.h.in +++ b/config.cmake.h.in @@ -46,7 +46,7 @@ #define ENABLE_HTTPS 1 #cmakedefine01 HAVE_X509_VERIFY_PARAM_set1_host -#define ENABLE_ACLK +#cmakedefine ENABLE_ACLK #define ENABLE_DBENGINE #define ENABLE_COMPRESSION // pkg_check_modules(LIBLZ4 REQUIRED liblz4) #cmakedefine ENABLE_APPS_PLUGIN