diff --git a/CMakeLists.txt b/CMakeLists.txt index 21aa51f223..9b31d6c0e1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -230,8 +230,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/ssl") if (ENABLE_BZIP2 AND (ENABLE_LIBARCHIVE OR (ENABLE_ROCKSDB AND NOT WIN32))) include(GetBZip2) get_bzip2(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}) - # include(BundledBZip2) - # use_bundled_bzip2(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}) list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/bzip2/dummy") endif() diff --git a/CONAN.md b/CONAN.md index 088f343156..f4a5d04f20 100644 --- a/CONAN.md +++ b/CONAN.md @@ -17,6 +17,8 @@ We will walk through the steps to build MiNiFi using conan version 2 that comes with CMake integration. We will also go through the process of creating a MiNiFi conan package for easier integration into other C++ projects. We will start with a discussion on building MiNiFi using the standalone CMake approach and the conan approach. After we have built MiNiFi and created a MiNiFi conan package, we will conclude by elaborating on some of the benefits that can come with integrating a MiNiFi conan package into new or existing C++ infrastructure with respect to real-time robotic systems. +Conan build support is experimental, and not yet suitable for general use. + ## Table of Contents - [Apache NiFi - MiNiFi - C++ Conan Build Guide](#apache-nifi---minifi---c---conan-build-guide) diff --git a/cmake/GetLibXml2.cmake b/cmake/GetLibXml2.cmake index d8d5e22c68..4e3924ef64 100644 --- a/cmake/GetLibXml2.cmake +++ b/cmake/GetLibXml2.cmake @@ -17,10 +17,10 @@ function(get_libxml2 SOURCE_DIR BINARY_DIR) if(MINIFI_LIBXML2_SOURCE STREQUAL "CONAN") - message("Using Conan Packager to install LibXml2") + message("Using Conan Packager to install libxml2") find_package(libxml2 REQUIRED) elseif(MINIFI_LIBXML2_SOURCE STREQUAL "BUILD") - message("Using CMake to build LibXml2 from source") + message("Using CMake to build libxml2 from source") include(BundledLibXml2) use_bundled_libxml2(${SOURCE_DIR} ${BINARY_DIR}) endif() diff --git a/cmake/GetSpdlog.cmake b/cmake/GetSpdlog.cmake index f342e4be83..acffd7bb1e 100644 --- a/cmake/GetSpdlog.cmake +++ b/cmake/GetSpdlog.cmake @@ -20,12 +20,12 @@ function(get_spdlog) get_fmt() if(MINIFI_SPDLOG_SOURCE STREQUAL "CONAN") - message("Using Conan Packager to install Spdlog") + message("Using Conan Packager to install spdlog") find_package(spdlog REQUIRED) add_library(spdlog ALIAS spdlog::spdlog) elseif(MINIFI_SPDLOG_SOURCE STREQUAL "BUILD") - message("Using CMake to build Spdlog from source") + message("Using CMake to build spdlog from source") include(Spdlog) endif() endfunction(get_spdlog) diff --git a/thirdparty/rocksdb/all/patches/cstdint.patch b/thirdparty/rocksdb/all/patches/cstdint.patch index 4cff815831..2435905c9a 100644 --- a/thirdparty/rocksdb/all/patches/cstdint.patch +++ b/thirdparty/rocksdb/all/patches/cstdint.patch @@ -3,10 +3,10 @@ index 75d61abb4..f42ef6dc2 100644 --- a/options/offpeak_time_info.h +++ b/options/offpeak_time_info.h @@ -5,6 +5,7 @@ - + #pragma once - + +#include #include - + #include "rocksdb/rocksdb_namespace.h" diff --git a/thirdparty/rocksdb/all/patches/dboptions_equality_operator.patch b/thirdparty/rocksdb/all/patches/dboptions_equality_operator.patch index cff3dd31ea..2efb91ea0e 100644 --- a/thirdparty/rocksdb/all/patches/dboptions_equality_operator.patch +++ b/thirdparty/rocksdb/all/patches/dboptions_equality_operator.patch @@ -3,19 +3,19 @@ index ae5ed2c26..0038c6bff 100644 --- a/include/rocksdb/options.h +++ b/include/rocksdb/options.h @@ -397,6 +397,7 @@ struct DbPath { - + DbPath() : target_size(0) {} DbPath(const std::string& p, uint64_t t) : path(p), target_size(t) {} + bool operator==(const DbPath& other) const = default; }; - + extern const char* kHostnameForDbHostId; @@ -1008,6 +1009,8 @@ struct DBOptions { // Create DBOptions from Options explicit DBOptions(const Options& options); - + + bool operator==(const DBOptions& other) const = default; + void Dump(Logger* log) const; - + // Allows OS to incrementally sync files to disk while they are being