MINIFICPP-503 and MINIFICPP-507 ( Partial ): Remove compression downloads to module
This closes #578.
Signed-off-by: Aldrin Piri <aldrin@apache.org>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 91657e8..d996fe0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -182,24 +182,23 @@
else()
#set(OPENSSL_ROOT_DIR "/usr/lib/x86_64-linux-gnu")
endif()
-
- # Include OpenSSL
- find_package (OpenSSL REQUIRED)
-
else()
include(LibreSSL)
use_libre_ssl(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/ssl")
- find_package (OpenSSL REQUIRED)
- endif()
-if (OPENSSL_FOUND)
- include_directories(${OPENSSL_INCLUDE_DIR})
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DOPENSSL_SUPPORT")
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPENSSL_SUPPORT")
- MESSAGE("OpenSSL found at ${OPENSSL_LIBRARIES}")
-else ()
- message( FATAL_ERROR "OpenSSL was not found. Please install OpenSSL" )
-endif (OPENSSL_FOUND)
+ endif()
+
+ find_package (OpenSSL REQUIRED)
+
+ if (OPENSSL_FOUND)
+ include_directories(${OPENSSL_INCLUDE_DIR})
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DOPENSSL_SUPPORT")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPENSSL_SUPPORT")
+ MESSAGE("OpenSSL found at ${OPENSSL_LIBRARIES}")
+ else ()
+ message( FATAL_ERROR "OpenSSL was not found. Please install OpenSSL" )
+ endif (OPENSSL_FOUND)
+
else()
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/winssl")
endif()
@@ -227,51 +226,16 @@
${OPENSSL_PASSTHROUGH}
-G${CMAKE_GENERATOR})
+include(Compression)
+
if(WIN32 OR NOT USE_SYSTEM_ZLIB)
- message("Using bundled zlib")
-
- if (WIN32)
- if (CMAKE_BUILD_TYPE MATCHES RelWithDebInfo OR CMAKE_BUILD_TYPE MATCHES Release)
- set(BYPRODUCT "thirdparty/zlib-install/lib/zlibstatic.lib")
- else()
- set(BYPRODUCT "thirdparty/zlib-install/lib/zlibstaticd.lib")
- endif()
- else()
- set(BYPRODUCT "thirdparty/zlib-install/lib/libz.a")
- endif()
- ExternalProject_Add(
- zlib-external
- GIT_REPOSITORY "https://github.com/madler/zlib.git"
- GIT_TAG "cacf7f1d4e3d44d871b605da3b647f07d718623f" # Version 1.2.11
- SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/thirdparty/zlib-src"
- CMAKE_ARGS ${PASSTHROUGH_CMAKE_ARGS}
- "-DCMAKE_INSTALL_PREFIX=${CMAKE_CURRENT_BINARY_DIR}/thirdparty/zlib-install"
- BUILD_BYPRODUCTS ${BYPRODUCT}
- )
-
-
- add_library(z STATIC IMPORTED)
- set_target_properties(z PROPERTIES IMPORTED_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${BYPRODUCT}")
-
- set(ZLIB_BYPRODUCT "${CMAKE_CURRENT_BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
- set(ZLIB_BYPRODUCT_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib/include" CACHE STRING "" FORCE)
- set(ZLIB_BIN_DIR "${CMAKE_CURRENT_BINARY_DIR}/thirdparty/libressl-install/" CACHE STRING "" FORCE)
-
- add_dependencies(z zlib-external)
- set(ZLIB_FOUND "YES" CACHE STRING "" FORCE)
- set(ZLIB_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib/include" CACHE STRING "" FORCE)
- set(ZLIB_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib/include" CACHE STRING "" FORCE)
-
- set(ZLIB_LIBRARY "${CMAKE_CURRENT_BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
- set(ZLIB_LIBRARIES "${ZLIB_LIBRARY}" CACHE STRING "" FORCE)
- set(ZLIB_LIBRARY_RELEASE "${CMAKE_CURRENT_BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
- set(ZLIB_LIBRARY_DEBUG "${CMAKE_CURRENT_BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
-
- list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/zlib/dummy")
-else()
- find_package (ZLIB REQUIRED)
+ use_bundled_zlib(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
+ find_package (OpenSSL REQUIRED)
+ list(APPEND CMAKE_MODULE_PATH "${SOURCE_DIR}/cmake/zlib/dummy")
endif()
+find_package (ZLIB REQUIRED)
+
if (ZLIB_FOUND)
include_directories(${ZLIB_INCLUDE_DIRS})
endif()
@@ -430,21 +394,10 @@
endif()
if(BOOTSTRAP)
- add_subdirectory(thirdparty/cxxopts)
- createExtension(BOOTSTRAP "BOOTSTRAP" "Bootstraps documentation and other features" "extensions/bootstrap")
- # we don't currently need this route. A follow on should help re-write processor documentation from what exists in code, so this will remain here
- # execute_process(COMMAND ${CMAKE_BINARY_DIR}/extensions/bootstrap/bstrp --inputc2docs "${CMAKE_SOURCE_DIR}/PROCESSORS.md" --outputc2docs "${CMAKE_SOURCE_DIR}/libminifi/include/agent/agent_docs.h")
- return()
+ # display an error message for those using the bootstrap
+ message(FATAL_ERROR "Bootstrapping is no longer needed within the agent")
endif()
-message("-------- BOOTSTRAP BEGIN --------")
-execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}"
- -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
- -DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
- -DBOOTSTRAP=ON
- ${CMAKE_SOURCE_DIR}
- WORKING_DIRECTORY "${workdir}")
-message("-------- BOOTSTRAP END --------")
add_subdirectory(libminifi)
diff --git a/cmake/Compression.cmake b/cmake/Compression.cmake
new file mode 100644
index 0000000..2d03733
--- /dev/null
+++ b/cmake/Compression.cmake
@@ -0,0 +1,57 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+function(use_bundled_zlib SOURCE_DIR BINARY_DIR)
+ message("Using bundled zlib")
+ if (WIN32)
+ if (CMAKE_BUILD_TYPE MATCHES RelWithDebInfo OR CMAKE_BUILD_TYPE MATCHES Release)
+ set(BYPRODUCT "thirdparty/zlib-install/lib/zlibstatic.lib")
+ else()
+ set(BYPRODUCT "thirdparty/zlib-install/lib/zlibstaticd.lib")
+ endif()
+ else()
+ set(BYPRODUCT "thirdparty/zlib-install/lib/libz.a")
+ endif()
+ ExternalProject_Add(
+ zlib-external
+ GIT_REPOSITORY "https://github.com/madler/zlib.git"
+ GIT_TAG "cacf7f1d4e3d44d871b605da3b647f07d718623f" # Version 1.2.11
+ SOURCE_DIR "${BINARY_DIR}/thirdparty/zlib-src"
+ CMAKE_ARGS ${PASSTHROUGH_CMAKE_ARGS}
+ "-DCMAKE_INSTALL_PREFIX=${BINARY_DIR}/thirdparty/zlib-install"
+ BUILD_BYPRODUCTS ${BYPRODUCT}
+ )
+
+
+ add_library(z STATIC IMPORTED)
+ set_target_properties(z PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/${BYPRODUCT}")
+
+ set(ZLIB_BYPRODUCT "${BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
+ set(ZLIB_BYPRODUCT_INCLUDE "${SOURCE_DIR}/thirdparty/zlib/include" CACHE STRING "" FORCE)
+ set(ZLIB_BIN_DIR "${BINARY_DIR}/thirdparty/libressl-install/" CACHE STRING "" FORCE)
+
+ add_dependencies(z zlib-external)
+ set(ZLIB_FOUND "YES" CACHE STRING "" FORCE)
+ set(ZLIB_INCLUDE_DIR "${SOURCE_DIR}/thirdparty/zlib/include" CACHE STRING "" FORCE)
+ set(ZLIB_INCLUDE_DIRS "${SOURCE_DIR}/thirdparty/zlib/include" CACHE STRING "" FORCE)
+
+ set(ZLIB_LIBRARY "${BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
+ set(ZLIB_LIBRARIES "${ZLIB_LIBRARY}" CACHE STRING "" FORCE)
+ set(ZLIB_LIBRARY_RELEASE "${BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
+ set(ZLIB_LIBRARY_DEBUG "${BINARY_DIR}/${BYPRODUCT}" CACHE STRING "" FORCE)
+
+endfunction(use_bundled_zlib)
\ No newline at end of file
diff --git a/extensions/libarchive/CMakeLists.txt b/extensions/libarchive/CMakeLists.txt
index bc4798f..3463999 100644
--- a/extensions/libarchive/CMakeLists.txt
+++ b/extensions/libarchive/CMakeLists.txt
@@ -38,9 +38,6 @@
# Include UUID
target_link_libraries(minifi-archive-extensions ${LIBMINIFI})
target_link_libraries(minifi-archive-extensions archive_static )
-#find_package(ZLIB REQUIRED)
-#include_directories(${ZLIB_INCLUDE_DIRS})
-#target_link_libraries (minifi-archive-extensions ${ZLIB_LIBRARIES})
if (WIN32)
set_target_properties(minifi-archive-extensions PROPERTIES
LINK_FLAGS "/WHOLEARCHIVE"
diff --git a/extensions/script/CMakeLists.txt b/extensions/script/CMakeLists.txt
index d410471..bbb53f6 100644
--- a/extensions/script/CMakeLists.txt
+++ b/extensions/script/CMakeLists.txt
@@ -93,9 +93,6 @@
target_link_libraries(minifi-script-extensions minifi-lua-extensions)
endif()
-find_package(ZLIB REQUIRED)
-include_directories(${ZLIB_INCLUDE_DIRS})
-target_link_libraries (minifi-script-extensions ${ZLIB_LIBRARIES})
if (WIN32)
set_target_properties(minifi-script-extensions PROPERTIES
LINK_FLAGS "/WHOLEARCHIVE"