aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/CMakeLists.txt10
-rw-r--r--src/core/CMakeLists.txt75
2 files changed, 47 insertions, 38 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 5496572c..2e25979f 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -485,11 +485,14 @@ if (LINUX AND LINUX_INSTALL_SOFTWARE)
set(GPGFRONTEND_INSTALL_LIBRARIES "")
else()
set(GPGFRONTEND_INSTALL_LIBRARIES
- mimalloc
gpgfrontend_core
gpgfrontend_ui
gpgfrontend_test
gpgfrontend_module_sdk)
+
+ if(NOT APPLE)
+ list(APPEND GPGFRONTEND_INSTALL_LIBRARIES mimalloc)
+ endif()
endif()
message(STATUS "GpgFrontend Install Libraries: ${GPGFRONTEND_INSTALL_LIBRARIES}")
@@ -531,12 +534,15 @@ if (STABLE_BUILD_FULL_SDK)
include(GNUInstallDirs)
set(GPGFRONTEND_SDK_INSTALL_LIBRARIES
- mimalloc
gpgfrontend_core
gpgfrontend_ui
gpgfrontend_test
gpgfrontend_module_sdk)
+ if(NOT APPLE)
+ list(APPEND GPGFRONTEND_INSTALL_LIBRARIES mimalloc)
+ endif()
+
install(TARGETS ${GPGFRONTEND_SDK_INSTALL_LIBRARIES}
EXPORT GpgFrontendTargets
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 5725aab0..33c863e7 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -37,7 +37,6 @@ aux_source_directory(./utils/aes CORE_SOURCE)
aux_source_directory(./utils CORE_SOURCE)
aux_source_directory(. CORE_SOURCE)
-
# define libgpgfrontend_core
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
@@ -51,21 +50,22 @@ generate_export_header(gpgfrontend_core EXPORT_FILE_NAME "${_export_file}")
# compile definitions
target_compile_definitions(gpgfrontend_core PUBLIC GF_CORE)
+# mimalloc (except apple macos)
+if(NOT APPLE)
+ target_link_libraries(gpgfrontend_core PUBLIC mimalloc)
-# link options
-
-target_link_libraries(gpgfrontend_core PUBLIC mimalloc)
-if(MINGW)
- set_target_properties(mimalloc
- PROPERTIES
- LIBRARY_OUTPUT_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
- RUNTIME_OUTPUT_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
- )
+ if(MINGW)
+ set_target_properties(mimalloc
+ PROPERTIES
+ LIBRARY_OUTPUT_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
+ RUNTIME_OUTPUT_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
+ )
+ endif()
endif()
# qt-aes
target_sources(gpgfrontend_core PRIVATE
- ${CMAKE_SOURCE_DIR}/third_party/qt-aes/qaesencryption.cpp)
+ ${CMAKE_SOURCE_DIR}/third_party/qt-aes/qaesencryption.cpp)
# encoding detect library
aux_source_directory(${CMAKE_SOURCE_DIR}/third_party/encoding-detect ENCODING_DETECT_SOURCE_CODE)
@@ -73,13 +73,14 @@ target_sources(gpgfrontend_core PUBLIC ${ENCODING_DETECT_SOURCE_CODE})
# link gnupg libraries
target_link_libraries(gpgfrontend_core PUBLIC gpgme assuan gpg-error)
+
# link openssl
target_link_libraries(gpgfrontend_core PUBLIC OpenSSL::SSL OpenSSL::Crypto)
-if (MINGW)
+
+if(MINGW)
# for uuid ability in mingw
target_link_libraries(gpgfrontend_core PUBLIC bcrypt)
-endif ()
-
+endif()
# configure libarchive
if(NOT MINGW)
@@ -90,6 +91,7 @@ if(NOT MINGW)
set(LibArchive_INCLUDE_DIR "/opt/homebrew/opt/libarchive/include")
endif()
endif()
+
find_package(LibArchive REQUIRED)
target_include_directories(gpgfrontend_core PRIVATE ${LibArchive_INCLUDE_DIR})
else()
@@ -106,46 +108,47 @@ endif()
target_link_libraries(gpgfrontend_core PRIVATE archive)
if(GPGFRONTEND_QT5_BUILD)
- # link Qt core
- target_link_libraries(gpgfrontend_core PUBLIC Qt5::Core)
+ # link Qt core
+ target_link_libraries(gpgfrontend_core PUBLIC Qt5::Core)
else()
- # link Qt core
- target_link_libraries(gpgfrontend_core PUBLIC Qt6::Core)
+ # link Qt core
+ target_link_libraries(gpgfrontend_core PUBLIC Qt6::Core)
endif()
# set up pch
target_precompile_headers(gpgfrontend_core
- PUBLIC ${CMAKE_SOURCE_DIR}/src/GpgFrontend.h
- PUBLIC GpgFrontendCore.h
- PUBLIC GpgConstants.h)
+ PUBLIC ${CMAKE_SOURCE_DIR}/src/GpgFrontend.h
+ PUBLIC GpgFrontendCore.h
+ PUBLIC GpgConstants.h)
# using std c++ 17
target_compile_features(gpgfrontend_core PUBLIC cxx_std_17)
-if (${CMAKE_BUILD_TYPE} STREQUAL "Debug")
+if(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
# lib output path
set_target_properties(gpgfrontend_core PROPERTIES
- LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/lib
- RUNTIME_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/lib)
+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/lib
+ RUNTIME_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/lib)
endif()
# link for different platforms
-if (MINGW)
+if(MINGW)
message(STATUS "Link GPG Static Library For MINGW")
target_link_libraries(gpgfrontend_core PUBLIC wsock32)
-elseif (APPLE)
+elseif(APPLE)
message(STATUS "Link GPG Static Library For macOS")
- if (XCODE_BUILD)
+
+ if(XCODE_BUILD)
set_target_properties(gpgfrontend_core
- PROPERTIES
- ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}
- LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}
- LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}
- XCODE_ATTRIBUTE_SKIP_INSTALL "Yes"
- XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "${GPGFRONTEND_XOCDE_CODE_SIGN_IDENTITY}")
- endif ()
-else ()
+ PROPERTIES
+ ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}
+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}
+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}
+ XCODE_ATTRIBUTE_SKIP_INSTALL "Yes"
+ XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "${GPGFRONTEND_XOCDE_CODE_SIGN_IDENTITY}")
+ endif()
+else()
# linux
message(STATUS "Link GPG Static Library For Unix")
target_link_libraries(gpgfrontend_core PUBLIC pthread dl)
-endif ()
+endif()