Files
create/src/Mod/Cloud/CMakeLists.txt
Jean-Marie Verdun 6a96fc2bee Fix MacOS build with Catalina and latest homebrew
Add support for self signed certificate in the case the end user wants
to use minio or any other self hosted s3 storage
2020-04-06 12:57:44 +02:00

90 lines
2.9 KiB
CMake

#----------------------------- Control certificate validation ------------
option(ALLOW_SELF_SIGNED_CERTIFICATE "Allow self signed certificate" OFF)
if (ALLOW_SELF_SIGNED_CERTIFICATE)
add_compile_options("-DALLOW_SELF_SIGNED_CERTIFICATE")
endif ()
#------------------------------ OpenSSL and CURL -------------------------
if (UNIX AND APPLE)
find_package(PkgConfig REQUIRED)
pkg_search_module(OPENSSL REQUIRED openssl)
elseif(WIN32 AND LIBPACK_FOUND)
SET( OPENSSL_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include)
SET( OPENSSL_LIBRARIES
optimized ${FREECAD_LIBPACK_DIR}/lib/openssl.lib debug ${FREECAD_LIBPACK_DIR}/lib/openssld.lib
optimized ${FREECAD_LIBPACK_DIR}/lib/libssl.lib debug ${FREECAD_LIBPACK_DIR}/lib/libssld.lib
optimized ${FREECAD_LIBPACK_DIR}/lib/libcrypto.lib debug ${FREECAD_LIBPACK_DIR}/lib/libcryptod.lib)
if( EXISTS ${FREECAD_LIBPACK_DIR}/lib/openssl.lib)
SET( OPENSSL_FOUND True)
else()
SET( OPENSSL_FOUND False)
message( FATAL_ERROR "openssl not found!" )
endif(EXISTS ${FREECAD_LIBPACK_DIR}/lib/openssl.lib)
if(OPENSSL_INCLUDE_DIR AND EXISTS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h")
file(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" openssl_version_str
REGEX "OPENSSL_VERSION_STR")
string(REGEX MATCH "\".*"
openssl_version_str ${openssl_version_str})
string(REPLACE "\"" "" openssl_version_str ${openssl_version_str})
set(OPENSSL_VERSION ${openssl_version_str})
endif ()
else()
find_package(OPENSSL REQUIRED)
endif(UNIX AND NOT APPLE)
if(OPENSSL_FOUND)
message(STATUS "openssl-${OPENSSL_VERSION} has been found\n")
else()
message( FATAL_ERROR "openssl not found!" )
endif(OPENSSL_FOUND)
IF(WIN32)
SET( CURL_FOUND True)
SET( CURL_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include)
SET( CURL_LIBRARIES
optimized ${FREECAD_LIBPACK_DIR}/lib/libcurl.lib debug ${FREECAD_LIBPACK_DIR}/lib/libcurl_debug.lib)
if( EXISTS ${FREECAD_LIBPACK_DIR}/lib/libcurl.lib)
SET( CURL_FOUND True)
else()
SET( CURL_FOUND False)
message( FATAL_ERROR "curl not found!" )
endif(EXISTS ${FREECAD_LIBPACK_DIR}/lib/libcurl.lib)
ELSE()
find_package(CURL REQUIRED)
ENDIF(WIN32)
if(CURL_FOUND)
message(STATUS "CURL has been found\n")
endif(CURL_FOUND)
# ------------------------------------------------------------------------
add_subdirectory(App)
if(BUILD_GUI)
add_subdirectory(Gui)
endif(BUILD_GUI)
set(Cloud_Scripts
Init.py
)
if(BUILD_GUI)
list (APPEND Cloud_Scripts InitGui.py)
endif(BUILD_GUI)
add_custom_target(CloudScripts ALL
SOURCES ${Cloud_Scripts}
)
fc_target_copy_resource_flat(CloudScripts
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_BINARY_DIR}/Mod/Cloud
${Cloud_Scripts}
)
install(
FILES
${Cloud_Scripts}
DESTINATION
Mod/Cloud
)