diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5e9b29d75..cb3bc2d77 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,266 +1,266 @@
#***************************************************************************
#* Copyright (C) 2008 by S. MANKOWSKI / G. DE BURE support@mankowski.fr *
#* *
#* This program is free software; you can redistribute it and/or modify *
#* it under the terms of the GNU General Public License as published by *
#* the Free Software Foundation; either version 2 of the License, or *
#* (at your option) any later version. *
#* *
#* This program is distributed in the hope that it will be useful, *
#* but WITHOUT ANY WARRANTY; without even the implied warranty of *
#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
#* GNU General Public License for more details. *
#* *
#* You should have received a copy of the GNU General Public License *
#* along with this program. If not, see *
#***************************************************************************
MESSAGE( STATUS "..:: CMAKE ROOT ::..")
PROJECT(skrooge)
SET (QT_MIN_VERSION "5.7.0")
OPTION(SKG_BUILD_TEST "Build the test" ON)
OPTION(SKG_DESIGNER "Build designer library" ON)
OPTION(SKG_WEBENGINE "Build WebEngine instead of WebKit" OFF)
IF(WIN32)
SET(SKG_WEBENGINE OFF)
SET(SKG_DESIGNER OFF)
ENDIF(WIN32)
IF(SKG_WEBENGINE)
SET (QT_MIN_VERSION "5.9.0")
ENDIF(SKG_WEBENGINE)
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12)
IF(POLICY CMP0063)
CMAKE_POLICY(SET CMP0063 NEW)
ENDIF(POLICY CMP0063)
FIND_PACKAGE(ECM 1.7.0 REQUIRED NO_MODULE)
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${skrooge_SOURCE_DIR}/cmake/modules)
INCLUDE(ECMInstallIcons)
INCLUDE(KDEInstallDirs)
INCLUDE(KDECompilerSettings)
INCLUDE(KDECMakeSettings)
INCLUDE(FeatureSummary)
INCLUDE(CheckCXXCompilerFlag)
INCLUDE(GenerateExportHeader)
INCLUDE(ECMSetupVersion)
INCLUDE(ECMGenerateHeaders)
INCLUDE(ECMPackageConfigHelpers)
INCLUDE(KDEFrameworkCompilerSettings)
FIND_PACKAGE(Qt5 ${QT_MIN_VERSION} NO_MODULE REQUIRED Core DBus Widgets Script Sql Test PrintSupport Svg Xml Concurrent Qml QuickWidgets)
IF(SKG_WEBENGINE)
FIND_PACKAGE(Qt5 ${QT_MIN_VERSION} NO_MODULE REQUIRED WebEngineWidgets)
ELSE(SKG_WEBENGINE)
FIND_PACKAGE(Qt5 ${QT_MIN_VERSION} NO_MODULE REQUIRED WebKitWidgets)
ENDIF(SKG_WEBENGINE)
IF(SKG_DESIGNER)
FIND_PACKAGE(Qt5 ${QT_MIN_VERSION} NO_MODULE REQUIRED Designer )
FIND_PACKAGE(KF5 5.0.0 REQUIRED COMPONENTS
DesignerPlugin # Tier 3
)
ELSE(SKG_DESIGNER)
SET(SKG_BUILD_TEST OFF)
ENDIF(SKG_DESIGNER)
FIND_PACKAGE(Grantlee5 0.5 REQUIRED)
FIND_PACKAGE(KF5 5.0.0 REQUIRED COMPONENTS
Archive # Tier 1
Config # Tier 1
CoreAddons # Tier 1
I18n # Tier 1
ItemViews # Tier 1
WidgetsAddons # Tier 1
WindowSystem # Tier 1
Completion # Tier 2
JobWidgets # Tier 2
ConfigWidgets # Tier 3
IconThemes # Tier 3
KIO # Tier 3
NewStuff # Tier 3
Parts # Tier 3
Wallet # Tier 3
XmlGui # Tier 3
)
FIND_PACKAGE(KF5DocTools)
FIND_PACKAGE(PkgConfig REQUIRED)
PKG_CHECK_MODULES(SQLCIPHER REQUIRED sqlcipher)
MESSAGE( STATUS " Mode SQLCIPHER enabled")
MESSAGE( STATUS " SQLCIPHER INCLUDE : " ${SQLCIPHER_INCLUDE_DIRS})
SET(SQLITE_LIBRARIES ${SQLCIPHER_LIBRARIES})
SET(SQLITE_INCLUDE_DIR ${SQLCIPHER_INCLUDE_DIRS})
link_directories(${SQLCIPHER_LIBRARY_DIRS})
SET_PACKAGE_PROPERTIES(Sqlcipher PROPERTIES DESCRIPTION "Support for encryption"
URL "https://www.zetetic.net/sqlcipher/"
TYPE REQUIRED)
SET(GRANTLEE_VERSION ${Grantlee5_VERSION_MAJOR}.${Grantlee5_VERSION_MINOR}.${Grantlee5_VERSION_PATCH})
MESSAGE( STATUS " GRANTLEE VERSION : " ${GRANTLEE_VERSION})
-SET(SKG_VERSION "2.20.0")
-SET(SKG_BETA "")
+SET(SKG_VERSION "2.21.0")
+SET(SKG_BETA "BETA")
SET(SOVERSION 2)
IF (CMAKE_BUILD_TYPE)
ELSE (CMAKE_BUILD_TYPE)
SET(CMAKE_BUILD_TYPE profile)
#"release": optimized for speed, no debug symbols or debug messages
#"relwithdebinfo": optimized for speed, debug symbols for backtraces
#"debug": optimized, but debuggable
#"debugfull": no optimizations, full debug support
#"profile": adds coverage flags to debugfull
#"none": the build flags are manually set using the CMAKE_CXX_FLAGS option.
ENDIF (CMAKE_BUILD_TYPE)
FIND_PROGRAM(SKG_BASH bash)
MARK_AS_ADVANCED(SKG_BASH)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
MESSAGE( STATUS " QT : " ${Qt5_VERSION} )
MESSAGE( STATUS " PROJECT_SOURCE_DIR : " ${PROJECT_SOURCE_DIR} )
MESSAGE( STATUS " PROJECT_BINARY_DIR : " ${PROJECT_BINARY_DIR} )
MESSAGE( STATUS " CMAKE_BUILD_TYPE : " ${CMAKE_BUILD_TYPE} )
MESSAGE( STATUS " CMAKE_MODULE_PATH : " ${CMAKE_MODULE_PATH} )
MESSAGE( STATUS " CMAKE_INSTALL_PREFIX: " ${CMAKE_INSTALL_PREFIX} )
MESSAGE( STATUS " SKG_BUILD_TEST : " ${SKG_BUILD_TEST} )
MESSAGE( STATUS " SKG_DESIGNER : " ${SKG_DESIGNER} )
MESSAGE( STATUS " SKG_WEBENGINE : " ${SKG_WEBENGINE} )
MESSAGE( STATUS " KDE_INSTALL_QTPLUGINDIR : " ${KDE_INSTALL_QTPLUGINDIR})
#IF(CMAKE_BUILD_TYPE MATCHES "profile")
# MESSAGE( STATUS " TRACES : All traces activated")
#add_definitions(-DSKGFULLTRACES)
#ELSE(CMAKE_BUILD_TYPE MATCHES "profile")
# IF(CMAKE_BUILD_TYPE MATCHES "debug" OR SKG_BETA MATCHES "BETA")
MESSAGE( STATUS " TRACES : Some traces activated")
# ELSE(CMAKE_BUILD_TYPE MATCHES "debug" OR SKG_BETA MATCHES "BETA")
# MESSAGE( STATUS " TRACES : All traces disabled")
# add_definitions(-DSKGNOTRACES)
# ENDIF(CMAKE_BUILD_TYPE MATCHES "debug" OR SKG_BETA MATCHES "BETA")
#ENDIF(CMAKE_BUILD_TYPE MATCHES "profile")
# FIX: Qt was built with -reduce-relocations
IF(Qt5_POSITION_INDEPENDENT_CODE)
SET(CMAKE_POSITION_INDEPENDENT_CODE ON)
ENDIF(Qt5_POSITION_INDEPENDENT_CODE)
ADD_DEFINITIONS(-DSKGVERSION=${SKG_VERSION}${SKG_BETA})
REMOVE_DEFINITIONS(-DQT_NO_CAST_FROM_ASCII)
#Correction bug 207249 vvvv
IF(CMAKE_COMPILER_IS_GNUCXX)
CHECK_CXX_COMPILER_FLAG("-Wlogical-op" WLOGICALOP)
IF(WLOGICALOP)
ADD_COMPILE_OPTIONS(-Wlogical-op)
ENDIF(WLOGICALOP)
CHECK_CXX_COMPILER_FLAG("-Wnoexcept" WNOEXCEPT)
IF(WNOEXCEPT)
ADD_COMPILE_OPTIONS(-Wnoexcept)
ENDIF(WNOEXCEPT)
ADD_COMPILE_OPTIONS(-std=c++0x -pedantic -Wall -Wextra -Wno-variadic-macros -Wparentheses -Wmissing-braces -Wcast-align -Wcast-qual -Wformat=2 -Winit-self -Wmissing-include-dirs -Woverloaded-virtual -Wsign-promo -Wstrict-null-sentinel -Wundef -Wno-unused)
# ADD_COMPILE_OPTIONS(-Wstrict-overflow=5 -Wshadow -Wctor-dtor-privacy -Wshadow -Wold-style-cast -Wswitch-default -Wredundant-decls)
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
#Correction bug 207249 ^^^^
#Default installation path
SET(CMAKE_INSTALL_PREFIX ${BUILD_DIR})
# Win32 specific configuration
IF(WIN32)
ADD_DEFINITIONS(-DSKG_PLATFORM_WIN32)
IF(CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--enable-runtime-pseudo-reloc -Wl,--export-all-symbols" CACHE STRING "" FORCE)
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
IF (CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)
ADD_DEFINITIONS( -DQT_DEBUG )
ENDIF (CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)
ELSE(WIN32)
#To solve Bug 209912:"ldd -u ""
#does not work on MACOS, must be done manually SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--as-needed" CACHE STRING "" FORCE)
ENDIF(WIN32)
MESSAGE(STATUS " CMAKE_SHARED_LINKER_FLAGS : ${CMAKE_SHARED_LINKER_FLAGS}")
#ADD_SUBDIRECTORY
ADD_SUBDIRECTORY(skgsqlcipher)
ADD_SUBDIRECTORY(skgbasemodeler)
ADD_SUBDIRECTORY(skgbankmodeler)
ADD_SUBDIRECTORY(skgbasegui)
ADD_SUBDIRECTORY(skgbankgui)
IF(SKG_DESIGNER)
ADD_SUBDIRECTORY(skgbaseguidesigner)
ADD_SUBDIRECTORY(skgbankguidesigner)
ENDIF(SKG_DESIGNER)
ADD_SUBDIRECTORY(plugins)
ADD_SUBDIRECTORY(images)
IF(SKG_BUILD_TEST AND NOT WIN32)
ADD_SUBDIRECTORY(tests)
ENDIF(SKG_BUILD_TEST AND NOT WIN32)
IF(KF5DocTools_FOUND)
ADD_SUBDIRECTORY(doc)
ENDIF(KF5DocTools_FOUND)
#Main application
ADD_SUBDIRECTORY(skrooge)
ADD_SUBDIRECTORY(skroogeconvert)
#TODO(STEPHANE MANKOWSKI) KF5 ADD_SUBDIRECTORY(skroogeakonadi)
CONFIGURE_FILE(scripts/addNewPlugin.sh.in scripts/addNewPlugin.sh @ONLY)
CONFIGURE_FILE(scripts/addNewImportPlugin.sh.in scripts/addNewImportPlugin.sh @ONLY)
#DOXYGEN
ADD_CUSTOM_TARGET(apidox "doxygen" "${PROJECT_SOURCE_DIR}/Doxyfile")
#ASTYLE
CONFIGURE_FILE(scripts/astyle.sh.in scripts/astyle.sh @ONLY)
ADD_CUSTOM_TARGET(astyle "scripts/astyle.sh")
#GENERATE SPLASH SCREEN
CONFIGURE_FILE(scripts/generateSplash.sh.in scripts/generateSplash.sh @ONLY)
ADD_CUSTOM_TARGET(splash "scripts/generateSplash.sh")
#STATIC CODE CHECKS
CONFIGURE_FILE(scripts/codecheck.sh.in scripts/codecheck.sh @ONLY)
ADD_CUSTOM_TARGET(codecheck "scripts/codecheck.sh")
CONFIGURE_FILE(CTestCustom.cmake CTestCustom.cmake @ONLY)
#FULL
CONFIGURE_FILE(scripts/full.sh scripts/full.sh @ONLY)
#GETPO
ADD_CUSTOM_COMMAND(
OUTPUT getpocmd
COMMAND python3 scripts/download-po.py
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
ADD_CUSTOM_TARGET(getpo
DEPENDS getpocmd
COMMENT "Re-run cmake after this to be able to run BuildTranslations with the latest files"
)
#PO files
FIND_PACKAGE(KF5I18n CONFIG REQUIRED)
KI18N_INSTALL(po)
FIND_PACKAGE(KF5DocTools CONFIG)
IF(KF5DocTools_FOUND)
KDOCTOOLS_INSTALL(po)
ENDIF()
FEATURE_SUMMARY(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
diff --git a/images/splash.png b/images/splash.png
index f7138643e..809d61115 100644
Binary files a/images/splash.png and b/images/splash.png differ
diff --git a/images/splash.svg.in b/images/splash.svg.in
index df1a7ab34..ea38dbb1a 100644
--- a/images/splash.svg.in
+++ b/images/splash.svg.in
@@ -1,13093 +1,5768 @@