diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake index 1e46108f0..514fbdf79 100644 --- a/ConfigureChecks.cmake +++ b/ConfigureChecks.cmake @@ -1,78 +1,72 @@ # assuan configure checks include(CheckFunctionExists) if ( ASSUAN2_FOUND ) else ( ASSUAN2_FOUND ) # TODO Clean this up with assuan 2 as hard dependency. message(FATAL_ERROR "At least version 2 of libassuan is required for Kleopatra.") endif ( ASSUAN2_FOUND ) set( USABLE_ASSUAN_FOUND false ) set( CMAKE_REQUIRED_INCLUDES ${ASSUAN2_INCLUDES} ) set( CMAKE_REQUIRED_LIBRARIES ${ASSUAN2_LIBRARIES} ) set( USABLE_ASSUAN_FOUND true ) # TODO: this workaround will be removed as soon as we find better solution if(MINGW) set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDE_DIR}/mingw) elseif(MSVC) set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDE_DIR}/msvc) endif(MINGW) if ( USABLE_ASSUAN_FOUND ) # check if assuan.h can be compiled standalone (it couldn't, on # Windows, until recently, because of a HAVE_W32_SYSTEM #ifdef in # there) check_cxx_source_compiles( " #include int main() { return 1; } " USABLE_ASSUAN_FOUND ) endif( USABLE_ASSUAN_FOUND ) if ( USABLE_ASSUAN_FOUND ) # check whether assuan and gpgme may be linked to simultaneously check_function_exists( "assuan_get_pointer" USABLE_ASSUAN_FOUND ) endif( USABLE_ASSUAN_FOUND ) if ( USABLE_ASSUAN_FOUND ) # check if gpg-error already has GPG_ERR_SOURCE_KLEO check_cxx_source_compiles(" #include static gpg_err_source_t src = GPG_ERR_SOURCE_KLEO; int main() { return 0; } " HAVE_GPG_ERR_SOURCE_KLEO ) endif ( USABLE_ASSUAN_FOUND ) if ( USABLE_ASSUAN_FOUND ) message( STATUS "Usable assuan found for Kleopatra" ) else ( USABLE_ASSUAN_FOUND ) message( STATUS "NO usable assuan found for Kleopatra" ) endif ( USABLE_ASSUAN_FOUND ) -OPTION( BUILD_libkleopatraclient "Build directory kleopatra/libkleopatraclient" ${USABLE_ASSUAN_FOUND} ) - -if ( NOT USABLE_ASSUAN_FOUND ) - set( BUILD_libkleopatraclient false ) -endif ( NOT USABLE_ASSUAN_FOUND ) - if (USABLE_ASSUAN_FOUND) set (HAVE_USABLE_ASSUAN 1) set (HAVE_KLEOPATRACLIENT_LIBRARY 1) else() set (HAVE_USABLE_ASSUAN 0) set (HAVE_KLEOPATRACLIENT_LIBRARY 0) endif() set(CMAKE_REQUIRED_INCLUDES) set(CMAKE_REQUIRED_LIBRARIES) diff --git a/src/conf/CMakeLists.txt b/src/conf/CMakeLists.txt index 7c8a72f7b..d933b2dce 100644 --- a/src/conf/CMakeLists.txt +++ b/src/conf/CMakeLists.txt @@ -1,83 +1,76 @@ include_directories(${kleopatra_SOURCE_DIR}/src) -if(BUILD_libkleopatraclient) - set(_kcm_kleopatra_libkleopatraclient_extra_SRCS - smimevalidationconfigurationwidget.cpp - smimevalidationconfigurationpage.cpp - cryptooperationsconfigwidget.cpp - cryptooperationsconfigpage.cpp - smimevalidationconfigurationwidget.h - smimevalidationconfigurationpage.h - cryptooperationsconfigwidget.h - cryptooperationsconfigpage.h - smartcardconfigpage.cpp - smartcardconfigpage.h - ) - - ki18n_wrap_ui(_kcm_kleopatra_libkleopatraclient_extra_SRCS - smimevalidationconfigurationwidget.ui - ) - - kconfig_add_kcfg_files(_kcm_kleopatra_libkleopatraclient_extra_SRCS - ${kleopatra_SOURCE_DIR}/src/kcfg/smimevalidationpreferences.kcfgc - ) +set(_kcm_kleopatra_libkleopatraclient_extra_SRCS + smimevalidationconfigurationwidget.cpp + smimevalidationconfigurationpage.cpp + cryptooperationsconfigwidget.cpp + cryptooperationsconfigpage.cpp + smimevalidationconfigurationwidget.h + smimevalidationconfigurationpage.h + cryptooperationsconfigwidget.h + cryptooperationsconfigpage.h + smartcardconfigpage.cpp + smartcardconfigpage.h +) - set(_kcm_kleopatra_libkleopatraclient_extra_LIBS kleopatraclientgui) +ki18n_wrap_ui(_kcm_kleopatra_libkleopatraclient_extra_SRCS + smimevalidationconfigurationwidget.ui +) -else() +kconfig_add_kcfg_files(_kcm_kleopatra_libkleopatraclient_extra_SRCS + ${kleopatra_SOURCE_DIR}/src/kcfg/smimevalidationpreferences.kcfgc +) - set(_kcm_kleopatra_libkleopatraclient_extra_SRCS) - set(_kcm_kleopatra_libkleopatraclient_extra_LIBS) +set(_kcm_kleopatra_libkleopatraclient_extra_LIBS kleopatraclientgui) -endif() set(kcm_kleopatra_PART_SRCS dirservconfigpage.cpp appearanceconfigpage.cpp appearanceconfigwidget.cpp gnupgsystemconfigurationpage.cpp dirservconfigpage.h appearanceconfigpage.h appearanceconfigwidget.h gnupgsystemconfigurationpage.h labelledwidget.cpp labelledwidget.cpp ${kleopatra_BINARY_DIR}/src/kleopatra_debug.cpp ${_kcm_kleopatra_libkleopatraclient_extra_SRCS} ) ki18n_wrap_ui(kcm_kleopatra_PART_SRCS appearanceconfigwidget.ui smimevalidationconfigurationwidget.ui ) kconfig_add_kcfg_files(kcm_kleopatra_PART_SRCS ${kleopatra_SOURCE_DIR}/src/kcfg/tooltippreferences.kcfgc ${kleopatra_SOURCE_DIR}/src/kcfg/emailoperationspreferences.kcfgc ${kleopatra_SOURCE_DIR}/src/kcfg/fileoperationspreferences.kcfgc ${kleopatra_SOURCE_DIR}/src/kcfg/tagspreferences.kcfgc ${kleopatra_SOURCE_DIR}/src/kcfg/settings.kcfgc ) add_library(kcm_kleopatra_static STATIC ${kcm_kleopatra_PART_SRCS}) set_property(TARGET kcm_kleopatra_static PROPERTY POSITION_INDEPENDENT_CODE ON) target_link_libraries(kcm_kleopatra_static KF5::Libkleo KF5::IconThemes KF5::I18n KF5::WidgetsAddons KF5::ConfigWidgets ${_kcm_kleopatra_extra_libs} ${_kleopatra_dbusaddons_libs} ${_kcm_kleopatra_libkleopatraclient_extra_LIBS} ) if (NOT WIN32) add_library(kleopatra_config_gnupgsystem MODULE kcm_gnupgsystemconfigurationpage.cpp) target_link_libraries(kleopatra_config_gnupgsystem kcm_kleopatra_static KF5::CoreAddons) install(TARGETS kleopatra_config_gnupgsystem DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim${QT_MAJOR_VERSION}/kcms/kleopatra) endif()