diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt index 783b676e7..2783b930d 100644 --- a/3rdparty/CMakeLists.txt +++ b/3rdparty/CMakeLists.txt @@ -1,98 +1,98 @@ project (kmymoney-and-all-its-deps) # # Build all dependencies for KMyMoney and finally KMyMoney itself. # Parameters: EXT_DOWNLOAD_DIR place to download all packages # INSTALL_ROOT place to install everything to # # Example usage: cmake ..\kmymoneydep -DEXT_DOWNLOAD_DIR=/dev2/d -DINSTALL_ROOT=/dev2/i cmake_minimum_required(VERSION 2.8.6) if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) message(FATAL_ERROR "Compiling in the source directory is not supported. Use for example 'mkdir build; cd build; cmake ..'.") endif() # Tools must be obtained to work with: include(ExternalProject) # allow specification of a directory with pre-downloaded # requirements if(NOT IS_DIRECTORY ${EXT_DOWNLOAD_DIR}) message(FATAL_ERROR "No externals download dir set. Use -DEXT_DOWNLOAD_DIR") endif() if(NOT IS_DIRECTORY ${EXT_INSTALL_DIR}) message(FATAL_ERROR "No install dir set. Use -DEXT_INSTALL_DIR") endif() message( STATUS "CMAKE_GENERATOR: ${CMAKE_GENERATOR}") set(CMAKE_PREFIX_PATH "${EXT_INSTALL_DIR}") set(CMAKE_INSTALL_PREFIX "${EXT_INSTALL_DIR}") set(CMAKE_BUILD_TYPE RelWithDebInfo) set(CMAKE_GLOBAL_PROFILE -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=${CMAKE_PREFIX_PATH} -DCMAKE_PREFIX_PATH=${CMAKE_INSTALL_PREFIX} -DBUILD_TESTING=FALSE ) # without --host=x86_64 gmp builds with optimizations for skylake and that prevents running KMyMoney on pre-skylake CPUs set(AT_HOST --host=x86_64-linux-gnu) set(AT_SHARED_ONLY --disable-static --enable-shared) set(AT_CPP_FLAGS "-I${EXT_INSTALL_DIR}/include") set(AT_LD_FLAGS "-L${EXT_INSTALL_DIR}/lib") set(PATCH_COMMAND patch) # this list must be dependency-ordered add_subdirectory( ext_iconv ) add_subdirectory( ext_zlib ) add_subdirectory( ext_lzma ) add_subdirectory( ext_icu ) add_subdirectory( ext_ncurses ) add_subdirectory( ext_readline ) add_subdirectory( ext_xml ) add_subdirectory( ext_gettext ) add_subdirectory( ext_png ) add_subdirectory( ext_nasm ) add_subdirectory( ext_jpeg ) add_subdirectory( ext_boost ) add_subdirectory( ext_xslt ) add_subdirectory( ext_fontconfig ) add_subdirectory( ext_intltool ) add_subdirectory( ext_sharedmimeinfo ) add_subdirectory( ext_gmp ) add_subdirectory( ext_gpgerror ) add_subdirectory( ext_assuan2 ) add_subdirectory( ext_nettle ) add_subdirectory( ext_tasn1 ) add_subdirectory( ext_unistring ) add_subdirectory( ext_gnutls ) add_subdirectory( ext_pcre2 ) add_subdirectory( ext_freetype ) add_subdirectory( ext_harfbuzz ) add_subdirectory( ext_sqlite ) add_subdirectory( ext_openssl ) add_subdirectory( ext_mysql ) add_subdirectory( ext_tcl ) add_subdirectory( ext_postgresql ) add_subdirectory( ext_qt ) add_subdirectory( ext_phonon ) +add_subdirectory( ext_gpgme ) +add_subdirectory( ext_gcrypt ) add_subdirectory( ext_frameworks ) add_subdirectory( ext_grantlee ) add_subdirectory( ext_applications ) add_subdirectory( ext_alkimia ) add_subdirectory( ext_kdiagram ) add_subdirectory( ext_ktoblzcheck ) -add_subdirectory( ext_gcrypt ) add_subdirectory( ext_gwenhywfar ) add_subdirectory( ext_xmlsec1 ) add_subdirectory( ext_aqbanking ) -add_subdirectory( ext_gpgme ) add_subdirectory( ext_sqlcipher ) add_subdirectory( ext_opensp ) add_subdirectory( ext_ofx ) add_subdirectory( ext_ical ) diff --git a/3rdparty/ext_frameworks/CMakeLists.txt b/3rdparty/ext_frameworks/CMakeLists.txt index c54db0129..7528e54cc 100644 --- a/3rdparty/ext_frameworks/CMakeLists.txt +++ b/3rdparty/ext_frameworks/CMakeLists.txt @@ -1,360 +1,361 @@ # All needed frameworks: # Tier 1 # Archive # Codecs # Config # CoreAddons # DBusAddons # GuiAddons # I18n # ItemModels # ItemViews # WidgetsAddons # WindowSystem # Solid # Sonnet # SyntaxHighlighting # Tier 2 # Activities # Auth # Completion # Crash # JobWidgets # Notifications # Package # Tier 3 # Emoticons # ConfigWidgets # IconThemes # Service # TextWidgets # XmlGui # Bookmarks # GlobalAccel # KIO # Declarative # KCMUtils # Wallet ExternalProject_Add( ext_extra_cmake_modules DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/extra-cmake-modules-5.51.0.zip URL_MD5 0c49de5686624746af45f578486c275f CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} ) ExternalProject_Add( ext_karchive DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/karchive-5.51.0.zip URL_MD5 a1df7fa0e563774582a141be902bf9e0 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kcodecs DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kcodecs-5.51.0.zip URL_MD5 690e3fc89a72a64ebf7d4dccfea07cb4 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kconfig DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kconfig-5.51.0.zip URL_MD5 efd15b025d74c6bdb7ba1f6c70eb59d3 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kdbusaddons DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kdbusaddons-5.51.0.zip URL_MD5 a4e3f38596815004815e1d5912dcc9f7 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kcoreaddons DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kcoreaddons-5.51.0.zip URL_MD5 bd29fb792d368dcc031277182e20dd57 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_sharedmimeinfo ext_extra_cmake_modules ) ExternalProject_Add( ext_kguiaddons DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kguiaddons-5.51.0.zip URL_MD5 a4ed02d971740b5a69d3bbd8078cd53c CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_ki18n DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/ki18n-5.51.0.zip URL_MD5 97ea04262c49403ba8c33323b367c362 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ext_gettext ) ExternalProject_Add( ext_kitemmodels DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kitemmodels-5.51.0.zip URL_MD5 82989ebe8c2c76df6fbd3bc4581923a8 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kitemviews DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kitemviews-5.51.0.zip URL_MD5 4b0ac783dd4a08b57442a6b349a29af0 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kwidgetsaddons DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kwidgetsaddons-5.51.0.zip URL_MD5 069a7907a50a573f237b0ae07e143c31 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kwindowsystem DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kwindowsystem-5.51.0.zip URL_MD5 1cc9f16aef24588f56712beacea04173 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_solid DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/solid-5.51.0.zip URL_MD5 20928ec5ac4f24ac50d28e1f859564fc CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_sonnet DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/sonnet-5.51.0.zip URL_MD5 6da10e377b65fd0eb38a893f3b02bda4 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_syntaxhighlighting DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/syntax-highlighting-5.51.0.zip URL_MD5 960aa4322276d5591fe038351c420607 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kholidays DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL https://download.kde.org/stable/frameworks/5.51/kholidays-5.51.0.zip URL_MD5 41b208d432246eb8f012d55bc0c1b9ee CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ) ExternalProject_Add( ext_kactivities DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kactivities-5.51.0.zip URL_MD5 397fe66ad6b2bd4151de87b5bea27550 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_boost ext_kconfig ext_kcoreaddons ext_kwindowsystem ) ExternalProject_Add( ext_kauth DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kauth-5.51.0.zip URL_MD5 c44908198ce80868a0f84d93bfbd2a0b CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kcoreaddons ) ExternalProject_Add( ext_kcompletion DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kcompletion-5.51.0.zip URL_MD5 0538aaf30384c0ac0e69a245d4c99dc5 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kwidgetsaddons ext_kconfig ) ExternalProject_Add( ext_kcrash DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kcrash-5.51.0.zip URL_MD5 4d424ec54f369eb6f6f8d9571e72d0f9 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kcoreaddons ext_kwindowsystem ) ExternalProject_Add( ext_kjobwidgets DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kjobwidgets-5.51.0.zip URL_MD5 e352949fc004cad1a5df7ac6095e061f CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kcoreaddons ext_kwidgetsaddons ) ExternalProject_Add( ext_knotifications DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/knotifications-5.51.0.zip URL_MD5 1727ef67b293228e783d70a8a04fb2b2 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kwindowsystem ext_kconfig ext_kcodecs ext_kcoreaddons ext_phonon ) ExternalProject_Add( ext_kpackage DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kpackage-5.51.0.zip URL_MD5 7e04ab888adb565d6b3c7edab3f5f88b CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_karchive ext_ki18n ext_kcoreaddons ) ExternalProject_Add( ext_kconfigwidgets DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kconfigwidgets-5.51.0.zip URL_MD5 943fe07904feaa3a8b05fe81733d1eb4 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kauth ext_kcoreaddons ext_kcodecs ext_kconfig ext_kguiaddons ext_ki18n ext_kwidgetsaddons ) ExternalProject_Add( ext_kiconthemes DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kiconthemes-5.51.0.zip URL_MD5 6da17c5f2006b893025da305b1dfc011 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_karchive ext_ki18n ext_kcoreaddons ext_kconfigwidgets ext_kwidgetsaddons ext_kitemviews ) ExternalProject_Add( ext_kservice DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kservice-5.51.0.zip URL_MD5 7444dbd3388a1e3cce9d8f7cd64c7d23 + PATCH_COMMAND ${PATCH_COMMAND} -p1 -i ${CMAKE_CURRENT_SOURCE_DIR}/kservice.diff #this makes finding KCModules in AppImage possible CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kconfig ext_kcoreaddons ext_kcrash ext_kdbusaddons ext_ki18n ) ExternalProject_Add( ext_kemoticons DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kemoticons-5.51.0.zip URL_MD5 f437001a8a5e401a8ac284cf554357ec CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_karchive ext_kconfig ext_kservice ext_kcoreaddons ) ExternalProject_Add( ext_ktextwidgets DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/ktextwidgets-5.51.0.zip URL_MD5 2edb4f80800e47d6ecf52353decbdf10 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ext_kcompletion ext_kconfig ext_kconfigwidgets ext_ki18n ext_kiconthemes ext_kservice ext_kwidgetsaddons ext_kwindowsystem ext_sonnet ) ExternalProject_Add( ext_kglobalaccel DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kglobalaccel-5.51.0.zip URL_MD5 1cf9b73d7e909ed5899496eb52dfedc2 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kconfig ext_kcoreaddons ext_kcrash ext_kdbusaddons ext_kwindowsystem ) ExternalProject_Add( ext_kxmlgui DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kxmlgui-5.51.0.zip URL_MD5 35555839af065708281ecf95f2cd9363 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kcoreaddons ext_kitemviews ext_kconfig ext_kconfigwidgets ext_ki18n ext_kiconthemes ext_ktextwidgets ext_kwidgetsaddons ext_kwindowsystem ext_kglobalaccel ) ExternalProject_Add( ext_kbookmarks DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kbookmarks-5.51.0.zip URL_MD5 036f8e3e2d9c1cd537a275636569d1c6 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kconfig ext_kcoreaddons ext_kcodecs ext_kconfigwidgets ext_kiconthemes ext_kwidgetsaddons ext_kxmlgui ) ExternalProject_Add( ext_kwallet DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kwallet-5.51.0.zip URL_MD5 da6f7e2282f6316b612cb0acaa7a140a CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} - DEPENDS ext_kcoreaddons ext_kconfig ext_kwindowsystem ext_ki18n ext_kconfigwidgets ext_knotifications ext_kservice ext_kwidgetsaddons ext_kiconthemes ext_kdbusaddons + DEPENDS ext_gcrypt ext_gpgme ext_kcoreaddons ext_kconfig ext_kwindowsystem ext_ki18n ext_kconfigwidgets ext_knotifications ext_kservice ext_kwidgetsaddons ext_kiconthemes ext_kdbusaddons ) ExternalProject_Add( ext_kio DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kio-5.51.0.zip URL_MD5 ea59ac8326e5856b0ef1202c83d575b3 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_extra_cmake_modules ext_karchive ext_kconfig ext_kcoreaddons ext_kdbusaddons ext_ki18n ext_kservice ext_solid ext_kwindowsystem ext_kwidgetsaddons ext_kcompletion ext_kconfigwidgets ext_kiconthemes ext_kitemviews ext_kjobwidgets ext_kbookmarks ext_kwallet ) ExternalProject_Add( ext_kdeclarative DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kdeclarative-5.51.0.zip URL_MD5 6d8b8a15b7d02ac662e7f22152e92f3f CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kconfig ext_ki18n ext_kiconthemes ext_kio ext_kwidgetsaddons ext_kwindowsystem ext_kglobalaccel ext_kguiaddons ext_kpackage ) ExternalProject_Add( ext_kcmutils DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kcmutils-5.51.0.zip URL_MD5 4f548b92a27716f1d498b9da8887cf32 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kitemviews ext_kconfigwidgets ext_kcoreaddons ext_ki18n ext_kiconthemes ext_kservice ext_kxmlgui ext_kdeclarative ) ExternalProject_Add( ext_kimageformats DOWNLOAD_DIR ${EXT_DOWNLOAD_DIR} URL http://download.kde.org/stable/frameworks/5.51/kimageformats-5.51.0.zip URL_MD5 bb889cbd5a3b39f226d57da4c694ff57 CMAKE_ARGS ${CMAKE_GLOBAL_PROFILE} DEPENDS ext_kitemviews ) \ No newline at end of file diff --git a/3rdparty/ext_frameworks/kservice.diff b/3rdparty/ext_frameworks/kservice.diff new file mode 100644 index 000000000..d2099abfc --- /dev/null +++ b/3rdparty/ext_frameworks/kservice.diff @@ -0,0 +1,16 @@ +diff -Npru kservice-5.51.0.orig/src/sycoca/ksycoca.cpp kservice-5.51.0/src/sycoca/ksycoca.cpp +--- kservice-5.51.0.orig/src/sycoca/ksycoca.cpp 2018-10-08 10:21:25.000000000 +0200 ++++ kservice-5.51.0/src/sycoca/ksycoca.cpp 2018-10-23 18:48:47.403851239 +0200 +@@ -602,6 +602,12 @@ KSycocaHeader KSycocaPrivate::readSycoca + language = header.language; + updateSig = header.updateSignature; + ++ const QString appImageShare = QCoreApplication::applicationDirPath() + QLatin1String("/../share"); ++ addLocalResourceDir(appImageShare + QLatin1String("/kservices5")); ++ addLocalResourceDir(appImageShare + QLatin1String("/kservicetypes5")); ++ addLocalResourceDir(appImageShare + QLatin1String("/mime")); ++ addLocalResourceDir(appImageShare + QLatin1String("/applications")); ++ + if (m_globalDatabase) { + // The global database doesn't point to the user's local dirs, but we need to check them too + // to react on something being created there