You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ad...@apache.org on 2022/04/01 10:58:30 UTC
[nifi-minifi-cpp] 04/05: MINIFICPP-1792 Fix build with cmake 3.23.0
This is an automated email from the ASF dual-hosted git repository.
adebreceni pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git
commit 1d3b2fcbfad7baba50e045748f27c4c900517310
Author: Gabor Gyimesi <ga...@gmail.com>
AuthorDate: Fri Apr 1 12:55:49 2022 +0200
MINIFICPP-1792 Fix build with cmake 3.23.0
Signed-off-by: Adam Debreceni <ad...@apache.org>
This closes #1292
---
cmake/BundledAwsSdkCpp.cmake | 60 ++++++++++++++++++++-------------------
cmake/BundledAzureSdkCpp.cmake | 24 ++++++++--------
cmake/BundledCivetWeb.cmake | 10 +++----
cmake/BundledLibSSH2.cmake | 4 ++-
cmake/BundledLibcURL.cmake | 4 ++-
cmake/BundledOpen62541.cmake | 4 ++-
cmake/BundledOpenCV.cmake | 64 ++++++++++++++++++++++--------------------
cmake/BundledRocksDB.cmake | 4 ++-
cmake/BundledSpdlog.cmake | 6 ++--
cmake/BundledYamlCpp.cmake | 8 ++++--
10 files changed, 103 insertions(+), 85 deletions(-)
diff --git a/cmake/BundledAwsSdkCpp.cmake b/cmake/BundledAwsSdkCpp.cmake
index 8960bf9..aeb072c 100644
--- a/cmake/BundledAwsSdkCpp.cmake
+++ b/cmake/BundledAwsSdkCpp.cmake
@@ -25,9 +25,11 @@ function(use_bundled_libaws SOURCE_DIR BINARY_DIR)
(\"${Patch_EXECUTABLE}\" -p1 -R -s -f --dry-run -i \"${PATCH_FILE3}\" || \"${Patch_EXECUTABLE}\" -p1 -N -i \"${PATCH_FILE3}\") ")
if (WIN32)
- set(CMAKE_INSTALL_LIBDIR "lib")
+ set(LIBDIR "lib")
else()
include(GNUInstallDirs)
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
endif()
# Define byproducts
@@ -40,22 +42,22 @@ function(use_bundled_libaws SOURCE_DIR BINARY_DIR)
endif()
if (NOT WIN32 AND NOT APPLE)
- list(APPEND BYPRODUCTS "${CMAKE_INSTALL_LIBDIR}/${PREFIX}s2n.${SUFFIX}")
+ list(APPEND BYPRODUCTS "${LIBDIR}/${PREFIX}s2n.${SUFFIX}")
endif()
list(APPEND BYPRODUCTS
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-checksums.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-event-stream.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-s3.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-crt-cpp.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-common.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-mqtt.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-io.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-http.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-auth.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-cal.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-compression.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-cpp-sdk-core.${SUFFIX}"
- "${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-cpp-sdk-s3.${SUFFIX}")
+ "${LIBDIR}/${PREFIX}aws-checksums.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-event-stream.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-s3.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-crt-cpp.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-common.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-mqtt.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-io.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-http.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-auth.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-cal.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-c-compression.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-cpp-sdk-core.${SUFFIX}"
+ "${LIBDIR}/${PREFIX}aws-cpp-sdk-s3.${SUFFIX}")
FOREACH(BYPRODUCT ${BYPRODUCTS})
LIST(APPEND AWSSDK_LIBRARIES_LIST "${BINARY_DIR}/thirdparty/libaws-install/${BYPRODUCT}")
@@ -103,19 +105,19 @@ function(use_bundled_libaws SOURCE_DIR BINARY_DIR)
file(MAKE_DIRECTORY ${LIBAWS_INCLUDE_DIR})
add_library(AWS::aws-c-common STATIC IMPORTED)
- set_target_properties(AWS::aws-c-common PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-common.${SUFFIX}")
+ set_target_properties(AWS::aws-c-common PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-common.${SUFFIX}")
add_dependencies(AWS::aws-c-common aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-common INTERFACE ${LIBAWS_INCLUDE_DIR})
if (NOT WIN32 AND NOT APPLE)
add_library(AWS::s2n STATIC IMPORTED)
- set_target_properties(AWS::s2n PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}s2n.${SUFFIX}")
+ set_target_properties(AWS::s2n PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}s2n.${SUFFIX}")
add_dependencies(AWS::s2n aws-sdk-cpp-external)
target_include_directories(AWS::s2n INTERFACE ${LIBAWS_INCLUDE_DIR})
endif()
add_library(AWS::aws-c-io STATIC IMPORTED)
- set_target_properties(AWS::aws-c-io PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-io.${SUFFIX}")
+ set_target_properties(AWS::aws-c-io PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-io.${SUFFIX}")
add_dependencies(AWS::aws-c-io aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-io INTERFACE ${LIBAWS_INCLUDE_DIR})
target_link_libraries(AWS::aws-c-io INTERFACE AWS::aws-c-common)
@@ -124,55 +126,55 @@ function(use_bundled_libaws SOURCE_DIR BINARY_DIR)
endif()
add_library(AWS::aws-checksums STATIC IMPORTED)
- set_target_properties(AWS::aws-checksums PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-checksums.${SUFFIX}")
+ set_target_properties(AWS::aws-checksums PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-checksums.${SUFFIX}")
add_dependencies(AWS::aws-checksums aws-sdk-cpp-external)
target_include_directories(AWS::aws-checksums INTERFACE ${LIBAWS_INCLUDE_DIR})
add_library(AWS::aws-c-event-stream STATIC IMPORTED)
- set_target_properties(AWS::aws-c-event-stream PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-event-stream.${SUFFIX}")
+ set_target_properties(AWS::aws-c-event-stream PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-event-stream.${SUFFIX}")
add_dependencies(AWS::aws-c-event-stream aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-event-stream INTERFACE ${LIBAWS_INCLUDE_DIR})
target_link_libraries(AWS::aws-c-event-stream INTERFACE AWS::aws-checksums AWS::aws-c-io)
add_library(AWS::aws-c-auth STATIC IMPORTED)
- set_target_properties(AWS::aws-c-auth PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-auth.${SUFFIX}")
+ set_target_properties(AWS::aws-c-auth PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-auth.${SUFFIX}")
add_dependencies(AWS::aws-c-auth aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-auth INTERFACE ${LIBAWS_INCLUDE_DIR})
add_library(AWS::aws-c-s3 STATIC IMPORTED)
- set_target_properties(AWS::aws-c-s3 PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-s3.${SUFFIX}")
+ set_target_properties(AWS::aws-c-s3 PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-s3.${SUFFIX}")
add_dependencies(AWS::aws-c-s3 aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-s3 INTERFACE ${LIBAWS_INCLUDE_DIR})
target_link_libraries(AWS::aws-c-s3 INTERFACE AWS::aws-c-auth)
add_library(AWS::aws-c-mqtt STATIC IMPORTED)
- set_target_properties(AWS::aws-c-mqtt PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-mqtt.${SUFFIX}")
+ set_target_properties(AWS::aws-c-mqtt PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-mqtt.${SUFFIX}")
add_dependencies(AWS::aws-c-mqtt aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-mqtt INTERFACE ${LIBAWS_INCLUDE_DIR})
add_library(AWS::aws-c-http STATIC IMPORTED)
- set_target_properties(AWS::aws-c-http PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-http.${SUFFIX}")
+ set_target_properties(AWS::aws-c-http PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-http.${SUFFIX}")
add_dependencies(AWS::aws-c-http aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-http INTERFACE ${LIBAWS_INCLUDE_DIR})
add_library(AWS::aws-c-cal STATIC IMPORTED)
- set_target_properties(AWS::aws-c-cal PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-cal.${SUFFIX}")
+ set_target_properties(AWS::aws-c-cal PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-cal.${SUFFIX}")
add_dependencies(AWS::aws-c-cal aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-cal INTERFACE ${LIBAWS_INCLUDE_DIR})
add_library(AWS::aws-c-compression STATIC IMPORTED)
- set_target_properties(AWS::aws-c-compression PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-c-compression.${SUFFIX}")
+ set_target_properties(AWS::aws-c-compression PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-c-compression.${SUFFIX}")
add_dependencies(AWS::aws-c-compression aws-sdk-cpp-external)
target_include_directories(AWS::aws-c-compression INTERFACE ${LIBAWS_INCLUDE_DIR})
add_library(AWS::aws-crt-cpp STATIC IMPORTED)
- set_target_properties(AWS::aws-crt-cpp PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-crt-cpp.${SUFFIX}")
+ set_target_properties(AWS::aws-crt-cpp PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-crt-cpp.${SUFFIX}")
add_dependencies(AWS::aws-crt-cpp aws-sdk-cpp-external)
target_include_directories(AWS::aws-crt-cpp INTERFACE ${LIBAWS_INCLUDE_DIR})
target_link_libraries(AWS::aws-crt-cpp INTERFACE AWS::aws-c-io AWS::aws-c-s3 AWS::aws-c-mqtt AWS::aws-c-http AWS::aws-c-cal AWS::aws-c-compression)
add_library(AWS::aws-cpp-sdk-core STATIC IMPORTED)
- set_target_properties(AWS::aws-cpp-sdk-core PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-cpp-sdk-core.${SUFFIX}")
+ set_target_properties(AWS::aws-cpp-sdk-core PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-cpp-sdk-core.${SUFFIX}")
add_dependencies(AWS::aws-cpp-sdk-core aws-sdk-cpp-external)
target_include_directories(AWS::aws-cpp-sdk-core INTERFACE ${LIBAWS_INCLUDE_DIR})
target_link_libraries(AWS::aws-cpp-sdk-core INTERFACE AWS::aws-crt-cpp AWS::aws-c-event-stream CURL::libcurl OpenSSL::Crypto OpenSSL::SSL ZLIB::ZLIB Threads::Threads)
@@ -185,7 +187,7 @@ function(use_bundled_libaws SOURCE_DIR BINARY_DIR)
endif()
add_library(AWS::aws-cpp-sdk-s3 STATIC IMPORTED)
- set_target_properties(AWS::aws-cpp-sdk-s3 PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${CMAKE_INSTALL_LIBDIR}/${PREFIX}aws-cpp-sdk-s3.${SUFFIX}")
+ set_target_properties(AWS::aws-cpp-sdk-s3 PROPERTIES IMPORTED_LOCATION "${BINARY_DIR}/thirdparty/libaws-install/${LIBDIR}/${PREFIX}aws-cpp-sdk-s3.${SUFFIX}")
add_dependencies(AWS::aws-cpp-sdk-s3 aws-sdk-cpp-external)
target_include_directories(AWS::aws-cpp-sdk-s3 INTERFACE ${LIBAWS_INCLUDE_DIR})
target_link_libraries(AWS::aws-cpp-sdk-s3 INTERFACE AWS::aws-cpp-sdk-core)
diff --git a/cmake/BundledAzureSdkCpp.cmake b/cmake/BundledAzureSdkCpp.cmake
index ed3d318..847b2c7 100644
--- a/cmake/BundledAzureSdkCpp.cmake
+++ b/cmake/BundledAzureSdkCpp.cmake
@@ -22,26 +22,28 @@ function(use_bundled_libazure SOURCE_DIR BINARY_DIR)
# Define byproducts
set(INSTALL_DIR "${BINARY_DIR}/thirdparty/azure-sdk-cpp-install")
if (WIN32)
- set(CMAKE_INSTALL_LIBDIR "lib")
+ set(LIBDIR "lib")
else()
include(GNUInstallDirs)
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
endif()
if (WIN32)
set(SUFFIX "lib")
set(PREFIX "")
- set(AZURE_CORE_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-core.${SUFFIX}")
- set(AZURE_STORAGE_COMMON_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-storage-common.${SUFFIX}")
- set(AZURE_STORAGE_BLOBS_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-storage-blobs.${SUFFIX}")
- set(AZURE_IDENTITY_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-identity.${SUFFIX}")
- set(AZURE_STORAGE_FILES_DATALAKE_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-storage-files-datalake.${SUFFIX}")
+ set(AZURE_CORE_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-core.${SUFFIX}")
+ set(AZURE_STORAGE_COMMON_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-storage-common.${SUFFIX}")
+ set(AZURE_STORAGE_BLOBS_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-storage-blobs.${SUFFIX}")
+ set(AZURE_IDENTITY_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-identity.${SUFFIX}")
+ set(AZURE_STORAGE_FILES_DATALAKE_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-storage-files-datalake.${SUFFIX}")
else()
set(SUFFIX "a")
set(PREFIX "lib")
- set(AZURE_CORE_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-core.${SUFFIX}")
- set(AZURE_STORAGE_COMMON_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-storage-common.${SUFFIX}")
- set(AZURE_STORAGE_BLOBS_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-storage-blobs.${SUFFIX}")
- set(AZURE_IDENTITY_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-identity.${SUFFIX}")
- set(AZURE_STORAGE_FILES_DATALAKE_LIB "${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}azure-storage-files-datalake.${SUFFIX}")
+ set(AZURE_CORE_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-core.${SUFFIX}")
+ set(AZURE_STORAGE_COMMON_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-storage-common.${SUFFIX}")
+ set(AZURE_STORAGE_BLOBS_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-storage-blobs.${SUFFIX}")
+ set(AZURE_IDENTITY_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-identity.${SUFFIX}")
+ set(AZURE_STORAGE_FILES_DATALAKE_LIB "${INSTALL_DIR}/${LIBDIR}/${PREFIX}azure-storage-files-datalake.${SUFFIX}")
endif()
set(AZURESDK_LIBRARIES_LIST
diff --git a/cmake/BundledCivetWeb.cmake b/cmake/BundledCivetWeb.cmake
index c030ce7..b4581bc 100644
--- a/cmake/BundledCivetWeb.cmake
+++ b/cmake/BundledCivetWeb.cmake
@@ -26,11 +26,11 @@ function(use_bundled_civetweb SOURCE_DIR BINARY_DIR)
if (WIN32)
set(SUFFIX "lib")
else()
- set(PREFIX "lib")
- include(GNUInstallDirs)
- set(LIBDIR "${CMAKE_INSTALL_LIBDIR}")
- set(SUFFIX "a")
-
+ set(PREFIX "lib")
+ include(GNUInstallDirs)
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
+ set(SUFFIX "a")
endif()
set(BYPRODUCTS
diff --git a/cmake/BundledLibSSH2.cmake b/cmake/BundledLibSSH2.cmake
index b86da0c..7c3bf82 100644
--- a/cmake/BundledLibSSH2.cmake
+++ b/cmake/BundledLibSSH2.cmake
@@ -26,7 +26,9 @@ function(use_bundled_libssh2 SOURCE_DIR BINARY_DIR)
set(BYPRODUCT "lib/libssh2.lib")
else()
include(GNUInstallDirs)
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/libssh2.a")
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
+ set(BYPRODUCT "${LIBDIR}/libssh2.a")
endif()
# Set build options
diff --git a/cmake/BundledLibcURL.cmake b/cmake/BundledLibcURL.cmake
index 88f325e..6295ac9 100644
--- a/cmake/BundledLibcURL.cmake
+++ b/cmake/BundledLibcURL.cmake
@@ -26,7 +26,9 @@ function(use_bundled_curl SOURCE_DIR BINARY_DIR)
set(BYPRODUCT "lib/libcurl.lib")
else()
include(GNUInstallDirs)
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/libcurl.a")
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
+ set(BYPRODUCT "${LIBDIR}/libcurl.a")
endif()
# Set build options
diff --git a/cmake/BundledOpen62541.cmake b/cmake/BundledOpen62541.cmake
index c03c0bc..da1369a 100644
--- a/cmake/BundledOpen62541.cmake
+++ b/cmake/BundledOpen62541.cmake
@@ -24,7 +24,9 @@ function(use_bundled_open62541 SOURCE_DIR BINARY_DIR)
set(BYPRODUCT "lib/open62541.lib")
else()
include(GNUInstallDirs)
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/libopen62541.a")
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
+ set(BYPRODUCT "${LIBDIR}/libopen62541.a")
endif()
# Set build options
diff --git a/cmake/BundledOpenCV.cmake b/cmake/BundledOpenCV.cmake
index 1a48e89..b79fb98 100644
--- a/cmake/BundledOpenCV.cmake
+++ b/cmake/BundledOpenCV.cmake
@@ -17,9 +17,11 @@
function(use_bundled_opencv SOURCE_DIR BINARY_DIR)
if (WIN32)
- set(CMAKE_INSTALL_LIBDIR "lib")
+ set(LIBDIR "lib")
else()
include(GNUInstallDirs)
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
endif()
# Define byproducts
@@ -37,21 +39,21 @@ function(use_bundled_opencv SOURCE_DIR BINARY_DIR)
set(OPENCV_BYPRODUCT_DIR "${CMAKE_CURRENT_BINARY_DIR}/thirdparty/opencv-install")
set(BYPRODUCTS
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_flann${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_dnn${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_objdetect${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_core${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_gapi${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_imgcodecs${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_calib3d${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_imgproc${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_photo${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_videoio${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_video${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_stitching${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_features2d${SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libjpeg-turbo${THIRDPARTY_SUFFIX}"
- "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libpng${THIRDPARTY_SUFFIX}")
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_flann${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_dnn${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_objdetect${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_core${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_gapi${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_imgcodecs${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_calib3d${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_imgproc${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_photo${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_videoio${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_video${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_stitching${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_features2d${SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libjpeg-turbo${THIRDPARTY_SUFFIX}"
+ "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libpng${THIRDPARTY_SUFFIX}")
# Set build options
set(OPENCV_CMAKE_ARGS ${PASSTHROUGH_CMAKE_ARGS}
@@ -129,79 +131,79 @@ function(use_bundled_opencv SOURCE_DIR BINARY_DIR)
file(MAKE_DIRECTORY ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libjpeg-turbo STATIC IMPORTED)
- set_target_properties(OPENCV::libjpeg-turbo PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libjpeg-turbo${THIRDPARTY_SUFFIX}")
+ set_target_properties(OPENCV::libjpeg-turbo PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libjpeg-turbo${THIRDPARTY_SUFFIX}")
add_dependencies(OPENCV::libjpeg-turbo opencv-external)
add_library(OPENCV::libpng STATIC IMPORTED)
- set_target_properties(OPENCV::libpng PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libpng${THIRDPARTY_SUFFIX}")
+ set_target_properties(OPENCV::libpng PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${THIRDPARTY_DIR}${PREFIX}libpng${THIRDPARTY_SUFFIX}")
add_dependencies(OPENCV::libpng opencv-external)
add_library(OPENCV::libopencv-core STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-core PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_core${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-core PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_core${SUFFIX}")
add_dependencies(OPENCV::libopencv-core opencv-external ZLIB::ZLIB)
target_include_directories(OPENCV::libopencv-core INTERFACE ${OPENCV_INCLUDE_DIR})
target_link_libraries(OPENCV::libopencv-core INTERFACE ZLIB::ZLIB)
add_library(OPENCV::libopencv-flann STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-flann PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_flann${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-flann PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_flann${SUFFIX}")
add_dependencies(OPENCV::libopencv-flann opencv-external)
target_include_directories(OPENCV::libopencv-flann INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-dnn STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-dnn PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_dnn${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-dnn PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_dnn${SUFFIX}")
add_dependencies(OPENCV::libopencv-dnn opencv-external)
target_include_directories(OPENCV::libopencv-dnn INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-objdetect STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-objdetect PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_objdetect${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-objdetect PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_objdetect${SUFFIX}")
add_dependencies(OPENCV::libopencv-objdetect opencv-external)
target_include_directories(OPENCV::libopencv-objdetect INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-gapi STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-gapi PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_gapi${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-gapi PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_gapi${SUFFIX}")
add_dependencies(OPENCV::libopencv-gapi opencv-external)
target_include_directories(OPENCV::libopencv-gapi INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-imgcodecs STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-imgcodecs PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_imgcodecs${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-imgcodecs PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_imgcodecs${SUFFIX}")
add_dependencies(OPENCV::libopencv-imgcodecs opencv-external)
target_include_directories(OPENCV::libopencv-imgcodecs INTERFACE ${OPENCV_INCLUDE_DIR})
target_link_libraries(OPENCV::libopencv-imgcodecs INTERFACE OPENCV::libopencv-core OPENCV::libjpeg-turbo OPENCV::libpng)
add_library(OPENCV::libopencv-calib3d STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-calib3d PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_calib3d${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-calib3d PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_calib3d${SUFFIX}")
add_dependencies(OPENCV::libopencv-calib3d opencv-external)
target_include_directories(OPENCV::libopencv-calib3d INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-imgproc STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-imgproc PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_imgproc${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-imgproc PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_imgproc${SUFFIX}")
add_dependencies(OPENCV::libopencv-imgproc opencv-external)
target_include_directories(OPENCV::libopencv-imgproc INTERFACE ${OPENCV_INCLUDE_DIR})
target_link_libraries(OPENCV::libopencv-imgproc INTERFACE OPENCV::libopencv-core)
add_library(OPENCV::libopencv-photo STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-photo PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_photo${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-photo PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_photo${SUFFIX}")
add_dependencies(OPENCV::libopencv-photo opencv-external)
target_include_directories(OPENCV::libopencv-photo INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-videoio STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-videoio PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_videoio${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-videoio PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_videoio${SUFFIX}")
add_dependencies(OPENCV::libopencv-videoio opencv-external)
target_include_directories(OPENCV::libopencv-videoio INTERFACE ${OPENCV_INCLUDE_DIR})
target_link_libraries(OPENCV::libopencv-videoio INTERFACE OPENCV::libopencv-core)
add_library(OPENCV::libopencv-video STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-video PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_video${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-video PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_video${SUFFIX}")
add_dependencies(OPENCV::libopencv-video opencv-external)
target_include_directories(OPENCV::libopencv-video INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-stitching STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-stitching PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_stitching${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-stitching PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_stitching${SUFFIX}")
add_dependencies(OPENCV::libopencv-stitching opencv-external)
target_include_directories(OPENCV::libopencv-stitching INTERFACE ${OPENCV_INCLUDE_DIR})
add_library(OPENCV::libopencv-features2d STATIC IMPORTED)
- set_target_properties(OPENCV::libopencv-features2d PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${CMAKE_INSTALL_LIBDIR}/${PREFIX}opencv_features2d${SUFFIX}")
+ set_target_properties(OPENCV::libopencv-features2d PROPERTIES IMPORTED_LOCATION "${OPENCV_BYPRODUCT_DIR}/${LIBDIR}/${PREFIX}opencv_features2d${SUFFIX}")
add_dependencies(OPENCV::libopencv-features2d opencv-external)
target_include_directories(OPENCV::libopencv-features2d INTERFACE ${OPENCV_INCLUDE_DIR})
diff --git a/cmake/BundledRocksDB.cmake b/cmake/BundledRocksDB.cmake
index de9c45d..76ce50a 100644
--- a/cmake/BundledRocksDB.cmake
+++ b/cmake/BundledRocksDB.cmake
@@ -23,7 +23,9 @@ function(use_bundled_rocksdb SOURCE_DIR BINARY_DIR)
set(BYPRODUCT "lib/rocksdb.lib")
else()
include(GNUInstallDirs)
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/librocksdb.a")
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
+ set(BYPRODUCT "${LIBDIR}/librocksdb.a")
endif()
# Set build options
diff --git a/cmake/BundledSpdlog.cmake b/cmake/BundledSpdlog.cmake
index b1d4bc7..974cbba 100644
--- a/cmake/BundledSpdlog.cmake
+++ b/cmake/BundledSpdlog.cmake
@@ -25,10 +25,12 @@ function(use_bundled_spdlog SOURCE_DIR BINARY_DIR)
endif()
else()
include(GNUInstallDirs)
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/libspdlogd.a")
+ set(BYPRODUCT "${LIBDIR}/libspdlogd.a")
else()
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/libspdlog.a")
+ set(BYPRODUCT "${LIBDIR}/libspdlog.a")
endif()
endif()
diff --git a/cmake/BundledYamlCpp.cmake b/cmake/BundledYamlCpp.cmake
index 5f4f2b3..d88663a 100644
--- a/cmake/BundledYamlCpp.cmake
+++ b/cmake/BundledYamlCpp.cmake
@@ -17,16 +17,18 @@
function(use_bundled_yamlcpp SOURCE_DIR BINARY_DIR)
if (WIN32)
- set(CMAKE_INSTALL_LIBDIR "lib")
+ set(LIBDIR "lib")
else()
include(GNUInstallDirs)
+ string(REPLACE "/" ";" LIBDIR_LIST ${CMAKE_INSTALL_LIBDIR})
+ list(GET LIBDIR_LIST 0 LIBDIR)
endif()
# Define byproducts
if (WIN32)
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/yaml-cpp.lib")
+ set(BYPRODUCT "${LIBDIR}/yaml-cpp.lib")
else()
- set(BYPRODUCT "${CMAKE_INSTALL_LIBDIR}/libyaml-cpp.a")
+ set(BYPRODUCT "${LIBDIR}/libyaml-cpp.a")
endif()
# Set build options