mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Add ability to build GnuCash with CMake
Backported from master.
This commit is contained in:
parent
e5a4a5c432
commit
1d474968ca
464
CMakeLists.txt
464
CMakeLists.txt
@ -3,48 +3,156 @@
|
||||
# This is very EXPERIMENTAL! We will see how far this project will
|
||||
# get.
|
||||
|
||||
CMAKE_MINIMUM_REQUIRED (VERSION 2.6)
|
||||
PROJECT (cutecash)
|
||||
IF (WIN32)
|
||||
CMAKE_MINIMUM_REQUIRED (VERSION 3.3.2)
|
||||
ELSE()
|
||||
CMAKE_MINIMUM_REQUIRED (VERSION 3.1)
|
||||
ENDIF()
|
||||
|
||||
# Version number of cutecash
|
||||
SET (CUTECASH_VERSION_MAJOR "0")
|
||||
SET (CUTECASH_VERSION_MINOR "1")
|
||||
SET (CUTECASH_VERSION_PATCH "0")
|
||||
PROJECT (Gnucash)
|
||||
|
||||
# Version number of gnucash
|
||||
SET (GNUCASH_MAJOR_VERSION 2)
|
||||
SET (GNUCASH_MINOR_VERSION 6)
|
||||
SET (GNUCASH_MICRO_VERSION 99)
|
||||
SET (GNUCASH_NANO_VERSION 0)
|
||||
SET (VERSION "${GNUCASH_MAJOR_VERSION}.${GNUCASH_MINOR_VERSION}.${GNUCASH_MICRO_VERSION}")
|
||||
SET (GNUCASH_LATEST_STABLE_SERIES 2.6)
|
||||
|
||||
SET (PACKAGE gnucash)
|
||||
SET (PACKAGE_NAME GnuCash)
|
||||
SET (PACKAGE_VERSION 2.6.99)
|
||||
SET (PACKAGE_BUGREPORT gnucash-devel@gnucash.org)
|
||||
SET (PACKAGE_TARNAME ${PACKAGE})
|
||||
SET (PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
|
||||
SET (PACKAGE_URL "")
|
||||
|
||||
# Change this in development versions when changing anything that
|
||||
# affects stored data structures. Reset to zero when bumping version.
|
||||
SET (CUTECASH_VERSION_NANO "0")
|
||||
|
||||
SET (GNUCASH_RESAVE_VERSION "19920")
|
||||
|
||||
SET(GETTEXT_PACKAGE "gnucash")
|
||||
|
||||
# Extra cmake macros
|
||||
SET (CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/src/cmake_modules;${CMAKE_MODULE_PATH}")
|
||||
INCLUDE (MacroAppendForeach)
|
||||
INCLUDE (MacroAddSourceFileCompileFlags)
|
||||
INCLUDE (GncAddSwigCommand)
|
||||
INCLUDE (CheckIncludeFiles)
|
||||
INCLUDE (GncAddSchemeTargets)
|
||||
INCLUDE (GncConfigure)
|
||||
INCLUDE (GncAddGSchemaTargets)
|
||||
|
||||
# ############################################################
|
||||
# These options are settable from the CMake command line. For example, to disable
|
||||
# SQL, put -D WITH_SQL=OFF on the command line.
|
||||
|
||||
OPTION (WITH_SQL "Build this project with SQL (libdbi) support" OFF)
|
||||
OPTION (WITH_AQBANKING "Build this project with aqbanking (online banking) support" OFF)
|
||||
|
||||
OPTION (WITH_SQL "Build this project with SQL (libdbi) support" ON)
|
||||
OPTION (WITH_AQBANKING "Build this project with aqbanking (online banking) support" ON )
|
||||
OPTION (WITH_GNUCASH "Build all of GnuCash, not just cutecash" ON)
|
||||
OPTION (WITH_CUTECASH "Also build cutecash" OFF)
|
||||
OPTION (WITH_OFX "compile with ofx support (needs LibOFX)" ON)
|
||||
OPTION (ENABLE_BINRELOC "compile with binary relocation support" ON)
|
||||
OPTION (ENABLE_DEBUG "compile with debugging flags set" OFF)
|
||||
OPTION (ENABLE_REGISTER2 "compile with register2 enabled" OFF)
|
||||
OPTION (DISABLE_NLS "do not use Native Language Support" OFF)
|
||||
OPTION (DISABLE_DEPRECATED_GLIB "don't use deprecated glib funcions" OFF)
|
||||
OPTION (DISABLE_DEPRECATED_GTK "don't use deprectacted gtk, gdk or gdk-pixbuf functions" OFF)
|
||||
OPTION (DISABLE_DEPRECATED_GNOME "don't use deprecated gnome functions" OFF)
|
||||
OPTION (GNC_BUILD_AS_INSTALL "Make build directory structure mirror install" ON)
|
||||
# ############################################################
|
||||
|
||||
# Find pkg-config
|
||||
FIND_PACKAGE (PkgConfig REQUIRED)
|
||||
# These are also settable from the command line in a similar way.
|
||||
|
||||
SET(BINDIR ${CMAKE_INSTALL_PREFIX}/bin CACHE STRING "user executables")
|
||||
SET(SYSCONFDIR ${CMAKE_INSTALL_PREFIX}/etc CACHE STRING "read-only single-machine data")
|
||||
SET(DATAROOTDIR ${CMAKE_INSTALL_PREFIX}/share CACHE STRING "read-only arch.-independent data root")
|
||||
SET(DATADIR ${DATAROOTDIR} CACHE STRING "read-only architecture-independent data")
|
||||
SET(LIBDIR ${CMAKE_INSTALL_PREFIX}/lib CACHE STRING "object code libraries")
|
||||
SET(LOCALEDIR ${DATAROOTDIR}/locale CACHE STRING "locale-dependent data")
|
||||
SET(GNC_HELPDIR ${DATADIR} CACHE STRING "where to store help files")
|
||||
SET(DATADIRNAME share)
|
||||
SET(GNC_SYSTEM_XDG_DATA_DIRS /usr/local/share /usr/share)
|
||||
SET(GNC_DBD_DIR ${CMAKE_PREFIX_PATH}/lib/dbd CACHE PATH "specify location of libdbi drivers")
|
||||
SET(PKGLIBDIR ${CMAKE_INSTALL_PREFIX}/lib/gnucash)
|
||||
|
||||
IF(GNC_BUILD_AS_INSTALL)
|
||||
SET(DATADIR_BUILD ${CMAKE_BINARY_DIR}/${DATADIRNAME})
|
||||
SET(LIBDIR_BUILD ${CMAKE_BINARY_DIR}/lib)
|
||||
SET(SYSCONFDIR_BUILD ${CMAKE_BINARY_DIR}/etc)
|
||||
SET(BINDIR_BUILD ${CMAKE_BINARY_DIR}/bin)
|
||||
|
||||
ENDIF()
|
||||
|
||||
|
||||
IF (WIN32)
|
||||
# Help Windows find the various dependencies. We assume here that the standard advice for building
|
||||
# GnuCash has been followed and that these dependencies live underneath something like C:/GCDEV, which
|
||||
# should be provided as CMAKE_PREFIX_PATH on the CMake command line:
|
||||
# cmake -D CMAKE_PREFIX_PATH=c/gcdev -G "MSYS Makefiles" path/to/gnucash/sources
|
||||
#
|
||||
|
||||
SET(CMAKE_FRAMEWORK_PATH_TMP ${CMAKE_PREFIX_PATH})
|
||||
SET(DEV_SUBDIRS aqbanking gnome goffice guile gwenhywfar libgsf libofx libsoup libxslt webkit)
|
||||
FOREACH(subdir ${DEV_SUBDIRS})
|
||||
LIST(APPEND CMAKE_FRAMEWORK_PATH_TMP ${CMAKE_PREFIX_PATH}/${subdir})
|
||||
ENDFOREACH()
|
||||
# Setting CMAKE_FRAMEWORK_PATH, which is intended for OS X, is a terrible hack here. But I don't
|
||||
# want to mess with CMAKE_PREFIX_PATH.
|
||||
SET(CMAKE_FRAMEWORK_PATH "${CMAKE_FRAMEWORK_PATH_TMP}")
|
||||
SET(PKG_CONFIG_EXECUTABLE ${CMAKE_PREFIX_PATH}/gnome/bin/pkg-config.exe)
|
||||
SET(SWIG_EXECUTABLE ${CMAKE_PREFIX_PATH}/swig/swig.exe)
|
||||
SET(BOOST_ROOT ${CMAKE_PREFIX_PATH}/boost)
|
||||
SET(GIT_EXECUTABLE ${CMAKE_PREFIX_PATH}/git-1.9.4/bin/git)
|
||||
SET(REGEX_INCLUDE_PATH ${CMAKE_PREFIX_PATH}/regex/include)
|
||||
SET(REGEX_LDFLAGS "-L${CMAKE_PREFIX_PATH}/regex/lib -lregex")
|
||||
SET(LIBXSLT_INCLUDE_DIR ${CMAKE_PREFIX_PATH}/libxslt/include)
|
||||
SET(LIBXSLT_XSLTPROC_EXECUTABLE ${CMAKE_PREFIX_PATH}/libxslt/bin/xsltproc)
|
||||
# I have not yet debugged the intltool-merge file generation process on Windows.
|
||||
SET(NO_INTLTOOL TRUE)
|
||||
ENDIF(WIN32)
|
||||
|
||||
IF (APPLE)
|
||||
SET (CMAKE_OSX_ARCHITECTURES "i386")
|
||||
ADD_DEFINITIONS(-arch i386)
|
||||
#SET(CMAKE_OSX_ARCHITECTURES "x86_64")
|
||||
# For PPC build, uncomment these lines (untested):
|
||||
#SET (CMAKE_OSX_ARCHITECTURES "i386;ppc")
|
||||
#ADD_DEFINITIONS(-arch i386 -arch ppc
|
||||
#SET (AC_APPLE_UNIVERSAL_BUILD 1)
|
||||
ENDIF (APPLE)
|
||||
|
||||
FIND_PACKAGE(PkgConfig REQUIRED)
|
||||
|
||||
# The default FindPkgConfig.make code has a bug in how the setting of PKG_CONFIG_PATH is handled.
|
||||
# The src/cmake_modules/GncFindPkgConfig.cmake file overrides a couple of macros in FindPkgConfig to fix.
|
||||
|
||||
INCLUDE (GncFindPkgConfig)
|
||||
|
||||
IF (NOT PKG_CONFIG_FOUND)
|
||||
MESSAGE (SEND_ERROR "pkg-config not found, but is required")
|
||||
ENDIF (NOT PKG_CONFIG_FOUND)
|
||||
|
||||
# glib et al.
|
||||
PKG_CHECK_MODULES (GLIB2 glib-2.0>=2.20)
|
||||
PKG_CHECK_MODULES (GCONF2 gconf-2.0>=2.22)
|
||||
PKG_CHECK_MODULES (GOBJECT gobject-2.0>=2.20)
|
||||
PKG_CHECK_MODULES (GMODULE gmodule-2.0>=2.20)
|
||||
PKG_CHECK_MODULES (GTHREAD gthread-2.0>=2.20)
|
||||
PKG_CHECK_MODULES (GLIBMM glibmm-2.4>=2.24)
|
||||
PKG_CHECK_MODULES (LIBXML2 libxml-2.0>=2.7.0)
|
||||
GNC_PKG_CHECK_MODULES (GLIB2 REQUIRED glib-2.0>=2.20)
|
||||
GNC_PKG_CHECK_MODULES (GOBJECT REQUIRED gobject-2.0>=2.20)
|
||||
GNC_PKG_CHECK_MODULES (GMODULE REQUIRED gmodule-2.0>=2.20)
|
||||
GNC_PKG_CHECK_MODULES (GTHREAD REQUIRED gthread-2.0>=2.20)
|
||||
|
||||
GNC_PKG_CHECK_MODULES (LIBXML2 REQUIRED libxml-2.0>=2.7.0)
|
||||
GNC_PKG_CHECK_MODULES (GNOMECANVAS REQUIRED libgnomecanvas-2.0)
|
||||
GNC_PKG_CHECK_MODULES (LIBXSLT REQUIRED libxslt)
|
||||
GNC_PKG_CHECK_MODULES (WEBKIT REQUIRED webkit-1.0>=1.2)
|
||||
IF (WITH_GNUCASH)
|
||||
GNC_PKG_CHECK_MODULES (GTK2 REQUIRED gtk+-2.0>=2.24.0)
|
||||
GNC_PKG_CHECK_MODULES (GOFFICE REQUIRED libgoffice-0.8>=0.8.17)
|
||||
ENDIF (WITH_GNUCASH)
|
||||
|
||||
GNC_PKG_CHECK_MODULES (ZLIB REQUIRED zlib)
|
||||
IF (WITH_CUTECASH)
|
||||
GNC_PKG_CHECK_MODULES (GLIBMM REQUIRED glibmm-2.4>=2.24)
|
||||
ENDIF(WITH_CUTECASH)
|
||||
|
||||
IF (MSVC)
|
||||
MESSAGE (STATUS "Hint: To create the import libraries for the gnome DLLs (e.g. gconf-2.lib), use the dlltool as follows: pexports bin/libgconf-2-4.dll > lib/libgconf-2.def ; dlltool -d lib/libgconf-2.def -D bin/libgconf-2-4.dll -l lib/gconf-2.lib")
|
||||
@ -54,23 +162,41 @@ IF (MSVC)
|
||||
ADD_DEFINITIONS ( -DNOMINMAX )
|
||||
ENDIF (MSVC)
|
||||
|
||||
## Libxml2
|
||||
#FIND_PACKAGE (LibXml2 REQUIRED)
|
||||
FIND_PACKAGE (ZLIB REQUIRED)
|
||||
|
||||
IF (NOT GLIB2_FOUND)
|
||||
MESSAGE (SEND_ERROR "Glib2 not found, but is required")
|
||||
ENDIF (NOT GLIB2_FOUND)
|
||||
|
||||
FIND_PATH (LIBINTL_INCLUDE_PATH NAMES libintl.h
|
||||
PATHS /usr/include /opt/gnome/include)
|
||||
FIND_LIBRARY (LIBINTL_LIBRARY NAMES intl)
|
||||
|
||||
FIND_PATH (LTDL_INCLUDE_PATH NAMES ltdl.h PATHS /usr/include)
|
||||
|
||||
IF(NOT LTDL_INCLUDE_PATH-NOTFOUND)
|
||||
SET(HAVE_LTDL_H 1)
|
||||
ENDIF()
|
||||
|
||||
|
||||
|
||||
FIND_PROGRAM(INTLTOOL_MERGE NAMES intltool-merge HINTS ${CMAKE_PREFIX_PATH}/gnome/bin)
|
||||
FIND_PROGRAM(GLIB_COMPILE_SCHEMAS glib-compile-schemas HINTS ${CMAKE_PREFIX_PATH}/gnome/bin)
|
||||
FIND_PROGRAM(MSGFMT msgfmt)
|
||||
IF(NOT INTLTOOL_MERGE)
|
||||
MESSAGE(SEND_ERROR "Can't find intltool-merge program. Please set INTLTOOL_MERGE.")
|
||||
ENDIF(NOT INTLTOOL_MERGE)
|
||||
|
||||
IF (NOT GLIB_COMPILE_SCHEMAS)
|
||||
MESSAGE(SEND_ERROR "Can't find glib-compile-schemas program. Please set GLIB_COMPILE_SCHEMAS.")
|
||||
ENDIF(NOT GLIB_COMPILE_SCHEMAS)
|
||||
|
||||
IF (NOT MSGFMT)
|
||||
MESSAGE(SEND_ERROR "Can't find msgfmt program. Please set MSGFMT.")
|
||||
ENDIF(NOT MSGFMT)
|
||||
|
||||
FIND_PATH (REGEX_INCLUDE_PATH NAMES regex.h
|
||||
PATHS /usr/include /opt/gnome/include)
|
||||
FIND_LIBRARY (REGEX_LIBRARY NAMES regex)
|
||||
IF (WIN32)
|
||||
FIND_PATH (HTMLHELP_INCLUDE_PATH NAMES htmlhelp.h
|
||||
PATHS /usr/include)
|
||||
PATHS /usr/include
|
||||
HINTS ${CMAKE_PREFIX_PATH}/hh/include)
|
||||
FIND_LIBRARY (HTMLHELP_LIBRARY htmlhelp HINTS ${CMAKE_PREFIX_PATH}/hh/lib)
|
||||
ENDIF (WIN32)
|
||||
|
||||
# ############################################################
|
||||
@ -79,29 +205,102 @@ ENDIF (WIN32)
|
||||
FIND_PACKAGE (SWIG REQUIRED)
|
||||
INCLUDE (${SWIG_USE_FILE})
|
||||
|
||||
# guile library and include dir
|
||||
PKG_CHECK_MODULES (GUILE guile-1.8>=1.8.0)
|
||||
ADD_DEFINITIONS (-DHAVE_GUILE18)
|
||||
# We also need to look up the executable
|
||||
FIND_PROGRAM (GUILE_EXECUTABLE guile)
|
||||
# Find Guile and determine which version we are using.
|
||||
# First look for guile-2.0. If not found, try to locate guile-1.8
|
||||
|
||||
IF (NOT GUILE_FOUND)
|
||||
MESSAGE (SEND_ERROR "Guile was not found, but is required. Please set PKG_CONFIG_PATH so that guile-1.8.pc is found.")
|
||||
ENDIF (NOT GUILE_FOUND)
|
||||
IF (NOT GUILE_EXECUTABLE)
|
||||
MESSAGe (SEND_ERROR "The guile executable was not found, but is required. Please set GUILE_EXECUTABLE.")
|
||||
ENDIF (NOT GUILE_EXECUTABLE)
|
||||
# guile library and include dir
|
||||
GNC_PKG_CHECK_MODULES (GUILE2 guile-2.0>=2.0.9 QUIET)
|
||||
IF (GUILE2_FOUND) # found guile-2.0
|
||||
ADD_DEFINITIONS (-DHAVE_GUILE20)
|
||||
SET(HAVE_GUILE2 TRUE)
|
||||
SET(GUILE_EFFECTIVE_VERSION 2.0)
|
||||
# We also need to look up the executable
|
||||
FIND_PROGRAM (GUILE_EXECUTABLE guile)
|
||||
FIND_PROGRAM (GUILD_EXECUTABLE guild)
|
||||
|
||||
SET(GUILE_INCLUDE_DIRS ${GUILE2_INCLUDE_DIRS})
|
||||
SET(GUILE_LDFLAGS ${GUILE2_LDFLAGS})
|
||||
|
||||
IF (NOT GUILE_EXECUTABLE)
|
||||
MESSAGE (SEND_ERROR "The guile executable was not found, but is required. Please set GUILE_EXECUTABLE.")
|
||||
ENDIF (NOT GUILE_EXECUTABLE)
|
||||
IF (NOT GUILD_EXECUTABLE)
|
||||
MESSAGE (SEND_ERROR "The guild executable was not found, but is required. Please set GUILD_EXECUTABLE.")
|
||||
ENDIF (NOT GUILD_EXECUTABLE)
|
||||
MESSAGE(STATUS "Using guile-2.0.x")
|
||||
ELSE()
|
||||
# look for guile 1.8
|
||||
GNC_PKG_CHECK_MODULES (GUILE1 guile-1.8>=1.8.8 QUIET)
|
||||
IF (NOT GUILE1_FOUND)
|
||||
MESSAGE (SEND_ERROR "Neither guile 1.8 nor guile 2.0 where find. Please set PKG_CONFIG_PATH one of these is found.")
|
||||
ENDIF(NOT GUILE1_FOUND)
|
||||
|
||||
SET(GUILE_INCLUDE_DIRS ${GUILE1_INCLUDE_DIRS})
|
||||
SET(GUILE_LDFLAGS ${GUILE1_LDFLAGS})
|
||||
SET(HAVE_GUILE1 TRUE)
|
||||
SET(GUILE_EFFECTIVE_VERSION 1.8)
|
||||
MESSAGE(STATUS "Using guile-1.8.x")
|
||||
ENDIF()
|
||||
|
||||
# Qt
|
||||
IF (WITH_CUTECASH)
|
||||
SET (QT_MIN_VERSION "4.5.0")
|
||||
FIND_PACKAGE (Qt4 REQUIRED) # find and setup Qt4 for this project
|
||||
ENDIF (WITH_CUTECASH)
|
||||
|
||||
# ############################################################
|
||||
IF (WITH_AQBANKING)
|
||||
GNC_PKG_CHECK_MODULES (GWENHYWFAR REQUIRED gwenhywfar)
|
||||
GNC_PKG_CHECK_MODULES (AQBANKING REQUIRED aqbanking)
|
||||
IF(WITH_GNUCASH)
|
||||
GNC_PKG_CHECK_MODULES (GWENGUI_GTK2 REQUIRED gwengui-gtk2)
|
||||
GNC_PKG_CHECK_MODULES (KTOBLZCHECK ktoblzcheck)
|
||||
IF(KTOBLZCHECK_FOUND)
|
||||
SET(HAVE_KTOBLZCHECK_H 1)
|
||||
ENDIF(KTOBLZCHECK_FOUND)
|
||||
ENDIF(WITH_GNUCASH)
|
||||
ENDIF (WITH_AQBANKING)
|
||||
|
||||
IF (WITH_OFX)
|
||||
GNC_PKG_CHECK_MODULES (LIBOFX REQUIRED libofx)
|
||||
ENDIF(WITH_OFX)
|
||||
# ############################################################
|
||||
|
||||
IF(APPLE)
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=target gdk-2.0
|
||||
OUTPUT_VARIABLE TARGET_RESULT
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
IF(TARGET_RESULT STREQUAL "quartz")
|
||||
SET(GNC_PLATFORM_COCOA 1)
|
||||
SET(GDK_QUARTZ 1)
|
||||
GNC_PKG_CHECK_MODULES(GTK_MAC gtk-mac-integration-gtk2)
|
||||
IF (GTK_MAC_FOUND)
|
||||
SET(MAC_INTEGRATION 1)
|
||||
FIND_LIBRARY(COCOA_LIBRARY Cocoa)
|
||||
FIND_LIBRARY(SECURITY_LIBRARY Security)
|
||||
FIND_LIBRARY(CARBON_LIBRARY Carbon)
|
||||
SET(OSX_EXTRA_COMPILE_FLAGS -xobjective-c)
|
||||
SET(OSX_EXTRA_LIBRARIES objc ${COCOA_LIBRARY} ${SECURITY_LIBRARY} ${CARBON_LIBRARY})
|
||||
ENDIF(GTK_MAC_FOUND)
|
||||
ENDIF()
|
||||
ENDIF(APPLE)
|
||||
|
||||
# ############################################################
|
||||
|
||||
# xsltproc
|
||||
FIND_PROGRAM (XSLTPROC xsltproc)
|
||||
FIND_PACKAGE(LibXslt)
|
||||
|
||||
IF (NOT LIBXSLT_FOUND)
|
||||
MESSAGE(SEND_ERROR "libxslt library not found.")
|
||||
ENDIF(NOT LIBXSLT_FOUND)
|
||||
# ############################################################
|
||||
|
||||
# libdbi
|
||||
FIND_PATH (LIBDBI_INCLUDE_PATH dbi/dbi.h)
|
||||
FIND_LIBRARY (LIBDBI_LIBRARY dbi)
|
||||
FIND_PATH (LIBDBI_INCLUDE_PATH dbi/dbi.h HINTS ${CMAKE_PREFIX_PATH}/libdbi/include)
|
||||
FIND_LIBRARY (LIBDBI_LIBRARY dbi HINTS ${CMAKE_PREFIX_PATH}/libdbi/lib)
|
||||
FIND_PATH (LIBDBI_DRIVERS_DIR dbd HINTS ${CMAKE_PREFIX_PATH}/lib ${CMAKE_PREFIX_PATH}/libdbi-drivers/lib)
|
||||
IF (WITH_SQL)
|
||||
IF (NOT LIBDBI_INCLUDE_PATH)
|
||||
MESSAGE (SEND_ERROR "Include file <dbi/dbi.h> was not found - did you install libdbi0-dev or libdbi-dev?")
|
||||
@ -109,40 +308,199 @@ IF (WITH_SQL)
|
||||
IF (NOT LIBDBI_LIBRARY)
|
||||
MESSAGE (SEND_ERROR "Library libdbi was not found")
|
||||
ENDIF (NOT LIBDBI_LIBRARY)
|
||||
SET(HAVE_DBI_DBI_H 1)
|
||||
ENDIF (WITH_SQL)
|
||||
|
||||
# ############################################################
|
||||
|
||||
# Qt
|
||||
SET (QT_MIN_VERSION "4.5.0")
|
||||
FIND_PACKAGE (Qt4 REQUIRED) # find and setup Qt4 for this project
|
||||
FIND_PACKAGE(Perl)
|
||||
|
||||
# ############################################################
|
||||
IF (WITH_AQBANKING)
|
||||
PKG_CHECK_MODULES (GWENHYWFAR REQUIRED gwenhywfar)
|
||||
PKG_CHECK_MODULES (AQBANKING REQUIRED aqbanking)
|
||||
ENDIF (WITH_AQBANKING)
|
||||
if (NOT PERL_FOUND)
|
||||
MESSAGE(SEND_ERROR "Perl executable not found. Please set PERL_EXECUTABLE.")
|
||||
ENDIF(NOT PERL_FOUND)
|
||||
|
||||
FIND_PROGRAM(POD2MAN_EXECUTABLE pod2man)
|
||||
|
||||
#BOOST
|
||||
IF (APPLE)
|
||||
# I suppose I would rather use the shared Boost libraries here, but the Boost install procedure
|
||||
# does not set RPATH for it's shared library correctly. It uses a 'naked' RPATH, which requires
|
||||
# that DYLD_FALLBACK_LIBRARY_PATH be set. There is supposedly a dll-path option so set RPATH, but
|
||||
# I can't get it to work (http://www.boost.org/build/doc/html/bbv2/faq/dll-path.html) and neither
|
||||
# can some other random person on the internet:
|
||||
# http://stackoverflow.com/questions/33667795/dll-path-has-no-effect-when-building-boost
|
||||
# Using static libs simplifies things.
|
||||
SET (Boost_USE_STATIC_LIBS ON)
|
||||
SET (Boost_USE_STATIC_RUNTIME ON)
|
||||
ELSE()
|
||||
SET (Boost_USE_STATIC_LIBS OFF)
|
||||
SET (Boost_USE_STATIC_RUNTIME OFF)
|
||||
ENDIF()
|
||||
|
||||
SET (Boost_USE_MULTITHREADED ON)
|
||||
SET (Boost_FIND_QUIETLY ON)
|
||||
|
||||
FIND_PACKAGE (Boost 1.54.0 REQUIRED COMPONENTS date_time)
|
||||
|
||||
IF (Boost_FOUND)
|
||||
include_directories(${Boost_INCLUDE_DIRS})
|
||||
SET(HAVE_BOOST 1)
|
||||
ELSE (Boost_FOUND)
|
||||
MESSAGE (SEND_ERROR "Boost 1.54.0 or later is not installed, and is required. Please install it and ensure that the following libraries are built: chrono, date_time, filesystem, log, program_options, regex, signals, system, and test.")
|
||||
ENDIF (Boost_FOUND)
|
||||
|
||||
# ############################################################
|
||||
|
||||
# Compiler flags
|
||||
|
||||
IF (APPLE)
|
||||
ADD_DEFINITIONS(-Wno-unknown-attributes -Wno-typedef-redefinition)
|
||||
# SET (CMAKE_OSX_ARCHITECTURES "i386")
|
||||
ENDIF (APPLE)
|
||||
|
||||
|
||||
# Also, set the C++ version to c++11
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11") # FIXME: should be -std=c++11
|
||||
|
||||
|
||||
IF (UNIX)
|
||||
SET( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wdeclaration-after-statement -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wno-unused")
|
||||
SET( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error=deprecated-declarations")
|
||||
ENDIF (UNIX)
|
||||
IF (MINGW)
|
||||
SET( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wdeclaration-after-statement -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wno-unused")
|
||||
SET( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wdeclaration-after-statement -Wno-pointer-sign -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wno-unused -std=gnu99")
|
||||
ENDIF (MINGW)
|
||||
IF (APPLE)
|
||||
SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-local-typedef")
|
||||
ENDIF(APPLE)
|
||||
|
||||
IF (APPLE AND WITH_GNUCASH)
|
||||
SET(CMAKE_MACOSX_RPATH ON)
|
||||
ENDIF (APPLE AND WITH_GNUCASH)
|
||||
|
||||
IF (UNIX AND NOT APPLE)
|
||||
SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib:${CMAKE_INSTALL_PREFIX}/lib/gnucash")
|
||||
ENDIF()
|
||||
|
||||
SET(BUILD_SHARED_LIBS ON)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
# Most libraries are installed to lib/gnucash, so set that as the default.
|
||||
# For the handful that are installed to lib, we override the properies below
|
||||
# (after the targets have been read in).
|
||||
|
||||
|
||||
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib/gnucash)
|
||||
IF (XCODE_VERSION)
|
||||
# FIXME: These settings break the ability to manipulate different configurations (Debug,
|
||||
# FIXME: Release, etc.) in Xcode. We'll need to change the module loading C code if
|
||||
# we want to support multi config.
|
||||
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/lib/gnucash)
|
||||
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/lib/gnucash)
|
||||
ENDIF()
|
||||
# For binarines
|
||||
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
|
||||
IF (XCODE_VERSION)
|
||||
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/bin)
|
||||
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/bin)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
# ############################################################
|
||||
|
||||
# The subdirectories
|
||||
ADD_SUBDIRECTORY (accounts)
|
||||
ADD_SUBDIRECTORY (checks)
|
||||
ADD_SUBDIRECTORY (doc)
|
||||
ADD_SUBDIRECTORY (po)
|
||||
ADD_SUBDIRECTORY (src)
|
||||
|
||||
# This cmake subdir must be the last add_subdirectory() call because
|
||||
# it contains post-install actions to execute.
|
||||
ADD_SUBDIRECTORY(cmake)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET_TARGET_PROPERTIES(gnc-qof gnc-core-utils gnc-module gnc-backend-sql gnc-backend-xml-utils
|
||||
gnc-business-ledger gnc-gnome PROPERTIES
|
||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
|
||||
IF (XCODE_VERSION)
|
||||
LIBRARY_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/lib
|
||||
LIBRARY_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/lib
|
||||
ENDIF()
|
||||
|
||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
||||
IF (XCODE_VERSION)
|
||||
RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/bin
|
||||
RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/bin
|
||||
ENDIF()
|
||||
)
|
||||
IF (WIN32)
|
||||
SET_TARGET_PROPERTIES(gncmod-backend-xml gncmod-stylesheets gncmod-utility-reports PROPERTIES
|
||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
||||
)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
# Install DOC files from top level directory
|
||||
|
||||
FILE(WRITE COPYING
|
||||
"This is a placeholder for the COPYING file as generated by automake.
|
||||
If and when CMake becomes the default build system, we will need to
|
||||
put COPYING under version control."
|
||||
)
|
||||
|
||||
FILE(WRITE INSTALL
|
||||
"This is a placeholder for the INSTALL file as generated by automake.
|
||||
If and when CMake becomes the default build system, we will need to
|
||||
put INSTALL under version control."
|
||||
)
|
||||
|
||||
SET(gnucash_DOCS
|
||||
AUTHORS
|
||||
ChangeLog
|
||||
ChangeLog.2003
|
||||
ChangeLog.2004
|
||||
ChangeLog.2005
|
||||
ChangeLog.2006
|
||||
ChangeLog.2007
|
||||
ChangeLog.2008
|
||||
ChangeLog.2009
|
||||
ChangeLog.2010
|
||||
ChangeLog.2011
|
||||
ChangeLog.2012
|
||||
ChangeLog.2013
|
||||
ChangeLog.2014
|
||||
DOCUMENTERS
|
||||
HACKING
|
||||
LICENSE
|
||||
NEWS
|
||||
README.dependencies
|
||||
COPYING
|
||||
INSTALL
|
||||
)
|
||||
|
||||
INSTALL(FILES ${gnucash_DOCS} DESTINATION share/doc/gnucash)
|
||||
|
||||
#For windows, copy in some DLLs from Mingw
|
||||
|
||||
IF (WIN32)
|
||||
SET(MINGW_DLLS ${CMAKE_PREFIX_PATH}/mingw/bin/libstdc++-6.dll ${CMAKE_PREFIX_PATH}/mingw/bin/libgcc_s_dw2-1.dll)
|
||||
INSTALL(PROGRAMS ${MINGW_DLLS} DESTINATION bin)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${MINGW_DLLS} DESTINATION ${BINDIR_BUILD}
|
||||
# Do permissions matter for windows?
|
||||
FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
|
||||
ENDIF()
|
||||
# ############################################################
|
||||
# Package creation rules
|
||||
|
||||
IF (WITH_CUTECASH)
|
||||
SET (CUTECASH_VERSION_MAJOR "0")
|
||||
SET (CUTECASH_VERSION_MINOR "1")
|
||||
SET (CUTECASH_VERSION_PATCH "0")
|
||||
SET (CUTECASH_VERSION_NANO "0")
|
||||
|
||||
SET (CPACK_PACKAGE_NAME "Cutecash")
|
||||
SET (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Cutecash Free Finance Software")
|
||||
SET (CPACK_PACKAGE_VERSION_MAJOR ${CUTECASH_VERSION_MAJOR})
|
||||
@ -152,7 +510,7 @@ SET (CPACK_PACKAGE_VENDOR "Christian Stimming")
|
||||
SET (CPACK_SOURCE_IGNORE_FILES "/\\\\.svn/;/\\\\.git/;.*~;build.*;html;Debug;Release")
|
||||
SET (CPACK_STRIP_FILES "bin/cutecash")
|
||||
#SET (CPACK_PACKAGE_EXECUTABLES "bin/carclient")
|
||||
|
||||
ENDIF (WITH_CUTECASH)
|
||||
IF(UNIX)
|
||||
SET(CPACK_GENERATOR "TGZ")
|
||||
ENDIF(UNIX)
|
||||
|
67
accounts/CMakeLists.txt
Normal file
67
accounts/CMakeLists.txt
Normal file
@ -0,0 +1,67 @@
|
||||
SET(accounts_SUBDIRS
|
||||
C
|
||||
cs
|
||||
da
|
||||
de_AT
|
||||
de_CH
|
||||
de_DE
|
||||
el_GR
|
||||
en_GB
|
||||
es_ES
|
||||
es_MX
|
||||
fi_FI
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
hu_HU
|
||||
it
|
||||
# ja
|
||||
ko
|
||||
lt
|
||||
lv
|
||||
# nb
|
||||
# nl
|
||||
pl
|
||||
pt_BR
|
||||
pt_PT
|
||||
ru
|
||||
sk
|
||||
sv_AX
|
||||
sv_FI
|
||||
sv_SE
|
||||
tr_TR
|
||||
zh_CN
|
||||
zh_HK
|
||||
zh_TW
|
||||
)
|
||||
|
||||
|
||||
# Most of the account subdirectories that have acctchrt_full.gnucash-xea do not install it. Don't know why.
|
||||
# But these subdirectories do.
|
||||
SET(accounts_fullcharts_SUBDIRS ja nb nl)
|
||||
|
||||
FOREACH(dir ${accounts_SUBDIRS})
|
||||
INSTALL(DIRECTORY ${dir} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/gnucash/accounts
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN acctchrt_full.gnucash-xea EXCLUDE
|
||||
PATTERN README.bas_2012 EXCLUDE)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${dir} DESTINATION ${DATADIR_BUILD}/gnucash/accounts
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN acctchrt_full.gnucash-xea EXCLUDE
|
||||
PATTERN README.bas_2012 EXCLUDE
|
||||
)
|
||||
ENDIF()
|
||||
ENDFOREACH(dir)
|
||||
|
||||
FOREACH(dir ${accounts_fullcharts_SUBDIRS})
|
||||
INSTALL(DIRECTORY ${dir} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/gnucash/accounts
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN README.bas_2012 EXCLUDE)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${dir} DESTINATION ${DATADIR_BUILD}/gnucash/accounts
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN README.bas_2012 EXCLUDE
|
||||
)
|
||||
ENDIF()
|
||||
ENDFOREACH(dir)
|
15
checks/CMakeLists.txt
Normal file
15
checks/CMakeLists.txt
Normal file
@ -0,0 +1,15 @@
|
||||
SET(checks_DATA
|
||||
deluxe.chk
|
||||
liberty.chk
|
||||
quicken.chk
|
||||
quicken_wallet.chk
|
||||
voucher.chk
|
||||
quicken_check_21.chk
|
||||
quicken_3part.chk
|
||||
)
|
||||
|
||||
INSTALL(FILES ${checks_DATA} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/gnucash/checks)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${checks_DATA} DESTINATION ${DATADIR_BUILD}/gnucash/checks)
|
||||
ENDIF()
|
26
cmake/CMakeLists.txt
Normal file
26
cmake/CMakeLists.txt
Normal file
@ -0,0 +1,26 @@
|
||||
# Post install actions go here.
|
||||
|
||||
INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${GLIB_COMPILE_SCHEMAS} ${CMAKE_INSTALL_PREFIX}/share/glib-2.0/schemas)")
|
||||
|
||||
IF (APPLE)
|
||||
INSTALL(CODE "EXECUTE_PROCESS(
|
||||
COMMAND /usr/bin/install_name_tool -add_rpath ${CMAKE_INSTALL_PREFIX}/lib
|
||||
-add_rpath ${CMAKE_INSTALL_PREFIX}/lib/gnucash
|
||||
${CMAKE_INSTALL_PREFIX}/bin/gnucash)")
|
||||
ENDIF(APPLE)
|
||||
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(schema-targets aqb-gschema business-gnome-gschema csv-exp-gschema csv-imp-gschema
|
||||
generic-import-gschema gnome-gschema gnome-utils-gschema ofx-gschema qif-imp-gschema)
|
||||
|
||||
SET(SCHEMA_DIRECTORY ${DATADIR_BUILD}/glib-2.0/schemas)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${SCHEMA_DIRECTORY}/gschemas.compiled
|
||||
COMMAND ${CMAKE_COMMAND} -E env ${GLIB_COMPILE_SCHEMAS} ${SCHEMA_DIRECTORY}
|
||||
DEPENDS ${schema-targets}
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(compiled-schemas ALL DEPENDS ${SCHEMA_DIRECTORY}/gschemas.compiled)
|
||||
|
||||
ENDIF(GNC_BUILD_AS_INSTALL)
|
218
cmake/README_CMAKE.txt
Normal file
218
cmake/README_CMAKE.txt
Normal file
@ -0,0 +1,218 @@
|
||||
Using CMake to build GnuCash
|
||||
============================
|
||||
|
||||
== Intro
|
||||
|
||||
As part of his CuteCash work, Christian Stimming added support for
|
||||
using http://www.cmake.org[CMake] to build the part of GnuCash that
|
||||
went into CuteCash. This work extends the use of CMake to cover all of
|
||||
GnuCash proper such that GnuCash itself can be fully compiled with
|
||||
CMake.
|
||||
|
||||
Some advantages of using CMake:
|
||||
|
||||
* The build time on Windows drops from around an hour to just a few
|
||||
minutes.
|
||||
|
||||
* CMake supports the generation of build files for several IDEs
|
||||
such as Xcode, Eclipse, KDevelop and others. The open source Qt
|
||||
Creator and the commercial CLion C/C++ IDE from JetBrains can use
|
||||
CMake files natively.
|
||||
|
||||
* The CMake language, though with significant issues, is still
|
||||
easier to maintain than autotools.
|
||||
|
||||
This setup also uses the http://www.ninja-build.org[Ninja] build
|
||||
system to enable fast and parallel builds on Windows. (On POSIX
|
||||
systems [OS X, Linux, FreeBSD, etc.] Ninja does not seem significantly
|
||||
faster that using the default Makefile generator to me.)
|
||||
|
||||
== Scope
|
||||
|
||||
The scope of the current work is to duplicate the `make` and `make
|
||||
install` actions as the Autotools system would. Currently, there is no
|
||||
support for `make check`, `make dist`, `make distcheck` or similar
|
||||
targets. Other limitations include:
|
||||
|
||||
* Not all options available in `./configure` have been ported to
|
||||
this CMake system.
|
||||
|
||||
* Password management is included for OS X, but not
|
||||
tested. Gnome-keyring and libsecret support has not
|
||||
been ported over.
|
||||
|
||||
* The Xcode build only supports the Debug configuration. Others such
|
||||
as Release are not supported yet.
|
||||
|
||||
* Python support has not been ported over.
|
||||
|
||||
* Visual Studio support is out of scope. While CMake supports
|
||||
generating build files for Visual Studio on Windows, it is not
|
||||
likely at this point that either GnuCash or all of its
|
||||
dependencies can be built using the Microsoft compiler tool chain.
|
||||
|
||||
== Known Issues
|
||||
|
||||
* Sometimes the Tip of the Day is empty. I've got a stray
|
||||
carriage return somewhere.
|
||||
|
||||
* Clicking on 'Start AqBanking Wizard' in the AqBanking setup will
|
||||
cause a crash. I have not yet investigated this.
|
||||
|
||||
== Using CMake on Linux, OS X, etc.
|
||||
|
||||
=== Prerequisites
|
||||
|
||||
The CMake setup does not support building and installing dependencies
|
||||
(although it probably could some day). So you need to have the
|
||||
dependencies available, most likely by having run the existing
|
||||
Autotools build at least once. Various resources on the GnuCash wiki
|
||||
will have advice on how to do this.
|
||||
|
||||
You will need to have CMake and optionally Ninja installed, either
|
||||
from distro package repositories or by hand. You need at least version
|
||||
3.1 of CMake.
|
||||
|
||||
=== Running CMake
|
||||
|
||||
The next step is to invoke CMake to generate the build system. Before
|
||||
running CMake, you need to create a build directory:
|
||||
|
||||
$ cd .. # back to workdir
|
||||
$ mkdir gnucash-build
|
||||
$ cd gnucash-build
|
||||
|
||||
Then decide what cmake command line options you will need:
|
||||
|
||||
* If you want to install after building, add
|
||||
`-D CMAKE_INSTALL_PREFIX=/path/to/install`
|
||||
|
||||
* If your dependencies are installed in a non-standard place as is
|
||||
typical for building on OS X, put
|
||||
`-D CMAKE_PREFIX_PATH=/path/to/installed/depends`
|
||||
on the command line.
|
||||
|
||||
* If you want to use the Ninja generator, put `-G Ninja` on the
|
||||
command line.
|
||||
|
||||
* If you want to use the Xcode generator on OS X, put `-G Xcode` on
|
||||
the command line.
|
||||
|
||||
* If you don't specify a generator, Makefiles will be generated.
|
||||
|
||||
* Finally, put the path to your source directory last.
|
||||
Here, that is ../gnucash
|
||||
|
||||
* There are other options available; look in the `OPTIONS` section of
|
||||
the top-level `CMakeLists.txt` file. For example, you can disable
|
||||
SQL using these options.
|
||||
|
||||
Some examples:
|
||||
|
||||
* Build on Linux, don't want to install, use the Makefile generator:
|
||||
|
||||
$ cmake ../gnucash
|
||||
|
||||
* Build on Linux, install to /tmp/gnucash, use Ninja generator:
|
||||
|
||||
$ cmake -D CMAKE_INSTALL_PREFIX=/tmp/gnucash -G Ninja ../gnucash
|
||||
|
||||
* Build on OS X, install to /tmp/gnucash, use Ninja generator:
|
||||
|
||||
$ cmake -D CMAKE_INSTALL_PREFIX=/tmp/gnucash -D CMAKE_PREFIX_PATH=$HOME/gnucash-unstable -G Ninja ../gnucash
|
||||
|
||||
* The same, but use the Xcode generator:
|
||||
|
||||
$ cmake -D CMAKE_INSTALL_PREFIX=/tmp/gnucash -D CMAKE_PREFIX_PATH=$HOME/gnucash-unstable -G Xcode ../gnucash
|
||||
|
||||
=== Building
|
||||
|
||||
The Xcode, Ninja and Makefile generators all support parallel builds,
|
||||
so decide how many cores you want to use. Ninja will pick a sensible
|
||||
default.
|
||||
|
||||
If you chose to configure for installation, you can use the `install`
|
||||
target for each generator. The Makefile and Ninja generators also
|
||||
support a verbose option if you want to see all of the command lines
|
||||
scroll by. Xcodebuild seems to show all the gory details whether you
|
||||
want them or not.
|
||||
|
||||
For Ninja, use the line below. Note that the executable is called
|
||||
`ninja-build` on Fedora. Also, Ninja supports the `NINJA_STATUS`
|
||||
environment variable to give status on the build. I like to use
|
||||
`NINJA_STATUS="%es [%p/%s/%t] "`.
|
||||
|
||||
$ ninja [-v] [install]
|
||||
|
||||
For Makefiles:
|
||||
|
||||
$ make [VERBOSE=1] -j N [install]
|
||||
|
||||
For Xcode via the command line (see below to build from within Xcode):
|
||||
|
||||
$ xcodebuild -jobs N [-target=install]
|
||||
|
||||
=== Launching GnuCash
|
||||
|
||||
Assuming the build completes successfully, in all cases you can run
|
||||
directly from the build directory:
|
||||
|
||||
$ bin/gnucash
|
||||
|
||||
In you chose to install, you can switch to the install directory and
|
||||
do the same.
|
||||
|
||||
|
||||
== Using CMake and Ninja on Windows
|
||||
|
||||
|
||||
For Windows, follow the instructions at
|
||||
https://github.com/Gnucash/gnucash-on-windows to the point where you
|
||||
are ready to run install.sh.
|
||||
|
||||
Edit custom.sh to add these lines at the bottom:
|
||||
|
||||
WITH_CMAKE=yes
|
||||
WITH_NINJA=yes
|
||||
|
||||
Ensure that your custom.sh file contains this line:
|
||||
|
||||
MSYS_DIR=c:\\gcdev\\mingw\\msys\\1.0
|
||||
|
||||
Remove or move any existing install at /c/gcdev/gnucash/inst.
|
||||
|
||||
Then continue to follow the existing build instructions.
|
||||
|
||||
At this writing, generating a distribution with the CMake build
|
||||
via dist.sh has not been tested.
|
||||
|
||||
|
||||
== Using Xcode on OS X
|
||||
|
||||
CMake can generate build files for Xcode such that GnuCash can be
|
||||
built, run and debugged from within Xcode. Follow the instructions
|
||||
above to the point where you would use `xcodebuild` to launch the
|
||||
build. Instead, launch Xcode by doing:
|
||||
|
||||
$ open Gnucash.xcodeproj
|
||||
|
||||
Xcode 7 will pop up a window about Autocreate Schemes. I usually
|
||||
choose "Manually Manage Schemes". On the next window, use the "\+"
|
||||
symbol to use the "ALL_BUILD" scheme. Then click on OK. If you want to
|
||||
be able to run the equivalent of "make install" from within Xcode, use
|
||||
the "+" symbol again and choose the "install" scheme.
|
||||
|
||||
Back in the Xcode main window, make sure the "ALL_BUILD" scheme is
|
||||
selected (next to the stop symbol). Click on "ALL_BUILD" and
|
||||
then "Edit Scheme". On the "Info" tab, choose the executable to be
|
||||
"gnucash".
|
||||
|
||||
Now use Command-B to build (or Product -> Build) to start the
|
||||
build. When it finishes, click on the play symbol (or Product
|
||||
-> Run) to verify that you can launch GnuCash from within Xcode. If
|
||||
that works, you can now set breakpoints with Xcode and debug away.
|
||||
|
||||
To run the install script, click on the "ALL_BUILD" scheme and change
|
||||
it to "install". Then press the play button to run the script.
|
||||
|
||||
That's it.
|
72
doc/CMakeLists.txt
Normal file
72
doc/CMakeLists.txt
Normal file
@ -0,0 +1,72 @@
|
||||
ADD_SUBDIRECTORY(examples)
|
||||
|
||||
SET(doc_DATA
|
||||
README.francais
|
||||
README.german
|
||||
README-de.win32-bin.txt
|
||||
README-fr.win32-bin.txt
|
||||
README-it.win32-bin.txt
|
||||
README-lv.win32-bin.txt
|
||||
README-nl.win32-bin.txt
|
||||
README-zh_CN.win32-bin.txt
|
||||
README-zh_TW.win32-bin.txt
|
||||
README.win32-bin.txt
|
||||
guile-hackers.txt
|
||||
projects.html
|
||||
)
|
||||
|
||||
INSTALL(FILES ${doc_DATA} DESTINATION share/doc/gnucash)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${doc_DATA} DESTINATION ${DATADIR_BUILD}/doc/gnucash)
|
||||
ENDIF()
|
||||
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${CMAKE_COMMAND} -E env date +"%B %Y"
|
||||
OUTPUT_VARIABLE DATE
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
|
||||
# Generate the tip of the day file.
|
||||
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${CMAKE_C_COMPILER} -E -P -x c -DN_\(x\)=x -o ${CMAKE_CURRENT_BINARY_DIR}/tip_of_the_day.list.tmp ${CMAKE_CURRENT_SOURCE_DIR}/tip_of_the_day.list.in
|
||||
)
|
||||
|
||||
FILE(STRINGS ${CMAKE_CURRENT_BINARY_DIR}/tip_of_the_day.list.tmp TIP_OF_THE_DAY_LINES)
|
||||
|
||||
SET(TOTD_OUTPUT "")
|
||||
SET(FIRST_LINE TRUE)
|
||||
FOREACH(line ${TIP_OF_THE_DAY_LINES})
|
||||
STRING(REGEX REPLACE "^ *\"" "" line2 "${line}")
|
||||
STRING(REGEX REPLACE "\" *$" "" line3 "${line2}")
|
||||
IF (NOT FIRST_LINE)
|
||||
LIST(APPEND TOTD_OUTPUT "\n\n")
|
||||
ENDIF()
|
||||
SET(FIRST_LINE FALSE)
|
||||
LIST(APPEND TOTD_OUTPUT "${line3}\n")
|
||||
ENDFOREACH()
|
||||
|
||||
LIST(APPEND TOTD_OUTPUT "\n")
|
||||
|
||||
STRING(CONCAT FINAL_TOTD ${TOTD_OUTPUT})
|
||||
|
||||
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/tip_of_the_day.list "${FINAL_TOTD}")
|
||||
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/tip_of_the_day.list DESTINATION share/gnucash)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/tip_of_the_day.list
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash)
|
||||
ENDIF()
|
||||
|
||||
# ---
|
||||
|
||||
GNC_CONFIGURE(gnucash.1.in gnucash.1 )
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/gnucash.1 DESTINATION share/man/man1)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/gnucash.1
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash)
|
||||
ENDIF()
|
||||
|
24
doc/examples/CMakeLists.txt
Normal file
24
doc/examples/CMakeLists.txt
Normal file
@ -0,0 +1,24 @@
|
||||
|
||||
|
||||
SET(examples_DATA
|
||||
Money95bank_fr.qif
|
||||
Money95invst_fr.qif
|
||||
Money95mfunds_fr.qif
|
||||
Money95stocks_fr.qif
|
||||
README
|
||||
README_invoice
|
||||
abc-all.qif
|
||||
abc.qif
|
||||
bogus.qif
|
||||
cbb-export.qif
|
||||
currency_tree_xml.gnucash
|
||||
every.qif
|
||||
invoice.csv
|
||||
ms-money.qif
|
||||
quicktest.qif
|
||||
swipe.qif
|
||||
taxreport.gnucash
|
||||
web.qif
|
||||
)
|
||||
|
||||
INSTALL(FILES ${examples_DATA} DESTINATION share/doc/gnucash)
|
48
po/CMakeLists.txt
Normal file
48
po/CMakeLists.txt
Normal file
@ -0,0 +1,48 @@
|
||||
|
||||
|
||||
# Set of available languages.
|
||||
SET (TP_LINGUAS az ca cs da eu fa ja nl pt rw sk sr sv tr uk zh_CN)
|
||||
# already marked as external at TP:
|
||||
SET (GC_LINGUAS ar bg de el en_GB es fi fr gu he hi hu it kn ko lt lv mr nb ne pl pt_BR ro ru ta te ur vi zh_TW)
|
||||
# not marked or no TP team:
|
||||
SET (NEW_LINGUAS as brx doi es_NI kok kok@latin ks mai mni mni@bengali)
|
||||
|
||||
SET (ALL_LINGUAS ${TP_LINGUAS} ${GC_LINGUAS} ${NEW_LINGUAS})
|
||||
|
||||
SET (CATALOGS "")
|
||||
SET (BUILD_CATALOGS "")
|
||||
FOREACH(lingua ${ALL_LINGUAS})
|
||||
SET(_OUTPUT_FILE ${lingua}.gmo)
|
||||
LIST(APPEND CATALOGS ${_OUTPUT_FILE})
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_OUTPUT_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E env ${MSGFMT} -o ${_OUTPUT_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${lingua}.po
|
||||
)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(_BUILD_FILE_DIR ${DATADIR_BUILD}/locale/${lingua}/LC_MESSAGES)
|
||||
MAKE_DIRECTORY(${_BUILD_FILE_DIR})
|
||||
SET(_BUILD_FILE ${_BUILD_FILE_DIR}/gnucash.gmo)
|
||||
LIST(APPEND BUILD_CATALOGS ${_BUILD_FILE})
|
||||
#ADD_CUSTOM_COMMAND(
|
||||
# OUTPUT ${_BUILD_FILE}
|
||||
# COMMAND ${CMAKE_COMMAND} make_directory ${_BUILD_FILE_DIR}
|
||||
#
|
||||
#)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_BUILD_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/${lingua}.gmo ${_BUILD_FILE}
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_OUTPUT_FILE}
|
||||
#APPEND
|
||||
)
|
||||
ENDIF()
|
||||
ENDFOREACH(lingua)
|
||||
|
||||
ADD_CUSTOM_TARGET(po-gmo ALL DEPENDS ${CATALOGS})
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
ADD_CUSTOM_TARGET(po-gmo-build ALL DEPENDS ${BUILD_CATALOGS})
|
||||
ENDIF()
|
||||
|
||||
|
||||
FOREACH(lingua ${ALL_LINGUAS})
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${lingua}.gmo RENAME gnucash.mo DESTINATION share/locale/${lingua}/LC_MESSAGES)
|
||||
ENDFOREACH(lingua)
|
@ -6,6 +6,8 @@
|
||||
|
||||
SET (GETTEXT_PACKAGE "gnucash")
|
||||
|
||||
SET(GNOME 1)
|
||||
|
||||
IF (WIN32)
|
||||
SET (HAVE_SCANF_I64D 1)
|
||||
SET (HAVE_HTMLHELPW 1)
|
||||
@ -36,6 +38,20 @@ CHECK_INCLUDE_FILES (unistd.h HAVE_UNISTD_H)
|
||||
CHECK_INCLUDE_FILES (utmp.h HAVE_UTMP_H)
|
||||
CHECK_INCLUDE_FILES (wctype.h HAVE_WCTYPE_H)
|
||||
|
||||
IF (NOT DISABLE_NLS)
|
||||
SET(ENABLE_NLS 1)
|
||||
ENDIF(NOT DISABLE_NLS)
|
||||
|
||||
IF (ENABLE_DEBUG)
|
||||
SET(DEBUG_MEMORY 1)
|
||||
ENDIF(ENABLE_DEBUG)
|
||||
|
||||
IF (ENABLE_BINRELOC)
|
||||
IF (UNIX OR MINGW)
|
||||
SET(BR_PTHREAD 1)
|
||||
ENDIF(UNIX OR MINGW)
|
||||
ENDIF(ENABLE_BINRELOC)
|
||||
|
||||
IF (UNIX OR MINGW)
|
||||
SET (HAVE_BIND_TEXTDOMAIN_CODESET 1)
|
||||
SET (HAVE_DCGETTEXT 1)
|
||||
@ -50,12 +66,12 @@ IF (UNIX OR MINGW)
|
||||
SET (_POSIX_PTHREAD_SEMANTICS 1)
|
||||
SET (_TANDEM_SOURCE 1)
|
||||
SET (__EXTENSIONS__ 1)
|
||||
SET (WORDS_BIGENDIAN 1)
|
||||
ENDIF (UNIX OR MINGW)
|
||||
|
||||
IF (UNIX)
|
||||
SET (HAVE_CHOWN 1)
|
||||
SET (HAVE_DLERROR 1)
|
||||
SET (HAVE_DLSYM 1)
|
||||
SET (HAVE_GETHOSTID 1)
|
||||
SET (HAVE_GETHOSTNAME 1)
|
||||
SET (HAVE_GETPPID 1)
|
||||
@ -67,14 +83,59 @@ IF (UNIX)
|
||||
SET (HAVE_LINK 1)
|
||||
SET (HAVE_LOCALTIME_R 1)
|
||||
SET (HAVE_PTHREAD_MUTEX_INIT 1)
|
||||
SET (HAVE_PTHREAD_PRIO_INHERIT 1)
|
||||
SET (HAVE_SCANF_LLD 1)
|
||||
SET (HAVE_SETENV 1)
|
||||
SET (HAVE_STPCPY 1)
|
||||
SET (HAVE_STRFMON 1)
|
||||
SET (HAVE_STRPTIME 1)
|
||||
SET (HAVE_STRUCT_TM_GMTOFF 1)
|
||||
SET (HAVE_TIMEGM 1)
|
||||
SET (HAVE_TOWUPPER 1)
|
||||
SET (GNC_PLATFORM_POSIX 1)
|
||||
ENDIF (UNIX)
|
||||
|
||||
IF (WIN32)
|
||||
SET (GNC_PLATFORM_WINDOWS 1)
|
||||
ENDIF (WIN32)
|
||||
|
||||
IF (APPLE)
|
||||
# FIXME: HANDLE gtk-mac-integration-gtk2
|
||||
SET(GNC_PLATFORM_DARWIN 1)
|
||||
SET(GNC_PLATFORM_OSX 1)
|
||||
SET(HAVE_OSX_KEYCHAIN 1)
|
||||
|
||||
ENDIF(APPLE)
|
||||
|
||||
IF(GLIB2_VERSION VERSION_GREATER 2.32.0 OR GLIB2_VERSION VERSION_EQUAL 2.32.0)
|
||||
SET(HAVE_GLIB_2_32 1)
|
||||
ENDIF()
|
||||
|
||||
IF(GLIB2_VERSION VERSION_GREATER 2.36.0 OR GLIB2_VERSION VERSION_EQUAL 2.36.0)
|
||||
SET(HAVE_GLIB_2_36 1)
|
||||
ENDIF()
|
||||
|
||||
IF(GLIB2_VERSION VERSION_GREATER 2.38.0 OR GLIB2_VERSION VERSION_EQUAL 2.38.0)
|
||||
SET(HAVE_GLIB_2_38 1)
|
||||
ENDIF()
|
||||
|
||||
SET(HAVE_WEBKIT_WEB_FRAME_PRINT_FULL 1)
|
||||
SET(HAVE_WEBKIT_WEB_VIEW_LOAD_URI 1)
|
||||
|
||||
IF(DISABLE_DEPRECATED_GNOME)
|
||||
SET(GNOME_DISABLE_DEPRECATED 1)
|
||||
ENDIF(DISABLE_DEPRECATED_GNOME)
|
||||
|
||||
IF(DISABLE_DEPRECATED_GTK)
|
||||
SET(GTK_DISABLE_DEPRECATED 1)
|
||||
SET(GDK_DISABLE_DEPRECATED 1)
|
||||
SET(GDK_PIXMAP_DISABLE_DEPRECATED 1)
|
||||
ENDIF(DISABLE_DEPRECATED_GTK)
|
||||
|
||||
IF(DISABLE_DEPRECATED_GLIB)
|
||||
SET(G_DISABLE_DEPRECATED 1)
|
||||
ENDIF(DISABLE_DEPRECATED_GLIB)
|
||||
|
||||
ADD_DEFINITIONS (-DHAVE_CONFIG_H)
|
||||
|
||||
SET (CONFIG_H ${CMAKE_CURRENT_BINARY_DIR}/config.h)
|
||||
@ -82,8 +143,16 @@ CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake.in ${CONFIG_H})
|
||||
|
||||
SET (SWIG_RUNTIME_H ${CMAKE_CURRENT_BINARY_DIR}/swig-runtime.h)
|
||||
|
||||
#ADD_CUSTOM_COMMAND (
|
||||
# OUTPUT ${SWIG_RUNTIME_H}
|
||||
# DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
|
||||
# COMMAND ${SWIG_EXECUTABLE} -guile -external-runtime ${SWIG_RUNTIME_H}
|
||||
#)
|
||||
# ############################################################
|
||||
|
||||
SET(SCHEME_INSTALLED_SOURCE_DIR ${CMAKE_INSTALL_PREFIX}/share/gnucash/scm)
|
||||
SET(SCHEME_INSTALLED_CACHE_DIR ${CMAKE_INSTALL_PREFIX}/lib/gnucash/scm/ccache/${GUILE_EFFECTIVE_VERSION})
|
||||
|
||||
# The subdirectories
|
||||
ADD_SUBDIRECTORY (libqof)
|
||||
ADD_SUBDIRECTORY (core-utils)
|
||||
@ -96,7 +165,30 @@ IF (WITH_SQL)
|
||||
ADD_SUBDIRECTORY (backend/dbi)
|
||||
ADD_SUBDIRECTORY (backend/sql)
|
||||
ENDIF (WITH_SQL)
|
||||
ADD_SUBDIRECTORY (optional/gtkmm)
|
||||
|
||||
ADD_SUBDIRECTORY (gnc)
|
||||
IF (WITH_GNUCASH)
|
||||
ADD_SUBDIRECTORY (bin)
|
||||
ADD_SUBDIRECTORY (business/business-ledger)
|
||||
ADD_SUBDIRECTORY (business/business-gnome)
|
||||
ADD_SUBDIRECTORY (gnome)
|
||||
ADD_SUBDIRECTORY (gnome-utils)
|
||||
ADD_SUBDIRECTORY (gnome-search)
|
||||
ADD_SUBDIRECTORY (html)
|
||||
ADD_SUBDIRECTORY (plugins/bi_import)
|
||||
ADD_SUBDIRECTORY (plugins/customer_import)
|
||||
ADD_SUBDIRECTORY (pixmaps)
|
||||
ADD_SUBDIRECTORY (quotes)
|
||||
ADD_SUBDIRECTORY (register/ledger-core)
|
||||
ADD_SUBDIRECTORY (register/register-core)
|
||||
ADD_SUBDIRECTORY (register/register-gnome)
|
||||
ADD_SUBDIRECTORY(report)
|
||||
ADD_SUBDIRECTORY (scm)
|
||||
ADD_SUBDIRECTORY (tax/us)
|
||||
ADD_SUBDIRECTORY (test-core)
|
||||
ENDIF (WITH_GNUCASH)
|
||||
|
||||
IF (WITH_CUTECASH)
|
||||
ADD_SUBDIRECTORY (optional/gtkmm)
|
||||
ADD_SUBDIRECTORY (gnc)
|
||||
ENDIF (WITH_CUTECASH)
|
||||
|
||||
|
@ -1,26 +1,17 @@
|
||||
# CMakeLists.txt for src/engine
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.app-utils\")
|
||||
# Build the library
|
||||
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GCONF2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${HTMLHELP_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for pow.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof) # for qof.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module) # for gnc-glib-utils.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils) # for gnc-glib-utils.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/app-utils/calculation) # for finproto.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine) # for gnc-engine.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src/engine) # for swig-runtime.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_SOURCE_DIR}) # for <option-util.h>
|
||||
SET (app_utils_noinst_HEADERS
|
||||
calculation/finvar.h
|
||||
calculation/finproto.h
|
||||
calculation/fin_spl_protos.h
|
||||
calculation/fin_static_proto.h
|
||||
)
|
||||
|
||||
SET (app_utils_HEADERS
|
||||
QuickFill.h
|
||||
business-helpers.h
|
||||
business-options.h
|
||||
file-utils.h
|
||||
gfec.h
|
||||
gnc-basic-gobject.h
|
||||
@ -32,17 +23,17 @@ SET (app_utils_HEADERS
|
||||
gnc-euro.h
|
||||
gnc-exp-parser.h
|
||||
gnc-gettext-util.h
|
||||
gnc-gsettings.h
|
||||
gnc-help-utils.h
|
||||
gnc-helpers.h
|
||||
gnc-prefs-utils.h
|
||||
gnc-state.h
|
||||
gnc-sx-instance-model.h
|
||||
gnc-ui-util.h
|
||||
gnc-ui-balances.h
|
||||
guile-util.h
|
||||
option-util.h
|
||||
calculation/finvar.h
|
||||
calculation/finproto.h
|
||||
calculation/fin_spl_protos.h
|
||||
calculation/fin_static_proto.h
|
||||
|
||||
)
|
||||
|
||||
# Command to generate the swig-app-utils.c wrapper file
|
||||
@ -52,6 +43,8 @@ GNC_ADD_SWIG_COMMAND (${SWIG_APP_UTILS_C} ${CMAKE_CURRENT_SOURCE_DIR}/app-utils.
|
||||
SET (app_utils_SOURCES
|
||||
calculation/expression_parser.c
|
||||
calculation/fin.c
|
||||
business-helpers.c
|
||||
business-options.c
|
||||
QuickFill.c
|
||||
file-utils.c
|
||||
gfec.c
|
||||
@ -63,8 +56,11 @@ SET (app_utils_SOURCES
|
||||
gnc-euro.c
|
||||
gnc-exp-parser.c
|
||||
gnc-gettext-util.c
|
||||
gnc-gsettings.c
|
||||
gnc-helpers.c
|
||||
gnc-prefs-utils.c
|
||||
gnc-sx-instance-model.c
|
||||
gnc-state.c
|
||||
gnc-ui-util.c
|
||||
gnc-ui-balances.c
|
||||
gncmod-app-utils.c
|
||||
@ -77,7 +73,121 @@ IF (WIN32)
|
||||
SET (app_utils_SOURCES ${app_utils_SOURCES} gnc-help-utils.c)
|
||||
ENDIF (WIN32)
|
||||
|
||||
ADD_LIBRARY (app-utils
|
||||
SET_SOURCE_FILES_PROPERTIES (${app_utils_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gncmod-app-utils
|
||||
${app_utils_SOURCES}
|
||||
${app_utils_HEADERS}
|
||||
)
|
||||
${app_utils_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-app-utils gncmod-engine gnc-module
|
||||
${GTK2_LDFLAGS} ${LIBXML2_LDFLAGS} ${LIBXSLT_LDFLAGS}
|
||||
)
|
||||
|
||||
IF (WIN32)
|
||||
TARGET_LINK_LIBRARIES(gncmod-app-utils ${HTMLHELP_LIBRARY})
|
||||
ENDIF(WIN32)
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gncmod-app-utils
|
||||
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/calculation
|
||||
${LIBXML2_INCLUDE_DIRS}
|
||||
${LIBXSLT_INCLUDE_DIRS}
|
||||
${HTMLHELP_INCLUDE_PATH}
|
||||
${GTK2_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gncmod-app-utils PRIVATE -DG_LOG_DOMAIN=\"gnc.app-utils\")
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-app-utils
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin
|
||||
)
|
||||
INSTALL(FILES ${app_utils_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
FILE(READ ${CMAKE_SOURCE_DIR}/src/import-export/ofx/migratable-prefs-ofx.xml MIGRATABLE_PREFS_OFX)
|
||||
FILE(READ ${CMAKE_SOURCE_DIR}/src/import-export/aqb/migratable-prefs-aqbanking.xml MIGRATABLE_PREFS_AQBANKING)
|
||||
|
||||
SET(MIGRATABLE_PREFS_XML ${CMAKE_CURRENT_BINARY_DIR}/migratable-prefs.xml)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(MIGRATABLE_PREFS_XML ${DATADIR_BUILD}/gnucash/migratable-prefs.xml)
|
||||
FILE(COPY make-prefs-migration-script.xsl DESTINATION ${DATADIR_BUILD}/gnucash)
|
||||
ENDIF()
|
||||
|
||||
CONFIGURE_FILE(migratable-prefs.xml.in ${MIGRATABLE_PREFS_XML})
|
||||
|
||||
INSTALL(FILES ${MIGRATABLE_PREFS_XML} DESTINATION share/gnucash)
|
||||
INSTALL(FILES make-prefs-migration-script.xsl DESTINATION share/gnucash)
|
||||
|
||||
# And now handle scheme files
|
||||
|
||||
SET (app_utils_SCHEME_2
|
||||
app-utils.scm
|
||||
)
|
||||
|
||||
SET (app_utils_SCHEME_1
|
||||
hooks.scm
|
||||
business-options.scm
|
||||
c-interface.scm
|
||||
config-var.scm
|
||||
date-utilities.scm
|
||||
migrate-prefs.scm
|
||||
options.scm
|
||||
prefs.scm
|
||||
simple-obj.scm
|
||||
)
|
||||
|
||||
SET(app_utils_SCHEME_3
|
||||
business-prefs.scm
|
||||
)
|
||||
|
||||
SET(GUILE_MODULES src/engine)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/libqof/qof)
|
||||
SET(GUILE_DEPENDS gncmod-app-utils scm-core-utils scm-engine scm-scm)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-gettext
|
||||
gettext.scm
|
||||
gnucash
|
||||
src/app-utils
|
||||
""
|
||||
""
|
||||
gncmod-app-utils
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-app-utils-1
|
||||
"${app_utils_SCHEME_1}"
|
||||
""
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"scm-gettext;${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-app-utils-2
|
||||
"${app_utils_SCHEME_2}"
|
||||
"gnucash"
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
scm-app-utils-1
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-app-utils-3
|
||||
"${app_utils_SCHEME_3}"
|
||||
""
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
scm-app-utils-2
|
||||
FALSE
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(scm-app-utils ALL DEPENDS scm-app-utils-3 scm-app-utils-2 scm-app-utils-1 scm-gettext)
|
@ -1,32 +1,47 @@
|
||||
# CMakeLists.txt for src/backend/dbi
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.backend.dbi\")
|
||||
# Source file gncmod-backend-dbi.c does not appear to be use in Makefile.in, so not included here.
|
||||
|
||||
INCLUDE_DIRECTORIES (${GCONF2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${LIBDBI_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/app-utils)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/backend/sql)
|
||||
|
||||
SET (libgnc_backend_dbi_SOURCES
|
||||
gnc-backend-dbi.c
|
||||
SET (backend_dbi_SOURCES
|
||||
gnc-backend-dbi.cpp
|
||||
)
|
||||
SET (libgnc_backend_dbi_HEADERS
|
||||
gnc-backend-dbi.h
|
||||
SET (backend_dbi_noinst_HEADERS
|
||||
gnc-backend-dbi.h gnc-backend-dbi-priv.h
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_backend_dbi_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (${backend_dbi_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gnc-backend-dbi
|
||||
${libgnc_backend_dbi_SOURCES}
|
||||
${libgnc_backend_dbi_HEADERS}
|
||||
ADD_LIBRARY (gncmod-backend-dbi
|
||||
${backend_dbi_SOURCES}
|
||||
${backend_dbi_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-backend-dbi gnc-backend-sql gncmod-engine gnc-qof ${GTK2_LDFLAGS} ${LIBDBI_LIBRARY})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-backend-dbi PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.dbi\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-backend-dbi PRIVATE ${LIBDBI_INCLUDE_PATH})
|
||||
|
||||
INSTALL(TARGETS gncmod-backend-dbi
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
||||
|
||||
# FIXME: Below is a hack to create .libs/libgncmod-backend-dbi to silence some complaints
|
||||
# from guile when compiling. Eventually, fix the guile module loader to not expect items
|
||||
# to be in .libs. At this time, WIN32 does not use guile-2, so no need for this.
|
||||
|
||||
IF (NOT WIN32)
|
||||
SET(_LINK_TARGET ${CMAKE_CURRENT_BINARY_DIR}/.libs/libgncmod-backend-dbi${CMAKE_SHARED_LIBRARY_SUFFIX})
|
||||
FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/.libs)
|
||||
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_LINK_TARGET}
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink $<TARGET_FILE:gncmod-backend-dbi> ${_LINK_TARGET}
|
||||
DEPENDS gnc-backend-dbi
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(gncmod-backend-dbi-link ALL DEPENDS gncmod-backend-dbi ${_LINK_TARGET})
|
||||
ENDIF()
|
||||
|
@ -1,46 +1,33 @@
|
||||
# CMakeLists.txt for src/backend/dbi
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.backend.sql\")
|
||||
|
||||
INCLUDE_DIRECTORIES (${GCONF2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine)
|
||||
|
||||
SET (libgnc_backend_sql_SOURCES
|
||||
gnc-backend-sql.c
|
||||
gnc-account-sql.c
|
||||
gnc-address-sql.c
|
||||
gnc-bill-term-sql.c
|
||||
gnc-book-sql.c
|
||||
gnc-budget-sql.c
|
||||
gnc-commodity-sql.c
|
||||
gnc-customer-sql.c
|
||||
gnc-employee-sql.c
|
||||
gnc-entry-sql.c
|
||||
gnc-invoice-sql.c
|
||||
gnc-job-sql.c
|
||||
gnc-lots-sql.c
|
||||
gnc-order-sql.c
|
||||
gnc-owner-sql.c
|
||||
gnc-price-sql.c
|
||||
gnc-recurrence-sql.c
|
||||
gnc-schedxaction-sql.c
|
||||
gnc-slots-sql.c
|
||||
gnc-tax-table-sql.c
|
||||
gnc-transaction-sql.c
|
||||
gnc-vendor-sql.c
|
||||
escape.c
|
||||
SET (backend_sql_SOURCES
|
||||
gnc-backend-sql.cpp
|
||||
gnc-account-sql.cpp
|
||||
gnc-address-sql.cpp
|
||||
gnc-bill-term-sql.cpp
|
||||
gnc-book-sql.cpp
|
||||
gnc-budget-sql.cpp
|
||||
gnc-commodity-sql.cpp
|
||||
gnc-customer-sql.cpp
|
||||
gnc-employee-sql.cpp
|
||||
gnc-entry-sql.cpp
|
||||
gnc-invoice-sql.cpp
|
||||
gnc-job-sql.cpp
|
||||
gnc-lots-sql.cpp
|
||||
gnc-order-sql.cpp
|
||||
gnc-owner-sql.cpp
|
||||
gnc-price-sql.cpp
|
||||
gnc-recurrence-sql.cpp
|
||||
gnc-schedxaction-sql.cpp
|
||||
gnc-slots-sql.cpp
|
||||
gnc-tax-table-sql.cpp
|
||||
gnc-transaction-sql.cpp
|
||||
gnc-vendor-sql.cpp
|
||||
escape.cpp
|
||||
)
|
||||
SET (libgnc_backend_sql_HEADERS
|
||||
SET (backend_sql_noinst_HEADERS
|
||||
gnc-account-sql.h
|
||||
gnc-address-sql.h
|
||||
gnc-backend-sql.h
|
||||
@ -67,9 +54,22 @@ SET (libgnc_backend_sql_HEADERS
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_backend_sql_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (${gnc_backend_sql_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gnc-backend-sql
|
||||
${libgnc_backend_sql_SOURCES}
|
||||
${libgnc_backend_sql_HEADERS}
|
||||
)
|
||||
${backend_sql_SOURCES}
|
||||
${backend_sql_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gnc-backend-sql gncmod-engine gnc-qof)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gnc-backend-sql PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.sql\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gnc-backend-sql PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
INSTALL(TARGETS gnc-backend-sql
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
# No headers to install
|
||||
|
@ -1,66 +1,136 @@
|
||||
# CMakeLists.txt for src/backend/xml
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.backend.xml\")
|
||||
|
||||
INCLUDE_DIRECTORIES (${GCONF2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${LIBXML2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_SOURCE_DIR}) # when building swig-gnc-module.c
|
||||
|
||||
# Command to generate the swig-engine.c wrapper file
|
||||
SET (SWIG_GNC_MODULE_C ${CMAKE_CURRENT_BINARY_DIR}/swig-gnc-module.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_GNC_MODULE_C} ${CMAKE_CURRENT_SOURCE_DIR}/gnc-module.i)
|
||||
|
||||
SET (libgnc_backend_xml_SOURCES
|
||||
gnc-account-xml-v2.c
|
||||
gnc-address-xml-v2.c
|
||||
gnc-bill-term-xml-v2.c
|
||||
gnc-book-xml-v2.c
|
||||
gnc-budget-xml-v2.c
|
||||
gnc-commodity-xml-v2.c
|
||||
gnc-customer-xml-v2.c
|
||||
gnc-employee-xml-v2.c
|
||||
gnc-entry-xml-v2.c
|
||||
gnc-freqspec-xml-v2.c
|
||||
gnc-invoice-xml-v2.c
|
||||
gnc-job-xml-v2.c
|
||||
gnc-lot-xml-v2.c
|
||||
gnc-order-xml-v2.c
|
||||
gnc-owner-xml-v2.c
|
||||
gnc-pricedb-xml-v2.c
|
||||
gnc-recurrence-xml-v2.c
|
||||
gnc-schedxaction-xml-v2.c
|
||||
gnc-tax-table-xml-v2.c
|
||||
gnc-transaction-xml-v2.c
|
||||
gnc-vendor-xml-v2.c
|
||||
gnc-xml-helper.c
|
||||
io-example-account.c
|
||||
io-gncxml-gen.c
|
||||
io-gncxml-v1.c
|
||||
io-gncxml-v2.c
|
||||
io-utils.c
|
||||
sixtp-dom-generators.c
|
||||
sixtp-dom-parsers.c
|
||||
sixtp-stack.c
|
||||
sixtp-to-dom-parser.c
|
||||
sixtp-utils.c
|
||||
sixtp.c
|
||||
gnc-backend-xml.c
|
||||
SET (backend_xml_utils_noinst_HEADERS
|
||||
gnc-backend-xml.h
|
||||
gnc-xml.h
|
||||
gnc-address-xml-v2.h
|
||||
gnc-bill-term-xml-v2.h
|
||||
gnc-customer-xml-v2.h
|
||||
gnc-employee-xml-v2.h
|
||||
gnc-entry-xml-v2.h
|
||||
gnc-invoice-xml-v2.h
|
||||
gnc-job-xml-v2.h
|
||||
gnc-order-xml-v2.h
|
||||
gnc-owner-xml-v2.h
|
||||
gnc-tax-table-xml-v2.h
|
||||
gnc-vendor-xml-v2.h
|
||||
gnc-xml-helper.h
|
||||
io-example-account.h
|
||||
io-gncxml-gen.h
|
||||
io-gncxml-v2.h
|
||||
io-gncxml.h
|
||||
io-utils.h
|
||||
sixtp-dom-generators.h
|
||||
sixtp-dom-parsers.h
|
||||
sixtp-parsers.h
|
||||
sixtp-stack.h
|
||||
sixtp-utils.h
|
||||
sixtp.h
|
||||
xml-helpers.h
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_backend_xml_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET (backend_xml_utils_SOURCES
|
||||
gnc-account-xml-v2.cpp
|
||||
gnc-address-xml-v2.cpp
|
||||
gnc-bill-term-xml-v2.cpp
|
||||
gnc-book-xml-v2.cpp
|
||||
gnc-budget-xml-v2.cpp
|
||||
gnc-commodity-xml-v2.cpp
|
||||
gnc-customer-xml-v2.cpp
|
||||
gnc-employee-xml-v2.cpp
|
||||
gnc-entry-xml-v2.cpp
|
||||
gnc-freqspec-xml-v2.cpp
|
||||
gnc-invoice-xml-v2.cpp
|
||||
gnc-job-xml-v2.cpp
|
||||
gnc-lot-xml-v2.cpp
|
||||
gnc-order-xml-v2.cpp
|
||||
gnc-owner-xml-v2.cpp
|
||||
gnc-pricedb-xml-v2.cpp
|
||||
gnc-recurrence-xml-v2.cpp
|
||||
gnc-schedxaction-xml-v2.cpp
|
||||
gnc-tax-table-xml-v2.cpp
|
||||
gnc-transaction-xml-v2.cpp
|
||||
gnc-vendor-xml-v2.cpp
|
||||
gnc-xml-helper.cpp
|
||||
io-example-account.cpp
|
||||
io-gncxml-gen.cpp
|
||||
io-gncxml-v1.cpp
|
||||
io-gncxml-v2.cpp
|
||||
io-utils.cpp
|
||||
sixtp-dom-generators.cpp
|
||||
sixtp-dom-parsers.cpp
|
||||
sixtp-stack.cpp
|
||||
sixtp-to-dom-parser.cpp
|
||||
sixtp-utils.cpp
|
||||
sixtp.cpp
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gnc-backend-xml
|
||||
${libgnc_backend_xml_SOURCES}
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${backend_xml_utils_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gnc-backend-xml-utils
|
||||
${backend_xml_utils_SOURCES}
|
||||
${backend_xml_utils_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gnc-backend-xml-utils gncmod-engine ${LIBXML2_LDFLAGS} ${ZLIB_LDFLAGS})
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gnc-backend-xml-utils
|
||||
PUBLIC ${LIBXML2_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
PRIVATE ${ZLIB_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gnc-backend-xml-utils PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.xml\")
|
||||
|
||||
INSTALL(TARGETS gnc-backend-xml-utils
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
||||
|
||||
# ----
|
||||
|
||||
SET(libgncmod_backend_xml_SOURCES gnc-backend-xml.cpp)
|
||||
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgncmod_backend_xml_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY(gncmod-backend-xml MODULE ${libgncmod_backend_xml_SOURCES})
|
||||
TARGET_LINK_LIBRARIES(gncmod-backend-xml gnc-backend-xml-utils gncmod-engine
|
||||
gnc-core-utils ${LIBXML2_LDFLAGS} ${GLIB2_LDFLAGS} ${ZLIB_LIBRARY})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gncmod-backend-xml PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.xml\")
|
||||
|
||||
SET(LIB_DIR lib/gnucash)
|
||||
IF (WIN32)
|
||||
SET(LIB_DIR bin)
|
||||
ENDIF(WIN32)
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-backend-xml
|
||||
LIBRARY DESTINATION ${LIB_DIR}
|
||||
ARCHIVE DESTINATION ${LIB_DIR}
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
# ----
|
||||
|
||||
# FIXME: Below is a hack to create .libs/libgncmod-backend-xml to silence some complaints
|
||||
# from guile when compiling. Eventually, fix the guile module loader to not expect items
|
||||
# to be in .libs. At this time, WIN32 does not use guile-2, so no need for this.
|
||||
|
||||
IF (NOT WIN32)
|
||||
SET(_LINK_TARGET ${CMAKE_CURRENT_BINARY_DIR}/.libs/libgncmod-backend-xml${CMAKE_SHARED_MODULE_SUFFIX})
|
||||
FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/.libs)
|
||||
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_LINK_TARGET}
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink $<TARGET_FILE:gncmod-backend-xml> ${_LINK_TARGET}
|
||||
DEPENDS gnc-backend-xml-utils
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(gncmod-backend-xml-link ALL DEPENDS gncmod-backend-xml ${_LINK_TARGET})
|
||||
ENDIF()
|
||||
|
187
src/bin/CMakeLists.txt
Normal file
187
src/bin/CMakeLists.txt
Normal file
@ -0,0 +1,187 @@
|
||||
ADD_SUBDIRECTORY(overrides)
|
||||
|
||||
# Some settings are platform dependent. Let's define them per platform.
|
||||
IF (WIN32)
|
||||
# Windows specific settings go here:
|
||||
SET (GNUCASH_RESOURCE_FILE gnucash.rc)
|
||||
|
||||
ELSE (WIN32)
|
||||
# All other platforms use these settings:
|
||||
SET (PLATFORM_FILES gnucash-valgrind)
|
||||
|
||||
ENDIF (WIN32)
|
||||
|
||||
SET (gnucash_SOURCES
|
||||
gnucash-bin.c
|
||||
${GNUCASH_RESOURCE_FILE}
|
||||
)
|
||||
|
||||
ADD_EXECUTABLE (gnucash
|
||||
${gnucash_SOURCES}
|
||||
)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gnucash PRIVATE -DG_LOG_DOMAIN=\"gnc.bin\")
|
||||
|
||||
TARGET_LINK_LIBRARIES (gnucash
|
||||
gncmod-ledger-core gncmod-report-gnome gnc-gnome gncmod-gnome-utils gncmod-app-utils
|
||||
gncmod-engine gnc-module gnc-core-utils gnc-qof gncmod-report-system
|
||||
${GUILE_LDFLAGS} ${GLIB2_LDFLAGS} ${GTK2_LDFLAGS} ${GTK_MAC_LDFLAGS}
|
||||
)
|
||||
|
||||
|
||||
IF (MAC_INTEGRATION)
|
||||
TARGET_COMPILE_OPTIONS(gnucash PRIVATE ${OSX_EXTRA_COMPILE_FLAGS})
|
||||
TARGET_LINK_LIBRARIES(gnucash ${OSX_EXTRA_LIBRARIES})
|
||||
ENDIF(MAC_INTEGRATION)
|
||||
|
||||
INSTALL(TARGETS gnucash DESTINATION bin)
|
||||
# No headers to install.
|
||||
|
||||
# Generate the gnucash-env script
|
||||
SET(SCRIPT_LIST "")
|
||||
SET(SCRIPT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(SCRIPT_OUTPUT_DIR ${BINDIR_BUILD})
|
||||
ENDIF()
|
||||
|
||||
FOREACH (script gnucash-env gnucash-make-guids)
|
||||
SET (GNUCASH_ENV_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${script})
|
||||
LIST(APPEND SCRIPT_LIST ${SCRIPT_OUTPUT_DIR}/${script})
|
||||
SET (GNC_OVERRIDES_DIR ${CMAKE_INSTALL_PREFIX}/libexec/gnucash/overrides)
|
||||
FILE(WRITE ${GNUCASH_ENV_SCRIPT} "#!/bin/sh\n")
|
||||
FILE(APPEND ${GNUCASH_ENV_SCRIPT} "PATH=\"${GNC_OVERRIDES_DIR}:\${PATH}\"\n")
|
||||
FILE(APPEND ${GNUCASH_ENV_SCRIPT} "export PATH\n")
|
||||
FILE(APPEND ${GNUCASH_ENV_SCRIPT} "\nGUILE_WARN_DEPRECATED=\"no\"\n")
|
||||
FILE(APPEND ${GNUCASH_ENV_SCRIPT} "export GUILE_WARN_DEPRECATED\n")
|
||||
FILE(APPEND ${GNUCASH_ENV_SCRIPT} "\nexec \"${script}\" \"\$@\"\n")
|
||||
FILE(COPY ${GNUCASH_ENV_SCRIPT}
|
||||
DESTINATION ${SCRIPT_OUTPUT_DIR}
|
||||
FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
ENDFOREACH(script)
|
||||
|
||||
SET(TOP_SRC_DIR ${CMAKE_SOURCE_DIR})
|
||||
SET(GNUCASH_BIN_INSTALL_NAME "gnucash")
|
||||
|
||||
SET(VALGRIND_OUTDIR ${CMAKE_CURRENT_BINARY_DIR})
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(VALGRIND_OUTDIR ${BINDIR_BUILD})
|
||||
ENDIF()
|
||||
|
||||
GNC_CONFIGURE(gnucash-valgrind.in ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gnucash-valgrind)
|
||||
|
||||
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gnucash-valgrind
|
||||
DESTINATION ${VALGRIND_OUTDIR}
|
||||
FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
|
||||
## Create the environment file
|
||||
|
||||
FILE(STRINGS ${CMAKE_CURRENT_SOURCE_DIR}/environment.in ENV_STRINGS_IN)
|
||||
|
||||
SET(ENV_STRINGS_LIST "")
|
||||
|
||||
FOREACH(line ${ENV_STRINGS_IN})
|
||||
STRING(REGEX REPLACE "@-|-@" "@" line2 "${line}")
|
||||
STRING(REPLACE ";" "\;" line3 "${line2}")
|
||||
IF(NOT "${line3}" MATCHES "@NOTE")
|
||||
LIST(APPEND ENV_STRINGS_LIST "${line3}\n")
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
|
||||
STRING(CONCAT ENV_STRINGS ${ENV_STRINGS_LIST})
|
||||
STRING(CONFIGURE "${ENV_STRINGS}" ENV_STRINGS_CONF @ONLY)
|
||||
|
||||
SET(ENV_FILE_OUT ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/environment)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(BUILD_ENV_FILE_OUT ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/environment.build)
|
||||
ENDIF()
|
||||
|
||||
FILE(WRITE ${ENV_FILE_OUT} "${ENV_STRINGS_CONF}")
|
||||
FILE(WRITE ${BUILD_ENV_FILE_OUT} "${ENV_STRINGS_CONF}")
|
||||
|
||||
SET(XDG_TEXT "
|
||||
# GnuCash was not installed in the default location.
|
||||
# XDG_DATA_DIRS will be set so that our documentation
|
||||
# and gsettings schema are found.\n"
|
||||
)
|
||||
|
||||
IF (NOT(${GNC_DBD_DIR} STREQUAL "${CMAKE_PREFIX_PATH}/lib/dbd"))
|
||||
FILE(APPEND ${ENV_FILE_OUT} "GNC_DBD_DIR=${GNC_DBD_DIR}")
|
||||
ENDIF()
|
||||
|
||||
IF (NOT(${DATADIR} STREQUAL "/usr/share") AND NOT(${DATADIR} STREQUAL "/usr/local/share"))
|
||||
FILE(APPEND ${ENV_FILE_OUT} ${XDG_TEXT})
|
||||
FILE(APPEND ${ENV_FILE_OUT} "XDG_DATA_DIRS=${DATADIR};{XDG_DATA_DIRS}" "${GNC_SYSTEM_XDG_DATA_DIRS}\n")
|
||||
ENDIF()
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(APPEND ${BUILD_ENV_FILE_OUT} "GNC_DBD_DIR=${LIBDBI_DRIVERS_DIR}/dbd")
|
||||
|
||||
FILE(APPEND ${BUILD_ENV_FILE_OUT} ${XDG_TEXT})
|
||||
FILE(APPEND ${BUILD_ENV_FILE_OUT} "XDG_DATA_DIRS=${DATADIR_BUILD};{XDG_DATA_DIRS};" "${GNC_SYSTEM_XDG_DATA_DIRS}\n")
|
||||
|
||||
FILE(COPY ${BUILD_ENV_FILE_OUT}
|
||||
DESTINATION ${SYSCONFDIR_BUILD}/gnucash
|
||||
FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
FILE(RENAME
|
||||
${SYSCONFDIR_BUILD}/gnucash/environment.build
|
||||
${SYSCONFDIR_BUILD}/gnucash/environment
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
SET(ENVIRONMENT_FILE_DIR ${CMAKE_CURRENT_BINARY_DIR})
|
||||
FILE(COPY ${ENV_FILE_OUT}
|
||||
DESTINATION ${ENVIRONMENT_FILE_DIR}
|
||||
FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
|
||||
|
||||
|
||||
INSTALL(FILES ${SCRIPT_LIST} ${VALGRIND_OUTDIR}/gnucash-valgrind DESTINATION bin)
|
||||
INSTALL(FILES ${ENVIRONMENT_FILE_DIR}/environment DESTINATION etc/gnucash)
|
||||
|
||||
IF (WIN32)
|
||||
# Write out a command script for windows
|
||||
SET(lib_directories boost enchant libsoup mysql pgsql libxslt)
|
||||
SET(bin_directories mingw gnutls goffice libgsf pcre gnome guile webkit regex aqbanking gwenhywfar libofx opensp
|
||||
libdbi sqlite3 mysql pgsql enchant libsoup libxslt)
|
||||
|
||||
SET(CMD_LINES "")
|
||||
SET(BUILD_CMD_LINES "")
|
||||
FOREACH(dir bin lib lib/gnucash)
|
||||
FILE(TO_NATIVE_PATH ${CMAKE_INSTALL_PREFIX}/${dir} INSTALL_PATH_ITEM)
|
||||
FILE(TO_NATIVE_PATH ${CMAKE_BINARY_DIR}/${dir} BUILD_PATH_ITEM)
|
||||
LIST(APPEND CMD_LINES "set PATH=${INSTALL_PATH_ITEM}\;%PATH%\n")
|
||||
LIST(APPEND BUILD_CMD_LINES "set PATH=${BUILD_PATH_ITEM}\;%PATH%\n")
|
||||
ENDFOREACH(dir)
|
||||
|
||||
FOREACH(dir ${lib_directories})
|
||||
FILE(TO_NATIVE_PATH ${CMAKE_PREFIX_PATH}/${dir}/lib PATH_ITEM)
|
||||
LIST(APPEND CMD_LINES "set PATH=${PATH_ITEM}\;%PATH%\n")
|
||||
ENDFOREACH(dir)
|
||||
|
||||
FOREACH(dir ${bin_directories})
|
||||
FILE(TO_NATIVE_PATH ${CMAKE_PREFIX_PATH}/${dir}/bin PATH_ITEM)
|
||||
LIST(APPEND CMD_LINES "set PATH=${PATH_ITEM}\;%PATH%\n")
|
||||
ENDFOREACH(dir)
|
||||
|
||||
SET(CMD_FILE ${CMAKE_CURRENT_BINARY_DIR}/gnucash-launcher.cmd)
|
||||
FILE(WRITE ${CMD_FILE} "@echo off\nsetlocal\n\n")
|
||||
FOREACH(line ${CMD_LINES})
|
||||
FILE(APPEND ${CMD_FILE} "${line}")
|
||||
ENDFOREACH(line)
|
||||
FILE(APPEND ${CMD_FILE} "\nstart gnucash %*\n")
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(BUILD_CMD_FILE ${CMAKE_BINARY_DIR}/bin/gnucash-launcher.cmd)
|
||||
FILE(WRITE ${BUILD_CMD_FILE} "@echo off\nsetlocal\n\n")
|
||||
FOREACH(line ${CMD_LINES})
|
||||
FILE(APPEND ${BUILD_CMD_FILE} "${line}")
|
||||
ENDFOREACH(line)
|
||||
FILE(APPEND ${BUILD_CMD_FILE} "\nstart gnucash %*\n")
|
||||
ENDIF()
|
||||
|
||||
INSTALL(PROGRAMS ${CMD_FILE} DESTINATION bin)
|
||||
ENDIF(WIN32)
|
33
src/bin/overrides/CMakeLists.txt
Normal file
33
src/bin/overrides/CMakeLists.txt
Normal file
@ -0,0 +1,33 @@
|
||||
|
||||
SET(GNC_PKGLIB_INSTALLDIR ${PKGLIBDIR})
|
||||
SET(GNC_SCM_INSTALLDIR ${SCHEME_INSTALLED_SOURCE_DIR})
|
||||
SET(GNC_LIB_INSTALLDIR ${LIBDIR})
|
||||
SET(GNC_PYTHON_DIR ${GNUCASH_PATH_DIR})
|
||||
SET(GUILE ${GUILE_EXECUTABLE})
|
||||
SET(GNC_SRCDIR ${CMAKE_SOURCE_DIR})
|
||||
SET(GNC_BUILDDIR ${CMAKE_BINARY_DIR})
|
||||
|
||||
CONFIGURE_FILE(gnucash-make-guids.in ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gnucash-make-guids)
|
||||
GNC_CONFIGURE(gnucash-env.in ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gnucash-env)
|
||||
GNC_CONFIGURE(guile.in ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/guile)
|
||||
GNC_CONFIGURE(gnucash-build-env.in ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/gnucash-build-env) # not installed
|
||||
|
||||
SET(SCRIPT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
SET(SCRIPT_OUTPUT_DIR ${LIBDIR_BUILD}exec/gnucash/overrides)
|
||||
ENDIF()
|
||||
|
||||
FOREACH(file gnucash-make-guids gnucash-env guile gnucash-build-env)
|
||||
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${file}
|
||||
DESTINATION ${SCRIPT_OUTPUT_DIR}
|
||||
FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
ENDFOREACH(file)
|
||||
|
||||
INSTALL(
|
||||
PROGRAMS
|
||||
${SCRIPT_OUTPUT_DIR}/gnucash-env
|
||||
${SCRIPT_OUTPUT_DIR}/gnucash-make-guids
|
||||
${SCRIPT_OUTPUT_DIR}/guile
|
||||
DESTINATION libexec/gnucash/overrides
|
||||
)
|
82
src/business/business-gnome/CMakeLists.txt
Normal file
82
src/business/business-gnome/CMakeLists.txt
Normal file
@ -0,0 +1,82 @@
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
ADD_SUBDIRECTORY(gtkbuilder)
|
||||
ADD_SUBDIRECTORY(ui)
|
||||
|
||||
SET(business_gnome_SOURCES
|
||||
business-options-gnome.c
|
||||
business-urls.c
|
||||
business-gnome-utils.c
|
||||
dialog-billterms.c
|
||||
dialog-choose-owner.c
|
||||
dialog-customer.c
|
||||
dialog-date-close.c
|
||||
dialog-employee.c
|
||||
dialog-invoice.c
|
||||
dialog-job.c
|
||||
dialog-order.c
|
||||
dialog-payment.c
|
||||
dialog-vendor.c
|
||||
gnc-plugin-business.c
|
||||
gnc-plugin-page-invoice.c
|
||||
gnc-plugin-page-owner-tree.c
|
||||
gncmod-business-gnome.c
|
||||
search-owner.c
|
||||
)
|
||||
|
||||
SET(business_gnome_noinst_HEADERS
|
||||
business-options-gnome.h
|
||||
business-urls.h
|
||||
business-gnome-utils.h
|
||||
dialog-billterms.h
|
||||
dialog-choose-owner.h
|
||||
dialog-customer.h
|
||||
dialog-date-close.h
|
||||
dialog-employee.h
|
||||
dialog-invoice.h
|
||||
dialog-job.h
|
||||
dialog-order.h
|
||||
dialog-payment.h
|
||||
dialog-vendor.h
|
||||
gnc-plugin-business.h
|
||||
gnc-plugin-page-invoice.h
|
||||
gnc-plugin-page-owner-tree.h
|
||||
search-owner.h
|
||||
)
|
||||
|
||||
SET_SOURCE_FILES_PROPERTIES (${business_gnome_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (business-options-gnome.c PROPERTIES OBJECT_DEPENDS ${SWIG_RUNTIME_H})
|
||||
ADD_LIBRARY(gncmod-business-gnome
|
||||
${business_gnome_SOURCES}
|
||||
${business_gnome_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-business-gnome gnc-business-ledger gncmod-gnome-search
|
||||
gncmod-report-gnome gncmod-gnome-utils gnc-gnome gncmod-engine gnc-qof ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-business-gnome PRIVATE -DG_LOG_DOMAIN=\"gnc.business.gnome\")
|
||||
|
||||
INSTALL(TARGETS gncmod-business-gnome
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
||||
|
||||
# Scheme
|
||||
|
||||
SET(gncmod_business_gnome_SCHEME business-gnome.scm)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash)
|
||||
SET(GUILE_MODULES src/app-utils src/engine src/gnome-utils src/html src/report/report-system src/report/standard-reports)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/engine src/core-utils src/gnc-module src/gnome-utils src/report/business-reports src/report/report-system src/report/standard-reports src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/app-utils src/engine src/core-utils src/gnc-module src/gnome-utils src/report/report-system)
|
||||
SET(GUILE_DEPENDS scm-business-reports)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-business-gnome
|
||||
"${gncmod_business_gnome_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
4
src/business/business-gnome/gschemas/CMakeLists.txt
Normal file
4
src/business/business-gnome/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
SET(business_gnome_GSCHEMA org.gnucash.dialogs.business.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(business-gnome-gschema "${business_gnome_GSCHEMA}")
|
12
src/business/business-gnome/gtkbuilder/CMakeLists.txt
Normal file
12
src/business/business-gnome/gtkbuilder/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
12
src/business/business-gnome/ui/CMakeLists.txt
Normal file
12
src/business/business-gnome/ui/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
35
src/business/business-ledger/CMakeLists.txt
Normal file
35
src/business/business-ledger/CMakeLists.txt
Normal file
@ -0,0 +1,35 @@
|
||||
|
||||
SET (gnc_business_ledger_SOURCES
|
||||
gncEntryLedger.c
|
||||
gncEntryLedgerControl.c
|
||||
gncEntryLedgerDisplay.c
|
||||
gncEntryLedgerLayout.c
|
||||
gncEntryLedgerLoad.c
|
||||
gncEntryLedgerModel.c
|
||||
)
|
||||
|
||||
SET (gnc_business_ledger_noinst_HEADERS
|
||||
gncEntryLedger.h
|
||||
gncEntryLedgerP.h
|
||||
gncEntryLedgerControl.h
|
||||
gncEntryLedgerLayout.h
|
||||
gncEntryLedgerModel.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gnc-business-ledger
|
||||
${gnc_business_ledger_SOURCES}
|
||||
${gnc_business_ledger_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gnc-business-ledger gncmod-ledger-core gncmod-register-core gncmod-engine gncmod-gnome-utils
|
||||
gnc-core-utils ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gnc-business-ledger PRIVATE -DG_LOG_DOMAIN=\"gnc.business.ledger\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gnc-business-ledger PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
INSTALL(TARGETS gnc-business-ledger
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
49
src/cmake_modules/GncAddGSchemaTargets.cmake
Normal file
49
src/cmake_modules/GncAddGSchemaTargets.cmake
Normal file
@ -0,0 +1,49 @@
|
||||
MACRO(ADD_GSCHEMA_TARGETS _TARGET _gschema_INPUTS)
|
||||
SET(_gschema_OUTPUTS "")
|
||||
SET(_gschema_VALIDS "")
|
||||
SET(_gschema_BUILDS "")
|
||||
# FIXME: I have no idea of I'm using the right options here for intltool-merge for Windows.
|
||||
SET(INITTOOL_OPTIONS "--no-translations")
|
||||
IF(WIN32)
|
||||
SET(INITTOOL_OPTIONS "/tmp")
|
||||
ENDIF(WIN32)
|
||||
FOREACH(file ${_gschema_INPUTS})
|
||||
GNC_CONFIGURE2(${file}.in.in ${file}.in)
|
||||
STRING(REPLACE ".xml" ".valid" file_no_xml ${file})
|
||||
SET(_OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/${file})
|
||||
SET(_BUILD_FILE ${DATADIR_BUILD}/glib-2.0/schemas/${file})
|
||||
SET(_VALID_FILE ${CMAKE_CURRENT_BINARY_DIR}/${file_no_xml})
|
||||
LIST(APPEND _gschema_OUTPUTS ${_OUTPUT_FILE})
|
||||
LIST(APPEND _gschema_VALIDS ${_VALID_FILE})
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
LIST(APPEND _gschema_BUILDS ${_BUILD_FILE})
|
||||
ENDIF()
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_OUTPUT_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E env
|
||||
LC_ALL=C
|
||||
${PERL_EXECUTABLE} ${INTLTOOL_MERGE} -x -u ${INITTOOL_OPTIONS} ${CMAKE_CURRENT_BINARY_DIR}/${file}.in ${CMAKE_CURRENT_BINARY_DIR}/${file}
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${file}.in
|
||||
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${file}.in.in
|
||||
)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_BUILD_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${_OUTPUT_FILE} ${_BUILD_FILE}
|
||||
DEPENDS ${_OUTPUT_FILE}
|
||||
)
|
||||
ENDIF()
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_VALID_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E env
|
||||
${GLIB_COMPILE_SCHEMAS} --strict --dry-run --schema-file=${_OUTPUT_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E touch ${_VALID_FILE}
|
||||
DEPENDS ${_OUTPUT_FILE}
|
||||
)
|
||||
ENDFOREACH(file)
|
||||
|
||||
ADD_CUSTOM_TARGET(${_TARGET} DEPENDS "${_gschema_OUTPUTS};${_gschema_VALIDS};${_gschema_BUILDS}")
|
||||
|
||||
INSTALL(FILES ${_gschema_OUTPUTS} DESTINATION share/glib-2.0/schemas)
|
||||
|
||||
ENDMACRO()
|
142
src/cmake_modules/GncAddSchemeTargets.cmake
Normal file
142
src/cmake_modules/GncAddSchemeTargets.cmake
Normal file
@ -0,0 +1,142 @@
|
||||
# Copyright (c) 2015, Rob Gowin
|
||||
|
||||
MACRO(GNC_ADD_SCHEME_TARGETS _TARGET _SOURCE_FILES _OUTPUT_DIR_IN _GUILE_MODULES _GUILE_LOAD_DIRS _GUILE_LIBRARY_DIRS _GUILE_DEPENDS_IN MAKE_LINKS_IN)
|
||||
SET(__DEBUG FALSE)
|
||||
IF (__DEBUG)
|
||||
MESSAGE("Parameters to COMPILE_SCHEME for target ${_TARGET}")
|
||||
MESSAGE(" SOURCE_FILES: ${_SOURCE_FILES}")
|
||||
MESSAGE(" GUILE_MODULES: ${_GUILE_MODULES}")
|
||||
MESSAGE(" GUILE_LOAD_DIRS: ${_GUILE_LOAD_DIRS}")
|
||||
MESSAGE(" GUILE_LIBRARY_DIRS: ${_GUILE_LIBRARY_DIRS}")
|
||||
MESSAGE(" GUILE_DEPENDS_IN: ${_GUILE_DEPENDS_IN}")
|
||||
ENDIF(__DEBUG)
|
||||
SET(_CMD "create_symlink")
|
||||
IF(WIN32)
|
||||
SET(_CMD "copy")
|
||||
ENDIF(WIN32)
|
||||
SET(MAKE_LINKS ${MAKE_LINKS_IN})
|
||||
SET(_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/${_OUTPUT_DIR_IN})
|
||||
IF(GNC_BUILD_AS_INSTALL)
|
||||
SET(_OUTPUT_DIR ${DATADIR_BUILD}/gnucash/scm/${_OUTPUT_DIR_IN})
|
||||
ENDIF()
|
||||
FILE(MAKE_DIRECTORY ${_OUTPUT_DIR})
|
||||
# For guile 1, we simple link (or copy, for Windows) each source file to the dest directory
|
||||
IF(HAVE_GUILE1 OR MAKE_LINKS)
|
||||
SET(_SCHEME_LINKS "")
|
||||
FOREACH(scheme_file ${_SOURCE_FILES})
|
||||
SET(_SOURCE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${scheme_file})
|
||||
IF(IS_ABSOLUTE ${scheme_file})
|
||||
SET(_SOURCE_FILE ${scheme_file})
|
||||
ENDIF()
|
||||
GET_FILENAME_COMPONENT(name ${scheme_file} NAME)
|
||||
SET(_OUTPUT_FILE ${_OUTPUT_DIR}/${name})
|
||||
IF(NOT EXISTS ${_OUTPUT_FILE})
|
||||
LIST(APPEND _SCHEME_LINKS ${_OUTPUT_FILE})
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_OUTPUT_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E ${_CMD} ${_SOURCE_FILE} ${_OUTPUT_FILE}
|
||||
)
|
||||
ENDIF()
|
||||
ENDFOREACH(scheme_file)
|
||||
IF(HAVE_GUILE1)
|
||||
ADD_CUSTOM_TARGET(${_TARGET} ALL DEPENDS "${_SCHEME_LINKS}")
|
||||
ELSE()
|
||||
ADD_CUSTOM_TARGET(${_TARGET}-links ALL DEPENDS "${_SCHEME_LINKS}")
|
||||
ENDIF()
|
||||
ENDIF(HAVE_GUILE1 OR MAKE_LINKS)
|
||||
|
||||
IF(HAVE_GUILE2)
|
||||
# Construct the guile source and compiled load paths
|
||||
SET(_GUILE_LOAD_PATH "${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_CURRENT_BINARY_DIR};${CMAKE_BINARY_DIR}/src/scm") # to pick up generated build-config.scm
|
||||
SET(_GUILE_LOAD_COMPILED_PATH "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
FOREACH (load_item ${_GUILE_LOAD_DIRS})
|
||||
LIST(APPEND _GUILE_LOAD_PATH ${CMAKE_SOURCE_DIR}/${load_item})
|
||||
LIST(APPEND _GUILE_LOAD_COMPILED_PATH ${CMAKE_BINARY_DIR}/${load_item})
|
||||
ENDFOREACH(load_item)
|
||||
|
||||
# Construct the LD_LIBRARY_PATH
|
||||
SET(_GUILE_LD_LIBRARY_PATH ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE})
|
||||
FOREACH(ld_item ${_GUILE_LIBRARY_DIRS})
|
||||
LIST(APPEND _GUILE_LD_LIBRARY_PATH ${CMAKE_BINARY_DIR}/${ld_item}/${CMAKE_BUILD_TYPE})
|
||||
ENDFOREACH(ld_item)
|
||||
|
||||
# And then the module path
|
||||
SET(_GNC_MODULE_PATH "")
|
||||
FOREACH(module_item ${_GUILE_MODULES})
|
||||
LIST(APPEND _GNC_MODULE_PATH ${CMAKE_BINARY_DIR}/${module_item}/${CMAKE_BUILD_TYPE})
|
||||
ENDFOREACH(module_item)
|
||||
|
||||
# In CMake lists are text strings where the items are separated by semicolons ("a;b;c;d" for example).
|
||||
# Replace the semis with colons to construct the path environment variables
|
||||
STRING(REPLACE ";" ":" _GUILE_LOAD_PATH "${_GUILE_LOAD_PATH}")
|
||||
STRING(REPLACE ";" ":" _GUILE_LOAD_COMPILED_PATH "${_GUILE_LOAD_COMPILED_PATH}")
|
||||
STRING(REPLACE ";" ":" _GUILE_MODULES "{_GUILE_MODULES}")
|
||||
STRING(REPLACE ";" ":" _GUILE_LD_LIBRARY_PATH "${_GUILE_LD_LIBRARY_PATH}")
|
||||
STRING(REPLACE ";" ":" _GNC_MODULE_PATH "${_GNC_MODULE_PATH}")
|
||||
|
||||
IF(GNC_BUILD_AS_INSTALL)
|
||||
SET(_GUILE_CACHE_DIR ${LIBDIR_BUILD}/gnucash/scm/ccache/2.0)
|
||||
SET(_GUILE_LOAD_PATH "${CMAKE_CURRENT_SOURCE_DIR}:${DATADIR_BUILD}/gnucash/scm")
|
||||
SET(_GUILE_LOAD_COMPILED_PATH ${_GUILE_CACHE_DIR})
|
||||
# SET(_GNC_MODULE_PATH "${LIBDIR_BUILD}/${CMAKE_BUILD_TYPE}:${LIBDIR_BUILD}/gnucash/${CMAKE_BUILD_TYPE}")
|
||||
SET(_GNC_MODULE_PATH "")
|
||||
SET(_GUILE_LD_LIBRARY_PATH ${_GNC_MODULE_PATH})
|
||||
ENDIF()
|
||||
IF (__DEBUG)
|
||||
MESSAGE(" ")
|
||||
MESSAGE(" GUILE_LOAD_PATH: ${_GUILE_LOAD_PATH}")
|
||||
MESSAGE(" GUILE_LOAD_COMPILED_PATH: ${_GUILE_LOAD_COMPILED_PATH}")
|
||||
MESSAGE(" GUILE_LD_LIBRARY_PATH: ${_GUILE_LD_LIBRARY_PATH}")
|
||||
MESSAGE(" GNC_MODULE_PATH: ${_GNC_MODULE_PATH}")
|
||||
ENDIF(__DEBUG)
|
||||
SET(_TARGET_FILES "")
|
||||
|
||||
FOREACH(source_file ${_SOURCE_FILES})
|
||||
SET(guile_depends ${_GUILE_DEPENDS_IN})
|
||||
GET_FILENAME_COMPONENT(basename ${source_file} NAME_WE)
|
||||
|
||||
SET(output_file ${basename}.go)
|
||||
SET(_TMP_OUTPUT_DIR_IN ${_OUTPUT_DIR_IN})
|
||||
IF (_TMP_OUTPUT_DIR_IN)
|
||||
SET(output_file ${_OUTPUT_DIR_IN}/${basename}.go)
|
||||
ENDIF()
|
||||
IF(GNC_BUILD_AS_INSTALL)
|
||||
SET(output_file ${_GUILE_CACHE_DIR}/${output_file})
|
||||
LIST(APPEND _TARGET_FILES ${output_file})
|
||||
ELSE()
|
||||
LIST(APPEND _TARGET_FILES ${CMAKE_CURRENT_BINARY_DIR}/${output_file})
|
||||
ENDIF()
|
||||
|
||||
SET(source_file_abs_path ${CMAKE_CURRENT_SOURCE_DIR}/${source_file})
|
||||
IF (IS_ABSOLUTE ${source_file})
|
||||
SET(source_file_abs_path ${source_file})
|
||||
ENDIF()
|
||||
IF (__DEBUG)
|
||||
MESSAGE("ADD_CUSTOM_COMMAND: output = ${output_file}")
|
||||
ENDIF()
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${output_file}
|
||||
COMMAND ${CMAKE_COMMAND} -E env
|
||||
GNC_UNINSTALLED=${_GNC_UNINSTALLED}
|
||||
GNC_BUILDDIR=${CMAKE_BINARY_DIR}
|
||||
#DYLD_FALLBACK_LIBRARY_PATH=${Boost_LIBRARY_DIRS} # this is hack for OS X
|
||||
LD_LIBRARY_PATH="${LIBDIR_BUILD}:${LIBDIR_BUILD}/gnucash:${_GUILE_LD_LIBRARY_PATH}"
|
||||
DYLD_LIBRARY_PATH="${LIBDIR_BUILD}:${LIBDIR_BUILD}/gnucash:${_GUILE_LD_LIBRARY_PATH}"
|
||||
GUILE_LOAD_PATH=${_GUILE_LOAD_PATH}
|
||||
GUILE_LOAD_COMPILED_PATH=${_GUILE_LOAD_COMPILED_PATH}
|
||||
#GNC_MODULE_PATH=${_GNC_MODULE_PATH}
|
||||
GNC_MODULE_PATH="${LIBDIR_BUILD}:${LIBDIR_BUILD}/gnucash:${GNC_MODULE_PATH}"
|
||||
${GUILE_EXECUTABLE} -e '\(@@ \(guild\) main\)' -s ${GUILD_EXECUTABLE} compile -o ${output_file} ${source_file_abs_path}
|
||||
DEPENDS ${guile_depends}
|
||||
MAIN_DEPENDENCY ${source_file_abs_path}
|
||||
)
|
||||
ENDFOREACH(source_file)
|
||||
IF (__DEBUG)
|
||||
MESSAGE("TARGET_FILES are ${_TARGET_FILES}")
|
||||
ENDIF(__DEBUG)
|
||||
ADD_CUSTOM_TARGET(${_TARGET} ALL DEPENDS ${_TARGET_FILES})
|
||||
INSTALL(FILES ${_TARGET_FILES} DESTINATION ${SCHEME_INSTALLED_CACHE_DIR}/${_OUTPUT_DIR_IN})
|
||||
|
||||
ENDIF(HAVE_GUILE2)
|
||||
INSTALL(FILES ${_SOURCE_FILES} DESTINATION ${SCHEME_INSTALLED_SOURCE_DIR}/${_OUTPUT_DIR_IN})
|
||||
ENDMACRO(GNC_ADD_SCHEME_TARGETS)
|
42
src/cmake_modules/GncConfigure.cmake
Normal file
42
src/cmake_modules/GncConfigure.cmake
Normal file
@ -0,0 +1,42 @@
|
||||
|
||||
MACRO (GNC_CONFIGURE _INPUT _OUTPUT)
|
||||
FILE(READ ${_INPUT} FILE_CONTENTS_IN_IN)
|
||||
SET(FILE_CONTENTS_IN "${FILE_CONTENTS_IN_IN}")
|
||||
STRING(REGEX REPLACE "@-|-@" "@" _TMP2 "${FILE_CONTENTS_IN}")
|
||||
STRING(CONFIGURE "${_TMP2}" FILE_CONTENTS @ONLY)
|
||||
SET(_OUTPUT_FILE ${_OUTPUT})
|
||||
IF (NOT IS_ABSOLUTE ${_OUTPUT})
|
||||
SET(_OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_OUTPUT})
|
||||
ENDIF()
|
||||
FILE(WRITE ${_OUTPUT_FILE} "${FILE_CONTENTS}")
|
||||
ENDMACRO()
|
||||
|
||||
|
||||
MACRO (GNC_CONFIGURE2 _INPUT _OUTPUT)
|
||||
|
||||
SET(_TMPDIR ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY})
|
||||
FILE(READ ${_INPUT} FILE_CONTENTS_IN_IN)
|
||||
SET(FILE_CONTENTS_IN "${FILE_CONTENTS_IN_IN}")
|
||||
STRING(REGEX REPLACE "@-|-@" "@" _TMP2 "${FILE_CONTENTS_IN}")
|
||||
FILE(WRITE ${_TMPDIR}/${_INPUT}.tmp "${_TMP2}")
|
||||
|
||||
FILE(WRITE ${_TMPDIR}/${_INPUT}.cmake
|
||||
"SET(PERL ${PERL_EXECUTABLE})
|
||||
SET(VERSION ${VERSION})
|
||||
SET(GNC_HELPDIR ${GNC_HELPDIR})
|
||||
SET(GETTEXT_PACKAGE ${GETTEXT_PACKAGE})
|
||||
CONFIGURE_FILE(\${SRC} \${DST} @ONLY)")
|
||||
|
||||
SET(_OUTPUT_FILE ${_OUTPUT})
|
||||
IF (NOT IS_ABSOLUTE ${_OUTPUT})
|
||||
SET(_OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_OUTPUT})
|
||||
ENDIF()
|
||||
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_OUTPUT_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -D SRC=${_TMPDIR}/${_INPUT}.tmp
|
||||
-D DST=${_OUTPUT_FILE}
|
||||
-P ${_TMPDIR}/${_INPUT}.cmake
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_INPUT}
|
||||
)
|
||||
ENDMACRO()
|
248
src/cmake_modules/GncFindPkgConfig.cmake
Normal file
248
src/cmake_modules/GncFindPkgConfig.cmake
Normal file
@ -0,0 +1,248 @@
|
||||
function (pkg_get_variable result pkg variable)
|
||||
_pkgconfig_invoke("${pkg}" "prefix" "result" "" "--variable=${variable}")
|
||||
set("${result}"
|
||||
"${prefix_result}"
|
||||
PARENT_SCOPE)
|
||||
endfunction ()
|
||||
|
||||
|
||||
macro(_gnc_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cmake_environment_path _prefix)
|
||||
_pkgconfig_unset(${_prefix}_FOUND)
|
||||
_pkgconfig_unset(${_prefix}_VERSION)
|
||||
_pkgconfig_unset(${_prefix}_PREFIX)
|
||||
_pkgconfig_unset(${_prefix}_INCLUDEDIR)
|
||||
_pkgconfig_unset(${_prefix}_LIBDIR)
|
||||
_pkgconfig_unset(${_prefix}_LIBS)
|
||||
_pkgconfig_unset(${_prefix}_LIBS_L)
|
||||
_pkgconfig_unset(${_prefix}_LIBS_PATHS)
|
||||
_pkgconfig_unset(${_prefix}_LIBS_OTHER)
|
||||
_pkgconfig_unset(${_prefix}_CFLAGS)
|
||||
_pkgconfig_unset(${_prefix}_CFLAGS_I)
|
||||
_pkgconfig_unset(${_prefix}_CFLAGS_OTHER)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_LIBDIR)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_LIBS)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_LIBS_L)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_LIBS_PATHS)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_LIBS_OTHER)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_CFLAGS)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_CFLAGS_I)
|
||||
_pkgconfig_unset(${_prefix}_STATIC_CFLAGS_OTHER)
|
||||
|
||||
# create a better addressable variable of the modules and calculate its size
|
||||
set(_pkg_check_modules_list ${ARGN})
|
||||
list(LENGTH _pkg_check_modules_list _pkg_check_modules_cnt)
|
||||
|
||||
if(PKG_CONFIG_EXECUTABLE)
|
||||
# give out status message telling checked module
|
||||
if (NOT ${_is_silent})
|
||||
if (_pkg_check_modules_cnt EQUAL 1)
|
||||
message(STATUS "Checking for module '${_pkg_check_modules_list}'")
|
||||
else()
|
||||
message(STATUS "Checking for modules '${_pkg_check_modules_list}'")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(_pkg_check_modules_packages)
|
||||
set(_pkg_check_modules_failed)
|
||||
|
||||
set(_extra_paths)
|
||||
|
||||
if(NOT _no_cmake_path)
|
||||
_pkgconfig_add_extra_path(_extra_paths CMAKE_PREFIX_PATH)
|
||||
_pkgconfig_add_extra_path(_extra_paths CMAKE_FRAMEWORK_PATH)
|
||||
_pkgconfig_add_extra_path(_extra_paths CMAKE_APPBUNDLE_PATH)
|
||||
endif()
|
||||
|
||||
if(NOT _no_cmake_environment_path)
|
||||
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_PREFIX_PATH)
|
||||
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_FRAMEWORK_PATH)
|
||||
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_APPBUNDLE_PATH)
|
||||
endif()
|
||||
|
||||
if(NOT "${_extra_paths}" STREQUAL "")
|
||||
# Save the PKG_CONFIG_PATH environment variable, and add paths
|
||||
# from the CMAKE_PREFIX_PATH variables
|
||||
set(_pkgconfig_path_old $ENV{PKG_CONFIG_PATH})
|
||||
set(_pkgconfig_path ${_pkgconfig_path_old})
|
||||
if(NOT "${_pkgconfig_path}" STREQUAL "")
|
||||
file(TO_CMAKE_PATH "${_pkgconfig_path}" _pkgconfig_path)
|
||||
endif()
|
||||
|
||||
# Create a list of the possible pkgconfig subfolder (depending on
|
||||
# the system
|
||||
set(_lib_dirs)
|
||||
if(NOT DEFINED CMAKE_SYSTEM_NAME
|
||||
OR (CMAKE_SYSTEM_NAME MATCHES "^(Linux|kFreeBSD|GNU)$"
|
||||
AND NOT CMAKE_CROSSCOMPILING))
|
||||
if(EXISTS "/etc/debian_version") # is this a debian system ?
|
||||
if(CMAKE_LIBRARY_ARCHITECTURE)
|
||||
list(APPEND _lib_dirs "lib/${CMAKE_LIBRARY_ARCHITECTURE}/pkgconfig")
|
||||
endif()
|
||||
else()
|
||||
# not debian, chech the FIND_LIBRARY_USE_LIB64_PATHS property
|
||||
get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
|
||||
if(uselib64)
|
||||
list(APPEND _lib_dirs "lib64/pkgconfig")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
list(APPEND _lib_dirs "lib/pkgconfig")
|
||||
|
||||
# Check if directories exist and eventually append them to the
|
||||
# pkgconfig path list
|
||||
foreach(_prefix_dir ${_extra_paths})
|
||||
foreach(_lib_dir ${_lib_dirs})
|
||||
if(EXISTS "${_prefix_dir}/${_lib_dir}")
|
||||
list(APPEND _pkgconfig_path "${_prefix_dir}/${_lib_dir}")
|
||||
list(REMOVE_DUPLICATES _pkgconfig_path)
|
||||
endif()
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
# Prepare and set the environment variable
|
||||
if(NOT "${_pkgconfig_path}" STREQUAL "")
|
||||
# remove empty values from the list
|
||||
list(REMOVE_ITEM _pkgconfig_path "")
|
||||
file(TO_NATIVE_PATH "${_pkgconfig_path}" _pkgconfig_path)
|
||||
if(UNIX)
|
||||
string(REPLACE ";" ":" _pkgconfig_path "${_pkgconfig_path}")
|
||||
string(REPLACE "\\ " " " _pkgconfig_path "${_pkgconfig_path}")
|
||||
endif()
|
||||
set(ENV{PKG_CONFIG_PATH} "${_pkgconfig_path}")
|
||||
endif()
|
||||
|
||||
# Unset variables
|
||||
unset(_lib_dirs)
|
||||
unset(_pkgconfig_path)
|
||||
endif()
|
||||
|
||||
# iterate through module list and check whether they exist and match the required version
|
||||
foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list})
|
||||
set(_pkg_check_modules_exist_query)
|
||||
|
||||
# check whether version is given
|
||||
if (_pkg_check_modules_pkg MATCHES "(.*[^><])(>=|=|<=)(.*)")
|
||||
set(_pkg_check_modules_pkg_name "${CMAKE_MATCH_1}")
|
||||
set(_pkg_check_modules_pkg_op "${CMAKE_MATCH_2}")
|
||||
set(_pkg_check_modules_pkg_ver "${CMAKE_MATCH_3}")
|
||||
else()
|
||||
set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
|
||||
set(_pkg_check_modules_pkg_op)
|
||||
set(_pkg_check_modules_pkg_ver)
|
||||
endif()
|
||||
|
||||
# handle the operands
|
||||
if (_pkg_check_modules_pkg_op STREQUAL ">=")
|
||||
list(APPEND _pkg_check_modules_exist_query --atleast-version)
|
||||
endif()
|
||||
|
||||
if (_pkg_check_modules_pkg_op STREQUAL "=")
|
||||
list(APPEND _pkg_check_modules_exist_query --exact-version)
|
||||
endif()
|
||||
|
||||
if (_pkg_check_modules_pkg_op STREQUAL "<=")
|
||||
list(APPEND _pkg_check_modules_exist_query --max-version)
|
||||
endif()
|
||||
|
||||
# create the final query which is of the format:
|
||||
# * --atleast-version <version> <pkg-name>
|
||||
# * --exact-version <version> <pkg-name>
|
||||
# * --max-version <version> <pkg-name>
|
||||
# * --exists <pkg-name>
|
||||
if (_pkg_check_modules_pkg_op)
|
||||
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}")
|
||||
else()
|
||||
list(APPEND _pkg_check_modules_exist_query --exists)
|
||||
endif()
|
||||
|
||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION)
|
||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX)
|
||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR)
|
||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR)
|
||||
|
||||
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}")
|
||||
list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}")
|
||||
|
||||
# execute the query
|
||||
execute_process(
|
||||
COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query}
|
||||
RESULT_VARIABLE _pkgconfig_retval)
|
||||
|
||||
# evaluate result and tell failures
|
||||
if (_pkgconfig_retval)
|
||||
if(NOT ${_is_silent})
|
||||
message(STATUS " Package '${_pkg_check_modules_pkg}' not found")
|
||||
endif()
|
||||
|
||||
set(_pkg_check_modules_failed 1)
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
if(_pkg_check_modules_failed)
|
||||
# fail when requested
|
||||
if (${_is_required})
|
||||
message(FATAL_ERROR "A required package was not found")
|
||||
endif ()
|
||||
else()
|
||||
# when we are here, we checked whether requested modules
|
||||
# exist. Now, go through them and set variables
|
||||
|
||||
_pkgconfig_set(${_prefix}_FOUND 1)
|
||||
list(LENGTH _pkg_check_modules_packages pkg_count)
|
||||
|
||||
# iterate through all modules again and set individual variables
|
||||
foreach (_pkg_check_modules_pkg ${_pkg_check_modules_packages})
|
||||
# handle case when there is only one package required
|
||||
if (pkg_count EQUAL 1)
|
||||
set(_pkg_check_prefix "${_prefix}")
|
||||
else()
|
||||
set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}")
|
||||
endif()
|
||||
|
||||
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion )
|
||||
pkg_get_variable("${_pkg_check_prefix}_PREFIX" ${_pkg_check_modules_pkg} "prefix")
|
||||
pkg_get_variable("${_pkg_check_prefix}_INCLUDEDIR" ${_pkg_check_modules_pkg} "includedir")
|
||||
pkg_get_variable("${_pkg_check_prefix}_LIBDIR" ${_pkg_check_modules_pkg} "libdir")
|
||||
|
||||
if (NOT ${_is_silent})
|
||||
message(STATUS " Found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}")
|
||||
endif ()
|
||||
endforeach()
|
||||
|
||||
# set variables which are combined for multiple modules
|
||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l )
|
||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARY_DIRS "(^| )-L" --libs-only-L )
|
||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS "" --libs )
|
||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS_OTHER "" --libs-only-other )
|
||||
|
||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I )
|
||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags )
|
||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other )
|
||||
endif()
|
||||
|
||||
if(NOT "${_extra_paths}" STREQUAL "")
|
||||
# Restore the environment variable
|
||||
set(ENV{PKG_CONFIG_PATH} ${_pkgconfig_path})
|
||||
endif()
|
||||
|
||||
unset(_extra_paths)
|
||||
unset(_pkgconfig_path_old)
|
||||
else()
|
||||
if (${_is_required})
|
||||
message(SEND_ERROR "pkg-config tool not found")
|
||||
endif ()
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
|
||||
|
||||
macro(gnc_pkg_check_modules _prefix _module0)
|
||||
# check cached value
|
||||
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
|
||||
_pkgconfig_parse_options (_pkg_modules _pkg_is_required _pkg_is_silent _no_cmake_path _no_cmake_environment_path "${_module0}" ${ARGN})
|
||||
_gnc_pkg_check_modules_internal("${_pkg_is_required}" "${_pkg_is_silent}" ${_no_cmake_path} ${_no_cmake_environment_path} "${_prefix}" ${_pkg_modules})
|
||||
|
||||
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
|
||||
endif()
|
||||
endmacro()
|
||||
|
@ -1,77 +1,343 @@
|
||||
/* Template file for processing by the cmake command CONFIGURE_FILE */
|
||||
|
||||
#define PACKAGE "@PROJECT_NAME@"
|
||||
#define GNUCASH_MAJOR_VERSION @CUTECASH_VERSION_MAJOR@
|
||||
#define GNUCASH_MICRO_VERSION @CUTECASH_VERSION_MINOR@
|
||||
#define GNUCASH_MINOR_VERSION @CUTECASH_VERSION_PATCH@
|
||||
#define GNUCASH_NANO_VERSION @CUTECASH_VERSION_NANO@
|
||||
#define GNUCASH_RESAVE_VERSION @GNUCASH_RESAVE_VERSION@
|
||||
#define VERSION "@CUTECASH_VERSION_MAJOR@.@CUTECASH_VERSION_MINOR@.@CUTECASH_VERSION_PATCH@"
|
||||
|
||||
/* Definitions for all OS */
|
||||
#define HAVE_LIBQOF /**/
|
||||
#define HAVE_TOWUPPER 1
|
||||
#define QOF_DISABLE_DEPRECATED 1
|
||||
#define GNC_NO_LOADABLE_MODULES 1
|
||||
/* Define if building universal (internal helper macro) */
|
||||
#cmakedefine AC_APPLE_UNIVERSAL_BUILD
|
||||
|
||||
/* WIN32 */
|
||||
#cmakedefine HAVE_HTMLHELPW 1
|
||||
#cmakedefine OS_WIN32 1
|
||||
/* Include pthread support for binary relocation? */
|
||||
#cmakedefine BR_PTHREAD 1
|
||||
|
||||
/* Unix or Mingw or Win32 */
|
||||
/* Enable debug memory */
|
||||
#cmakedefine01 DEBUG_MEMORY
|
||||
|
||||
/* Use binary relocation? */
|
||||
#cmakedefine ENABLE_BINRELOC
|
||||
|
||||
/* always defined to indicate that i18n is enabled */
|
||||
#cmakedefine ENABLE_NLS 1
|
||||
|
||||
/* Don't use deprecated gdk functions */
|
||||
#cmakedefine GDK_DISABLE_DEPRECATED 1
|
||||
|
||||
/* Don't use deprecated gdk-pixbuf functions */
|
||||
#cmakedefine GDK_PIXBUF_DISABLE_DEPRECATED 1
|
||||
|
||||
/* Using GDK Quartz (not X11) */
|
||||
#cmakedefine GDK_QUARTZ
|
||||
|
||||
/* GetText version number */
|
||||
#define GETTEXT_PACKAGE "@GETTEXT_PACKAGE@"
|
||||
|
||||
/* Cocoa/Nexstep/GnuStep framework */
|
||||
#cmakedefine GNC_PLATFORM_COCOA 1
|
||||
|
||||
/* Darwin-based OS */
|
||||
#cmakedefine GNC_PLATFORM_DARWIN 1
|
||||
|
||||
/* Running on OSX, either X11 or Quartz */
|
||||
#cmakedefine GNC_PLATFORM_OSX 1
|
||||
|
||||
/* POSIX-compliant OS */
|
||||
#cmakedefine GNC_PLATFORM_POSIX 1
|
||||
|
||||
/* Microsoft Windows OS */
|
||||
#cmakedefine GNC_PLATFORM_WINDOWS 1
|
||||
|
||||
/* using GNOME */
|
||||
#cmakedefine GNOME
|
||||
|
||||
/* Don't use deprecated gnome functions */
|
||||
#cmakedefine GNOME_DISABLE_DEPRECATED
|
||||
|
||||
/* Most recent stable GnuCash series */
|
||||
#define GNUCASH_LATEST_STABLE_SERIES "@GNUCASH_LATEST_STABLE_SERIES@"
|
||||
|
||||
/* GnuCash Major version number */
|
||||
#define GNUCASH_MAJOR_VERSION @GNUCASH_MAJOR_VERSION@
|
||||
|
||||
/* GnuCash Micro version number */
|
||||
#define GNUCASH_MICRO_VERSION @GNUCASH_MICRO_VERSION@
|
||||
|
||||
/* GnuCash Minor version number */
|
||||
#define GNUCASH_MINOR_VERSION @GNUCASH_MINOR_VERSION@
|
||||
|
||||
/* GnuCash Nano version number */
|
||||
#define GNUCASH_NANO_VERSION @GNUCASH_NANO_VERSION@
|
||||
|
||||
/* GnuCash earliest compatible databaseversion number */
|
||||
#define GNUCASH_RESAVE_VERSION @GNUCASH_RESAVE_VERSION@
|
||||
|
||||
/* Don't use deprecated gtk functions */
|
||||
#cmakedefine GTK_DISABLE_DEPRECATED 1
|
||||
|
||||
/* Don't use deprecated glib functions */
|
||||
#cmakedefine G_DISABLE_DEPRECATED 1
|
||||
|
||||
/* Define to 1 if you have the `bind_textdomain_codeset' function. */
|
||||
#cmakedefine HAVE_BIND_TEXTDOMAIN_CODESET 1
|
||||
|
||||
/* define if the Boost library is available */
|
||||
#cmakedefine HAVE_BOOST
|
||||
|
||||
/* Define to 1 if you have the `chown' function. */
|
||||
#cmakedefine HAVE_CHOWN 1
|
||||
|
||||
/* define if the compiler supports basic C++11 syntax */
|
||||
#cmakedefine HAVE_CXX11 1
|
||||
|
||||
/* Define to 1 if you have the <dbi/dbi.h> header file. */
|
||||
#cmakedefine HAVE_DBI_DBI_H 1
|
||||
|
||||
/* Define to 1 if you have the `dcgettext' function. */
|
||||
#cmakedefine HAVE_DCGETTEXT 1
|
||||
|
||||
/* Define to 1 if you have the <dirent.h> header file. */
|
||||
#cmakedefine HAVE_DIRENT_H 1
|
||||
|
||||
/* Define to 1 if you have the `dlerror' function. */
|
||||
#cmakedefine HAVE_DLERROR 1
|
||||
|
||||
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||
#cmakedefine HAVE_DLFCN_H 1
|
||||
|
||||
/* Define to 1 if you have the `dlsym' function. */
|
||||
#cmakedefine HAVE_DLSYM 1
|
||||
|
||||
/* Define to 1 if you have the <dl.h> header file. */
|
||||
#cmakedefine HAVE_DL_H 1
|
||||
|
||||
/* Define to 1 if you have the `gethostid' function. */
|
||||
#cmakedefine HAVE_GETHOSTID 1
|
||||
|
||||
/* Define to 1 if you have the `gethostname' function. */
|
||||
#cmakedefine HAVE_GETHOSTNAME 1
|
||||
|
||||
/* Define to 1 if you have the `getppid' function. */
|
||||
#cmakedefine HAVE_GETPPID 1
|
||||
|
||||
/* Define if the GNU gettext() function is already present or preinstalled. */
|
||||
#cmakedefine HAVE_GETTEXT 1
|
||||
|
||||
/* Define to 1 if you have the `gettimeofday' function. */
|
||||
#cmakedefine HAVE_GETTIMEOFDAY 1
|
||||
|
||||
/* Define to 1 if you have the `getuid' function. */
|
||||
#cmakedefine HAVE_GETUID 1
|
||||
|
||||
/* Configure gthread deprecations */
|
||||
#cmakedefine HAVE_GLIB_2_32 1
|
||||
|
||||
/* Configure g_type_init deprecation */
|
||||
#cmakedefine HAVE_GLIB_2_36 1
|
||||
|
||||
/* Configure leading quote around assertions */
|
||||
#cmakedefine HAVE_GLIB_2_38 1
|
||||
|
||||
/* Define to 1 if you have the <glob.h> header file. */
|
||||
#cmakedefine HAVE_GLOB_H 1
|
||||
|
||||
/* Define to 1 if you have the `gmtime_r' function. */
|
||||
#cmakedefine HAVE_GMTIME_R 1
|
||||
#cmakedefine HAVE_GUILE 1
|
||||
|
||||
/* System has gnome-keyring 0.6 or better */
|
||||
#cmakedefine HAVE_GNOME_KEYRING 1
|
||||
|
||||
/* System has HtmlHelpW */
|
||||
#cmakedefine HAVE_HTMLHELPW 1
|
||||
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#cmakedefine HAVE_INTTYPES_H 1
|
||||
|
||||
/* Define to 1 if you have the <ktoblzcheck.h> header file. */
|
||||
#cmakedefine HAVE_KTOBLZCHECK_H 1
|
||||
|
||||
/* Define if you have <langinfo.h> and nl_langinfo(D_FMT). */
|
||||
#cmakedefine HAVE_LANGINFO_D_FMT 1
|
||||
|
||||
/* Define if your <locale.h> file defines LC_MESSAGES. */
|
||||
#cmakedefine HAVE_LC_MESSAGES 1
|
||||
#cmakedefine HAVE_LIBM 1
|
||||
|
||||
/* Define to 1 if you have the `pthread' library (-lpthread). */
|
||||
#cmakedefine HAVE_LIBPTHREAD 1
|
||||
|
||||
/* System has libsecret 0.18 or better */
|
||||
#cmakedefine HAVE_LIBSECRET 1
|
||||
|
||||
/* Define to 1 if you have the <limits.h> header file. */
|
||||
#cmakedefine HAVE_LIMITS_H 1
|
||||
|
||||
/* Define to 1 if you have the `link' function. */
|
||||
#cmakedefine HAVE_LINK 1
|
||||
|
||||
/* Define to 1 if you have the <locale.h> header file. */
|
||||
#cmakedefine HAVE_LOCALE_H 1
|
||||
#cmakedefine HAVE_LOCALTIME_R 1
|
||||
|
||||
/* Define to 1 if you have the <ltdl.h> header file. */
|
||||
#cmakedefine HAVE_LTDL_H 1
|
||||
|
||||
/* Define to 1 if you have the <mcheck.h> header file. */
|
||||
#cmakedefine HAVE_MCHECK_H 1
|
||||
|
||||
/* Define to 1 if you have the `memcpy' function. */
|
||||
#cmakedefine HAVE_MEMCPY 1
|
||||
|
||||
/* Define to 1 if you have the <memory.h> header file. */
|
||||
#cmakedefine HAVE_MEMORY_H 1
|
||||
|
||||
/* System has an OS X Key chain */
|
||||
#cmakedefine HAVE_OSX_KEYCHAIN 1
|
||||
|
||||
/* Define to 1 if you have the <pow.h> header file. */
|
||||
#cmakedefine HAVE_POW_H 1
|
||||
|
||||
/* Define to 1 if you have the `pthread_mutex_init' function. */
|
||||
#cmakedefine HAVE_PTHREAD_MUTEX_INIT 1
|
||||
|
||||
/* Have PTHREAD_PRIO_INHERIT. */
|
||||
#cmakedefine HAVE_PTHREAD_PRIO_INHERIT 1
|
||||
|
||||
/* Define to 1 if you have the `putenv' function. */
|
||||
#cmakedefine HAVE_PUTENV 1
|
||||
|
||||
/* If available, contains the Python version number currently in use. */
|
||||
#cmakedefine HAVE_PYTHON 1
|
||||
|
||||
/* Define if scanf supports %I64d conversions. */
|
||||
#cmakedefine HAVE_SCANF_I64D 1
|
||||
|
||||
/* Define if scanf supports %lld conversions. */
|
||||
#cmakedefine HAVE_SCANF_LLD 1
|
||||
|
||||
/* Define if scanf supports %qd conversions. */
|
||||
#cmakedefine HAVE_SCANF_QD 1
|
||||
|
||||
/* Define to 1 if you have the `setenv' function. */
|
||||
#cmakedefine HAVE_SETENV 1
|
||||
|
||||
/* Define to 1 if you have the <stdint.h> header file. */
|
||||
#cmakedefine HAVE_STDINT_H 1
|
||||
|
||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
#cmakedefine HAVE_STDLIB_H 1
|
||||
|
||||
/* Define to 1 if you have the `stpcpy' function. */
|
||||
#cmakedefine HAVE_STPCPY 1
|
||||
|
||||
/* Define to 1 if you have the `strfmon' function. */
|
||||
#cmakedefine HAVE_STRFMON 1
|
||||
|
||||
/* Define to 1 if you have the <strings.h> header file. */
|
||||
#cmakedefine HAVE_STRINGS_H 1
|
||||
|
||||
/* Define to 1 if you have the <string.h> header file. */
|
||||
#cmakedefine HAVE_STRING_H 1
|
||||
|
||||
/* Define to 1 if you have the `strptime' function. */
|
||||
#cmakedefine HAVE_STRPTIME 1
|
||||
|
||||
/* Define if you have the tm_gmtoff member of struct tm. */
|
||||
#cmakedefine HAVE_STRUCT_TM_GMTOFF 1
|
||||
|
||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
#cmakedefine HAVE_SYS_STAT_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/times.h> header file. */
|
||||
#cmakedefine HAVE_SYS_TIMES_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/time.h> header file. */
|
||||
#cmakedefine HAVE_SYS_TIME_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#cmakedefine HAVE_SYS_TYPES_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/wait.h> header file. */
|
||||
#cmakedefine HAVE_SYS_WAIT_H 1
|
||||
|
||||
/* Define to 1 if you have the `timegm' function. */
|
||||
#cmakedefine HAVE_TIMEGM 1
|
||||
|
||||
/* Define to 1 if you have the `towupper' function. */
|
||||
#cmakedefine HAVE_TOWUPPER 1
|
||||
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#cmakedefine HAVE_UNISTD_H 1
|
||||
|
||||
/* Define to 1 if you have the <utmp.h> header file. */
|
||||
#cmakedefine HAVE_UTMP_H 1
|
||||
|
||||
/* Define to 1 if you have the <wctype.h> header file. */
|
||||
#cmakedefine HAVE_WCTYPE_H 1
|
||||
|
||||
/* webkit_web_frame_print_full exists */
|
||||
#cmakedefine HAVE_WEBKIT_WEB_FRAME_PRINT_FULL 1
|
||||
|
||||
/* Define to 1 if you have the `webkit_web_view_load_uri' function. */
|
||||
#cmakedefine HAVE_WEBKIT_WEB_VIEW_LOAD_URI 1
|
||||
|
||||
/* Define to 1 if you have the <X11/Xlib.h> header file. */
|
||||
#cmakedefine HAVE_X11_XLIB_H 1
|
||||
|
||||
/* Define to 1 if you have the file `/usr/include/gmock/gmock.h'. */
|
||||
#cmakedefine HAVE__USR_INCLUDE_GMOCK_GMOCK_H
|
||||
|
||||
/* Define to 1 if you have the file `/usr/include/gtest/gtest.h'. */
|
||||
#cmakedefine HAVE__USR_INCLUDE_GTEST_GTEST_H 1
|
||||
|
||||
/* Define to 1 if you have the file `/usr/src/gmock/gmock-all.cc'. */
|
||||
#cmakedefine HAVE__USR_SRC_GMOCK_GMOCK_ALL_CC 1
|
||||
|
||||
/* Define to 1 if you have the file `/usr/src/gmock/src/gmock-all.cc'. */
|
||||
#cmakedefine HAVE__USR_SRC_GMOCK_SRC_GMOCK_ALL_CC 1
|
||||
|
||||
/* Define to 1 if you have the file `/usr/src/gtest/gtest-main.cc'. */
|
||||
#cmakedefine HAVE__USR_SRC_GTEST_GTEST_MAIN_CC 1
|
||||
|
||||
/* Define to 1 if you have the file `/usr/src/gtest/src/gtest-all.cc'. */
|
||||
#cmakedefine HAVE__USR_SRC_GTEST_SRC_GTEST_ALL_CC 1
|
||||
|
||||
/* Enable the experimental locale-specific tax categories */
|
||||
#cmakedefine LOCALE_SPECIFIC_TAX 1
|
||||
|
||||
/* Define to the sub-directory where libtool stores uninstalled libraries. */
|
||||
#define LT_OBJDIR ".libs/"
|
||||
|
||||
/* Name of package */
|
||||
#define PACKAGE "@PACKAGE@"
|
||||
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#define PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@"
|
||||
|
||||
/* Define to the full name of this package. */
|
||||
#define PACKAGE_NAME "@PACKAGE_NAME@"
|
||||
|
||||
/* Define to the full name and version of this package. */
|
||||
#define PACKAGE_STRING "@PACKAGE_STRING@"
|
||||
|
||||
/* Define to the one symbol short name of this package. */
|
||||
#define PACKAGE_TARNAME "@PACKAGE_TARNAME@"
|
||||
|
||||
/* Define to the home page for this package. */
|
||||
#define PACKAGE_URL "@PACKAGE_URL@"
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#define PACKAGE_VERSION "@PACKAGE_VERSION@"
|
||||
|
||||
/* Define to necessary symbol if this constant uses a non-standard name on
|
||||
your system. */
|
||||
#cmakedefine PTHREAD_CREATE_JOINABLE 1
|
||||
|
||||
/* Name of package containing qt3-wizard. */
|
||||
#define QT3_WIZARD_PACKAGE "aqbanking"
|
||||
|
||||
/* We are not using Register2 */
|
||||
#cmakedefine REGISTER2_ENABLED 1
|
||||
|
||||
/* Define to 1 if you have the ANSI C header files. */
|
||||
#cmakedefine STDC_HEADERS 1
|
||||
|
||||
/* We are using EFence */
|
||||
#cmakedefine USE_EFENCE 1
|
||||
|
||||
/* Enable extensions on AIX 3, Interix. */
|
||||
#ifndef _ALL_SOURCE
|
||||
#cmakedefine _ALL_SOURCE 1
|
||||
@ -93,8 +359,34 @@
|
||||
#cmakedefine __EXTENSIONS__ 1
|
||||
#endif
|
||||
|
||||
|
||||
/* Version number of package */
|
||||
#define VERSION "@VERSION@"
|
||||
|
||||
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
||||
significant byte first (like Motorola and SPARC, unlike Intel). */
|
||||
#if defined AC_APPLE_UNIVERSAL_BUILD
|
||||
# if defined __BIG_ENDIAN__
|
||||
#cmakedefine WORDS_BIGENDIAN 1
|
||||
# define WORDS_BIGENDIAN 1
|
||||
# endif
|
||||
#else
|
||||
# ifndef WORDS_BIGENDIAN
|
||||
#cmakedefine WORDS_BIGENDIAN
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Define to 1 if on MINIX. */
|
||||
#cmakedefine _MINIX 1
|
||||
|
||||
/* Define to 2 if the system does not provide POSIX.1 features except with
|
||||
this defined. */
|
||||
#cmakedefine _POSIX_1_SOURCE 1
|
||||
|
||||
/* Define to 1 if you need to in order for `stat' and other things to work. */
|
||||
#cmakedefine _POSIX_SOURCE 1
|
||||
|
||||
/* Definitions for all OS */
|
||||
/* From cutecash */
|
||||
//#define HAVE_LIBQOF /**/
|
||||
//#define QOF_DISABLE_DEPRECATED 1
|
||||
//#define GNC_NO_LOADABLE_MODULES 1
|
||||
|
@ -1,25 +1,14 @@
|
||||
# CMakeLists.txt for src/core-utils
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.core-utils\")
|
||||
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GCONF2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_SOURCE_DIR}/..) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_SOURCE_DIR}/../libqof/qof) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_SOURCE_DIR}) # when building swig-core-utils.c
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_BINARY_DIR}) # for gncla-dir.h, gnc-version.h
|
||||
|
||||
# Command to generate the swig-engine.c wrapper file
|
||||
SET (SWIG_CORE_UTILS_C ${CMAKE_CURRENT_BINARY_DIR}/swig-core-utils.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_CORE_UTILS_C} ${CMAKE_CURRENT_SOURCE_DIR}/core-utils.i)
|
||||
|
||||
SET (libgnc_core_utils_SOURCES
|
||||
SET (core_utils_SOURCES
|
||||
binreloc.c
|
||||
gnc-prefs.c
|
||||
gnc-environment.c
|
||||
gnc-filepath-utils.c
|
||||
gnc-features.c
|
||||
gnc-gdate-utils.c
|
||||
@ -34,44 +23,75 @@ SET (libgnc_core_utils_SOURCES
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_core_utils_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (${core_utils_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
# Command to generate the swig-runtime.h header
|
||||
ADD_CUSTOM_COMMAND (
|
||||
OUTPUT ${SWIG_RUNTIME_H}
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
|
||||
COMMAND ${SWIG_EXECUTABLE} -guile -external-runtime ${SWIG_RUNTIME_H}
|
||||
OUTPUT ${SWIG_RUNTIME_H}
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
|
||||
COMMAND ${SWIG_EXECUTABLE} -guile -external-runtime ${SWIG_RUNTIME_H}
|
||||
)
|
||||
|
||||
# Add dependency on swig-runtime.h
|
||||
SET_SOURCE_FILES_PROPERTIES (gnc-guile-utils.c PROPERTIES OBJECT_DEPENDS ${SWIG_RUNTIME_H})
|
||||
|
||||
# Workaround to create a very simple gncla-dir.h file
|
||||
FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR}/gncla-dir.h "
|
||||
#define PREFIX \"${CMAKE_INSTALL_PREFIX}\"
|
||||
#define DATADIR \"${CMAKE_INSTALL_PREFIX}/share\"
|
||||
#define SYSCONFDIR \"${CMAKE_INSTALL_PREFIX}/etc\"
|
||||
#define LIBDIR \"${CMAKE_INSTALL_PREFIX}/lib\"
|
||||
#define BINDIR \"${CMAKE_INSTALL_PREFIX}/bin\"
|
||||
#define LOCALE_DATADIRNAME \"share\"
|
||||
")
|
||||
SET(prefix ${CMAKE_INSTALL_PREFIX})
|
||||
SET(datadir ${DATADIR})
|
||||
SET(bindir ${BINDIR})
|
||||
SET(libdir ${LIBDIR})
|
||||
SET(sysconfdir ${SYSCONFDIR})
|
||||
GNC_CONFIGURE(gncla-dir.h.in gncla-dir.h)
|
||||
|
||||
# Workaround to create a simple gnc-version.h file
|
||||
FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR}/gnc-version.h "
|
||||
/* Autogenerated. Do not change. */
|
||||
### Create gnc-version.h ###
|
||||
|
||||
SET (GNC_VERSION_H_IN
|
||||
"/* Autogenerated. Do not change. */
|
||||
#ifndef GNC_VERSION_H
|
||||
#define GNC_VERSION_H
|
||||
|
||||
#define GNUCASH_SVN 1
|
||||
#define GNUCASH_BUILD_DATE \"2010-XX-XX\"
|
||||
#define GNUCASH_SVN_REV \"xxxxxxx\"
|
||||
#define GNUCASH_SCM \"git\"
|
||||
#define GNUCASH_BUILD_DATE \"@GNUCASH_BUILD_DATE@\"
|
||||
#include \"gnc-vcs-info.h\"
|
||||
#endif
|
||||
")
|
||||
|
||||
SET (libgnc_core_utils_HEADERS
|
||||
STRING(TIMESTAMP GNUCASH_BUILD_DATE "%Y-%m-%d")
|
||||
|
||||
STRING(CONFIGURE ${GNC_VERSION_H_IN} GNC_VERSION_H_CONTENT)
|
||||
|
||||
FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR}/gnc-version.h ${GNC_VERSION_H_CONTENT})
|
||||
|
||||
### Create gnc-vcs-info.h
|
||||
# The meta-cmake gymnastics here come from https://cmake.org/pipermail/cmake/2010-July/038015.html
|
||||
|
||||
FIND_PACKAGE(Git)
|
||||
|
||||
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/gnc-vcs-info.h.in
|
||||
"/* Autogenerated. Do not change. */\n#define GNUCASH_SCM_REV \"@GNUCASH_SCM_REV@\"\n"
|
||||
)
|
||||
|
||||
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/version.cmake
|
||||
"EXECUTE_PROCESS(
|
||||
COMMAND ${GIT_EXECUTABLE} --git-dir ${CMAKE_SOURCE_DIR}/.git log -1 --pretty=format:%h HEAD
|
||||
OUTPUT_VARIABLE GNUCASH_SCM_REV
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
CONFIGURE_FILE(\${SRC} \${DST} @ONLY)
|
||||
")
|
||||
|
||||
ADD_CUSTOM_TARGET(gnc-vcs-info ALL
|
||||
${CMAKE_COMMAND} -D SRC=${CMAKE_CURRENT_BINARY_DIR}/gnc-vcs-info.h.in
|
||||
-D DST=${CMAKE_CURRENT_BINARY_DIR}/gnc-vcs-info.h
|
||||
-P ${CMAKE_CURRENT_BINARY_DIR}/version.cmake
|
||||
)
|
||||
|
||||
### Compile library
|
||||
|
||||
SET(core_utils_noinst_HEADERS
|
||||
binreloc.h
|
||||
gnc-prefs.h
|
||||
gnc-prefs-p.h
|
||||
gnc-environment.h
|
||||
gnc-features.h
|
||||
gnc-filepath-utils.h
|
||||
gnc-gdate-utils.h
|
||||
@ -84,7 +104,52 @@ SET (libgnc_core_utils_HEADERS
|
||||
gnc-uri-utils.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (core-utils
|
||||
${libgnc_core_utils_SOURCES}
|
||||
${libgnc_core_utils_HEADERS}
|
||||
)
|
||||
ADD_LIBRARY (gnc-core-utils
|
||||
${core_utils_SOURCES}
|
||||
${core_utils_noinst_HEADERS}
|
||||
)
|
||||
ADD_DEPENDENCIES(gnc-core-utils gnc-vcs-info)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gnc-core-utils gnc-qof ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS} ${GOBJECT_LDFLAGS} ${GTK_MAC_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gnc-core-utils
|
||||
PRIVATE -DG_LOG_DOMAIN=\"gnc.core-utils\" ${GTK_MAC_CFLAGS_OTHER})
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gnc-core-utils PUBLIC
|
||||
${CMAKE_CURRENT_BINARY_DIR} # for headers generated in core-utils build directory
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${GUILE_INCLUDE_DIRS}
|
||||
${GTK_MAC_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
IF (MAC_INTEGRATION)
|
||||
TARGET_COMPILE_OPTIONS(gnc-core-utils PRIVATE ${OSX_EXTRA_COMPILE_FLAGS})
|
||||
TARGET_LINK_LIBRARIES(gnc-core-utils ${OSX_EXTRA_LIBRARIES})
|
||||
ENDIF(MAC_INTEGRATION)
|
||||
|
||||
INSTALL(TARGETS gnc-core-utils
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
||||
|
||||
# Scheme
|
||||
|
||||
SET (core_utils_SCHEME core-utils.scm)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash)
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS src/core-utils)
|
||||
SET(GUILE_LIBRARY_DIRS src/core-utils)
|
||||
SET(GUILE_DEPENDS gnc-core-utils)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-core-utils
|
||||
"${core_utils_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
|
@ -1,21 +1,20 @@
|
||||
# CMakeLists.txt for src/engine
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.engine\")
|
||||
SET(engine_noinst_HEADERS
|
||||
AccountP.h
|
||||
ScrubP.h
|
||||
SplitP.h
|
||||
SX-book.h
|
||||
SX-ttinfo.h
|
||||
TransactionP.h
|
||||
gnc-hooks-scm.h
|
||||
gnc-lot.h
|
||||
gnc-lot-p.h
|
||||
gnc-pricedb-p.h
|
||||
policy-p.h
|
||||
)
|
||||
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for pow.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof) # for qof.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module) # for gnc-module.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils) # for gnc-glib-utils.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_SOURCE_DIR}) # for <Account.h>
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_BINARY_DIR}) # for iso-4217-currencies.c
|
||||
|
||||
SET (libgncmod_engine_HEADERS
|
||||
SET (engine_HEADERS
|
||||
Account.h
|
||||
FreqSpec.h
|
||||
Recurrence.h
|
||||
@ -25,6 +24,7 @@ SET (libgncmod_engine_HEADERS
|
||||
Query.h
|
||||
Scrub.h
|
||||
Scrub2.h
|
||||
ScrubBusiness.h
|
||||
Scrub3.h
|
||||
Split.h
|
||||
TransLog.h
|
||||
@ -32,6 +32,7 @@ SET (libgncmod_engine_HEADERS
|
||||
cap-gains.h
|
||||
cashobjects.h
|
||||
engine-helpers.h
|
||||
engine-helpers-guile.h
|
||||
glib-helpers.h
|
||||
gnc-budget.h
|
||||
gnc-commodity.h
|
||||
@ -54,6 +55,7 @@ SET (libgncmod_engine_HEADERS
|
||||
gncEmployeeP.h
|
||||
gncEntry.h
|
||||
gncEntryP.h
|
||||
gncIDSearch.h
|
||||
gncInvoice.h
|
||||
gncInvoiceP.h
|
||||
gncJob.h
|
||||
@ -70,7 +72,7 @@ SET (libgncmod_engine_HEADERS
|
||||
|
||||
# Command to generate the swig-engine.c wrapper file
|
||||
SET (SWIG_ENGINE_C ${CMAKE_CURRENT_BINARY_DIR}/swig-engine.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_ENGINE_C} ${CMAKE_CURRENT_SOURCE_DIR}/engine.i ${libgncmod_engine_HEADERS})
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_ENGINE_C} ${CMAKE_CURRENT_SOURCE_DIR}/engine.i ${engine_HEADERS})
|
||||
|
||||
# Command to generate the iso-4217-currencies.c file
|
||||
SET (ISO_4217_C ${CMAKE_CURRENT_BINARY_DIR}/iso-4217-currencies.c)
|
||||
@ -78,15 +80,18 @@ ADD_CUSTOM_COMMAND (
|
||||
OUTPUT ${ISO_4217_C}
|
||||
DEPENDS iso-4217-currencies.xml iso-currencies-to-c.xsl
|
||||
COMMAND
|
||||
${XSLTPROC} -o ${ISO_4217_C} "${CMAKE_CURRENT_SOURCE_DIR}/iso-currencies-to-c.xsl" "${CMAKE_CURRENT_SOURCE_DIR}/iso-4217-currencies.xml"
|
||||
${LIBXSLT_XSLTPROC_EXECUTABLE} -o ${ISO_4217_C} "${CMAKE_CURRENT_SOURCE_DIR}/iso-currencies-to-c.xsl" "${CMAKE_CURRENT_SOURCE_DIR}/iso-4217-currencies.xml"
|
||||
)
|
||||
# Add dependency on iso-4217-currencies.c
|
||||
SET_SOURCE_FILES_PROPERTIES (gnc-commodity.c PROPERTIES OBJECT_DEPENDS ${ISO_4217_C})
|
||||
SET_SOURCE_FILES_PROPERTIES (gnc-commodity.c PROPERTIES OBJECT_DEPENDS "${ISO_4217_C};${CONFIG_H}")
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgncmod_engine_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
# Add dependency on swig-runtime.h
|
||||
SET_SOURCE_FILES_PROPERTIES (gnc-hooks.c engine-helpers.c kvp-scm.c glib-helpers.c PROPERTIES OBJECT_DEPENDS ${SWIG_RUNTIME_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (gnc-hooks.c engine-helpers.c kvp-scm.cpp glib-helpers.c PROPERTIES OBJECT_DEPENDS "${CONFIG_H};${SWIG_RUNTIME_H}")
|
||||
|
||||
SET (libgncmod_engine_SOURCES
|
||||
SET (engine_SOURCES
|
||||
Account.c
|
||||
Recurrence.c
|
||||
Query.c
|
||||
@ -96,6 +101,7 @@ SET (libgncmod_engine_SOURCES
|
||||
Scrub.c
|
||||
Scrub2.c
|
||||
Scrub3.c
|
||||
ScrubBusiness.c
|
||||
Split.c
|
||||
TransLog.c
|
||||
Transaction.c
|
||||
@ -118,9 +124,11 @@ SET (libgncmod_engine_SOURCES
|
||||
gncAddress.c
|
||||
gncBillTerm.c
|
||||
gncBusGuile.c
|
||||
gncBusiness.c
|
||||
gncCustomer.c
|
||||
gncEmployee.c
|
||||
gncEntry.c
|
||||
gncIDSearch.c
|
||||
gncInvoice.c
|
||||
gncJob.c
|
||||
gncOrder.c
|
||||
@ -129,10 +137,74 @@ SET (libgncmod_engine_SOURCES
|
||||
gncVendor.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
#SET_SOURCE_FILES_PROPERTIES (${libgncmod_engine_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (engine
|
||||
${libgncmod_engine_SOURCES}
|
||||
${libgncmod_engine_HEADERS}
|
||||
)
|
||||
ADD_LIBRARY (gncmod-engine
|
||||
${engine_SOURCES}
|
||||
${engine_HEADERS}
|
||||
${engine_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-engine gnc-core-utils gnc-module gnc-qof ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gncmod-engine PRIVATE -DG_LOG_DOMAIN=\"gnc.engine\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gncmod-engine
|
||||
PRIVATE ${CMAKE_CURRENT_BINARY_DIR} # for iso-4217-currencies.c
|
||||
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
INSTALL(TARGETS gncmod-engine
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${engine_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
# Scheme
|
||||
|
||||
SET (engine_SCHEME_0
|
||||
engine.scm
|
||||
business-core.scm
|
||||
)
|
||||
|
||||
SET (engine_SCHEME_1
|
||||
commodity-table.scm
|
||||
engine-interface.scm
|
||||
engine-utilities.scm
|
||||
gnc-numeric.scm
|
||||
)
|
||||
|
||||
SET(BACKEND_DEPENDS gncmod-backend-xml-link)
|
||||
|
||||
|
||||
IF(WITH_SQL)
|
||||
LIST(APPEND BACKEND_DEPENDS gncmod-backend-dbi-link)
|
||||
ENDIF(WITH_SQL)
|
||||
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS src/gnc-module)
|
||||
SET(GUILE_LIBRARY_DIRS src/gnc-module)
|
||||
SET(GUILE_DEPENDS ${BACKEND_DEPENDS} gnc-module gncmod-engine scm-gnc-module)
|
||||
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-engine-0
|
||||
"${engine_SCHEME_0}"
|
||||
gnucash
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-engine-1
|
||||
"${engine_SCHEME_1}"
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
"scm-engine-0;${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(scm-engine ALL DEPENDS scm-engine-1 scm-engine-0)
|
||||
|
@ -1,33 +1,59 @@
|
||||
# CMakeLists.txt for src/gnc-module
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.module\")
|
||||
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_SOURCE_DIR}) # when building swig-gnc-module.c
|
||||
|
||||
# Command to generate the swig-engine.c wrapper file
|
||||
SET (SWIG_GNC_MODULE_C ${CMAKE_CURRENT_BINARY_DIR}/swig-gnc-module.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_GNC_MODULE_C} ${CMAKE_CURRENT_SOURCE_DIR}/gnc-module.i)
|
||||
|
||||
SET (libgnc_module_SOURCES
|
||||
SET (gnc_module_SOURCES
|
||||
gnc-module.c
|
||||
${SWIG_GNC_MODULE_C}
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_module_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (${gnc_module_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET (libgnc_module_HEADERS
|
||||
SET (gnc_module_HEADERS
|
||||
gnc-module.h
|
||||
gnc-module-api.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gnc-module
|
||||
${libgnc_module_SOURCES}
|
||||
${libgnc_module_HEADERS}
|
||||
)
|
||||
${gnc_module_SOURCES}
|
||||
${gnc_module_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gnc-module gnc-qof ${GUILE_LDFLAGS} ${GMODULE_LDFLAGS} ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gnc-module PRIVATE -DG_LOG_DOMAIN=\"gnc.module\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gnc-module
|
||||
PRIVATE ${GUILE_INCLUDE_DIRS}
|
||||
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
INSTALL(TARGETS gnc-module
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${gnc_module_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
# --- Compile Scheme file(s) ---
|
||||
|
||||
SET (gnc_module_SCHEME gnc-module.scm)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash)
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS "")
|
||||
SET(GUILE_LIBRARY_DIRS "")
|
||||
SET(GUILE_DEPENDS gnc-module)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-gnc-module
|
||||
"${gnc_module_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
60
src/gnome-search/CMakeLists.txt
Normal file
60
src/gnome-search/CMakeLists.txt
Normal file
@ -0,0 +1,60 @@
|
||||
|
||||
SET (gnome_search_SOURCES
|
||||
gncmod-gnome-search.c
|
||||
gnc-general-search.c
|
||||
dialog-search.c
|
||||
search-account.c
|
||||
search-boolean.c
|
||||
search-core-type.c
|
||||
search-core-utils.c
|
||||
search-date.c
|
||||
search-double.c
|
||||
search-int64.c
|
||||
search-numeric.c
|
||||
search-reconciled.c
|
||||
search-string.c
|
||||
)
|
||||
|
||||
SET (gnome_search_HEADERS
|
||||
dialog-search.h
|
||||
gnc-general-search.h
|
||||
)
|
||||
|
||||
SET (gnome_search_noinst_HEADERS
|
||||
search-account.h
|
||||
search-boolean.h
|
||||
search-core-type.h
|
||||
search-core-utils.h
|
||||
search-date.h
|
||||
search-double.h
|
||||
search-int64.h
|
||||
search-numeric.h
|
||||
search-reconciled.h
|
||||
search-string.h
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${gnome_search_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gncmod-gnome-search
|
||||
${gnome_search_SOURCES}
|
||||
${gnome_search_HEADERS}
|
||||
${gnome_search_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-gnome-search gnc-qof gncmod-gnome-utils ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-gnome-search PRIVATE -DG_LOG_DOMAIN=\"gnc.gui.search\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-gnome-search PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
INSTALL(TARGETS gncmod-gnome-search
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${gnome_search_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
SET(gnome_search_GLADE dialog-search.glade)
|
||||
|
||||
INSTALL(FILES ${gnome_search_GLADE} DESTINATION share/gnucash/gtkbuilder)
|
264
src/gnome-utils/CMakeLists.txt
Normal file
264
src/gnome-utils/CMakeLists.txt
Normal file
@ -0,0 +1,264 @@
|
||||
# Note that src/gnome-utils CANNOT depend on src/gnome!
|
||||
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
ADD_SUBDIRECTORY(gtkbuilder)
|
||||
ADD_SUBDIRECTORY(ui)
|
||||
|
||||
SET (SWIG_GNOME_UTILS_C ${CMAKE_CURRENT_BINARY_DIR}/swig-gnome-utils.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_GNOME_UTILS_C} ${CMAKE_CURRENT_SOURCE_DIR}/gnome-utils.i)
|
||||
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/gschemas/org.gnucash.warnings.gschema.xml.in.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/gschemas/org.gnucash.warnings.gschema.xml.in)
|
||||
|
||||
SET (WARNINGS_SCHEMA gschemas/org.gnucash.warnings.gschema.xml.in)
|
||||
SET (GNC_WARNINGS_C ${CMAKE_CURRENT_BINARY_DIR}/gnc-warnings.c)
|
||||
SET (GNC_WARNINGS_H ${CMAKE_CURRENT_BINARY_DIR}/gnc-warnings.h)
|
||||
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${GNC_WARNINGS_C}
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${WARNINGS_SCHEMA} make-gnc-warnings-c.xsl
|
||||
COMMAND
|
||||
${LIBXSLT_XSLTPROC_EXECUTABLE} -o ${GNC_WARNINGS_C} ${CMAKE_CURRENT_SOURCE_DIR}/make-gnc-warnings-c.xsl ${CMAKE_CURRENT_BINARY_DIR}/${WARNINGS_SCHEMA}
|
||||
)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${GNC_WARNINGS_H}
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${WARNINGS_SCHEMA} make-gnc-warnings-h.xsl
|
||||
COMMAND
|
||||
${LIBXSLT_XSLTPROC_EXECUTABLE} -o ${GNC_WARNINGS_H} ${CMAKE_CURRENT_SOURCE_DIR}/make-gnc-warnings-h.xsl ${CMAKE_CURRENT_BINARY_DIR}/${WARNINGS_SCHEMA}
|
||||
)
|
||||
|
||||
SET (gnome_utils_SOURCES
|
||||
account-quickfill.c
|
||||
assistant-xml-encoding.c
|
||||
cursors.c
|
||||
dialog-account.c
|
||||
dialog-book-close.c
|
||||
dialog-commodity.c
|
||||
dialog-dup-trans.c
|
||||
dialog-file-access.c
|
||||
dialog-object-references.c
|
||||
dialog-options.c
|
||||
dialog-preferences.c
|
||||
dialog-query-view.c
|
||||
dialog-reset-warnings.c
|
||||
dialog-tax-table.c
|
||||
dialog-totd.c
|
||||
dialog-transfer.c
|
||||
dialog-userpass.c
|
||||
dialog-utils.c
|
||||
gnc-account-sel.c
|
||||
gnc-amount-edit.c
|
||||
gnc-autosave.c
|
||||
gnc-cell-renderer-date.c
|
||||
gnc-cell-renderer-popup.c
|
||||
gnc-cell-renderer-popup-entry.c
|
||||
gnc-combott.c
|
||||
gnc-commodity-edit.c
|
||||
gnc-currency-edit.c
|
||||
gnc-date-delta.c
|
||||
gnc-date-edit.c
|
||||
gnc-date-format.c
|
||||
gnc-dense-cal.c
|
||||
gnc-dense-cal-model.c
|
||||
gnc-dense-cal-store.c
|
||||
gnc-embedded-window.c
|
||||
gnc-file.c
|
||||
gnc-frequency.c
|
||||
gnc-recurrence.c
|
||||
gnc-general-select.c
|
||||
gnc-gnome-utils.c
|
||||
gnc-gobject-utils.c
|
||||
gnc-gtk-utils.c
|
||||
gnc-gui-query.c
|
||||
gnc-icons.c
|
||||
gnc-keyring.c
|
||||
gnc-main-window.c
|
||||
gnc-menu-extensions.c
|
||||
gnc-plugin-file-history.c
|
||||
gnc-plugin-manager.c
|
||||
gnc-plugin-menu-additions.c
|
||||
gnc-plugin-page.c
|
||||
gnc-plugin.c
|
||||
gnc-period-select.c
|
||||
gnc-query-view.c
|
||||
gnc-splash.c
|
||||
gnc-sx-instance-dense-cal-adapter.c
|
||||
gnc-sx-list-tree-model-adapter.c
|
||||
gnc-tree-control-split-reg.c
|
||||
gnc-tree-model.c
|
||||
gnc-tree-model-account-types.c
|
||||
gnc-tree-model-account.c
|
||||
gnc-tree-model-budget.c
|
||||
gnc-tree-model-owner.c
|
||||
gnc-tree-model-commodity.c
|
||||
gnc-tree-model-price.c
|
||||
gnc-tree-model-split-reg.c
|
||||
gnc-tree-util-split-reg.c
|
||||
gnc-tree-view-account.c
|
||||
gnc-tree-view-commodity.c
|
||||
gnc-tree-view-owner.c
|
||||
gnc-tree-view-price.c
|
||||
gnc-tree-view-split-reg.c
|
||||
gnc-tree-view-sx-list.c
|
||||
gnc-tree-view.c
|
||||
${GNC_WARNINGS_C}
|
||||
gnc-window.c
|
||||
gncmod-gnome-utils.c
|
||||
misc-gnome-utils.c
|
||||
tree-view-utils.c
|
||||
search-param.c
|
||||
print-session.c
|
||||
${SWIG_GNOME_UTILS_C}
|
||||
swig-gnome-utils.c
|
||||
window-main-summarybar.c
|
||||
)
|
||||
|
||||
SET(gnome_utils_noinst_HEADERS
|
||||
dialog-tax-table.h
|
||||
gnc-autosave.h
|
||||
gnc-gobject-utils.h
|
||||
gnc-gtk-utils.h
|
||||
search-param.h
|
||||
${GNC_WARNINGS_H}
|
||||
)
|
||||
|
||||
SET (gnome_utils_HEADERS
|
||||
account-quickfill.h
|
||||
assistant-xml-encoding.h
|
||||
dialog-account.h
|
||||
dialog-book-close.h
|
||||
dialog-commodity.h
|
||||
dialog-dup-trans.h
|
||||
dialog-file-access.h
|
||||
dialog-preferences.h
|
||||
dialog-object-references.h
|
||||
dialog-options.h
|
||||
dialog-query-view.h
|
||||
dialog-reset-warnings.h
|
||||
dialog-totd.h
|
||||
dialog-transfer.h
|
||||
dialog-utils.h
|
||||
gnc-account-sel.h
|
||||
gnc-amount-edit.h
|
||||
gnc-cell-renderer-date.h
|
||||
gnc-cell-renderer-popup.h
|
||||
gnc-cell-renderer-popup-entry.h
|
||||
gnc-combott.h
|
||||
gnc-commodity-edit.h
|
||||
gnc-currency-edit.h
|
||||
gnc-date-delta.h
|
||||
gnc-date-edit.h
|
||||
gnc-date-format.h
|
||||
gnc-dense-cal.h
|
||||
gnc-dense-cal-model.h
|
||||
gnc-dense-cal-store.h
|
||||
gnc-embedded-window.h
|
||||
gnc-file.h
|
||||
gnc-frequency.h
|
||||
gnc-recurrence.h
|
||||
gnc-general-select.h
|
||||
gnc-gnome-utils.h
|
||||
gnc-gui-query.h
|
||||
gnc-icons.h
|
||||
gnc-keyring.h
|
||||
gnc-main-window.h
|
||||
gnc-menu-extensions.h
|
||||
gnc-plugin-file-history.h
|
||||
gnc-plugin-manager.h
|
||||
gnc-plugin-menu-additions.h
|
||||
gnc-plugin-page.h
|
||||
gnc-plugin.h
|
||||
gnc-period-select.h
|
||||
gnc-query-view.h
|
||||
gnc-splash.h
|
||||
gnc-sx-instance-dense-cal-adapter.h
|
||||
gnc-sx-list-tree-model-adapter.h
|
||||
gnc-tree-control-split-reg.h
|
||||
gnc-tree-model.h
|
||||
gnc-tree-model-account-types.h
|
||||
gnc-tree-model-account.h
|
||||
gnc-tree-model-budget.h
|
||||
gnc-tree-model-owner.h
|
||||
gnc-tree-model-commodity.h
|
||||
gnc-tree-model-price.h
|
||||
gnc-tree-model-split-reg.h
|
||||
gnc-tree-util-split-reg.h
|
||||
gnc-tree-view-account.h
|
||||
gnc-tree-view-commodity.h
|
||||
gnc-tree-view-owner.h
|
||||
gnc-tree-view-price.h
|
||||
gnc-tree-view-split-reg.h
|
||||
gnc-tree-view-sx-list.h
|
||||
gnc-tree-view.h
|
||||
gnc-ui.h
|
||||
gnc-window.h
|
||||
misc-gnome-utils.h
|
||||
tree-view-utils.h
|
||||
print-session.h
|
||||
window-main-summarybar.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gncmod-gnome-utils
|
||||
${gnome_utils_SOURCES}
|
||||
${gnome_utils_HEADERS}
|
||||
${gnome_utils_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-gnome-utils gncmod-app-utils gncmod-engine gnc-backend-xml-utils
|
||||
${GTK2_LDFLAGS} ${GTK_MAC_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-gnome-utils PUBLIC ${GTK_MAC_CFLAGS_OTHER}
|
||||
PRIVATE -DG_LOG_DOMAIN=\"gnc.gui\")
|
||||
|
||||
IF (MAC_INTEGRATION)
|
||||
TARGET_COMPILE_OPTIONS(gncmod-gnome-utils PRIVATE ${OSX_EXTRA_COMPILE_FLAGS})
|
||||
TARGET_LINK_LIBRARIES(gncmod-gnome-utils ${OSX_EXTRA_LIBRARIES})
|
||||
ENDIF(MAC_INTEGRATION)
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-gnome-utils
|
||||
PUBLIC
|
||||
${GTK2_INCLUDE_DIRS}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
PRIVATE
|
||||
${GTK_MAC_INCLUDE_DIRS}
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-gnome-utils
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${gnome_utils_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
|
||||
# Scheme
|
||||
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS src/core-utils src/gnc-module src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/core-utils src/gnc-module)
|
||||
SET(GUILE_DEPENDS gncmod-gnome-utils scm-core-utils scm-gnc-module scm-scm)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-gnome-utils-1
|
||||
gnome-utils.scm
|
||||
gnucash
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-gnome-utils-2
|
||||
gnc-menu-extensions.scm
|
||||
""
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(scm-gnome-utils ALL DEPENDS scm-gnome-utils-2 scm-gnome-utils-1)
|
4
src/gnome-utils/gschemas/CMakeLists.txt
Normal file
4
src/gnome-utils/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
SET(gnome_utils_GSCHEMA org.gnucash.history.gschema.xml org.gnucash.warnings.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(gnome-utils-gschema "${gnome_utils_GSCHEMA}")
|
11
src/gnome-utils/gtkbuilder/CMakeLists.txt
Normal file
11
src/gnome-utils/gtkbuilder/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
12
src/gnome-utils/ui/CMakeLists.txt
Normal file
12
src/gnome-utils/ui/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
149
src/gnome/CMakeLists.txt
Normal file
149
src/gnome/CMakeLists.txt
Normal file
@ -0,0 +1,149 @@
|
||||
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
ADD_SUBDIRECTORY(gtkbuilder)
|
||||
ADD_SUBDIRECTORY(ui)
|
||||
|
||||
SET (gnc_gnome_noinst_HEADERS
|
||||
assistant-acct-period.h
|
||||
assistant-hierarchy.h
|
||||
assistant-loan.h
|
||||
assistant-stock-split.h
|
||||
dialog-fincalc.h
|
||||
dialog-find-transactions.h
|
||||
dialog-find-transactions2.h
|
||||
dialog-lot-viewer.h
|
||||
dialog-new-user.h
|
||||
dialog-print-check.h
|
||||
dialog-print-check2.h
|
||||
dialog-progress.h
|
||||
dialog-sx-editor.h
|
||||
dialog-sx-editor2.h
|
||||
dialog-sx-from-trans.h
|
||||
dialog-sx-since-last-run.h
|
||||
gnc-budget-view.h
|
||||
gnc-plugin-account-tree.h
|
||||
gnc-plugin-basic-commands.h
|
||||
gnc-plugin-budget.h
|
||||
gnc-plugin-register.h
|
||||
gnc-plugin-register2.h
|
||||
gnc-plugin-page-account-tree.h
|
||||
gnc-plugin-page-budget.h
|
||||
gnc-plugin-page-sx-list.h
|
||||
gnc-plugin-page-register.h
|
||||
gnc-plugin-page-register2.h
|
||||
gnc-split-reg.h
|
||||
gnc-split-reg2.h
|
||||
reconcile-view.h
|
||||
top-level.h
|
||||
window-reconcile.h
|
||||
window-reconcile2.h
|
||||
window-autoclear.h
|
||||
)
|
||||
|
||||
SET (SWIG_GNOME_C ${CMAKE_CURRENT_BINARY_DIR}/swig-gnome.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_GNOME_C} ${CMAKE_CURRENT_SOURCE_DIR}/gnome.i ${gnc_gnome_HEADERS})
|
||||
|
||||
SET (gnc_gnome_SOURCES
|
||||
${SWIG_GNOME_C}
|
||||
assistant-acct-period.c
|
||||
assistant-hierarchy.c
|
||||
assistant-loan.c
|
||||
assistant-stock-split.c
|
||||
dialog-commodities.c
|
||||
dialog-fincalc.c
|
||||
dialog-find-transactions.c
|
||||
dialog-find-transactions2.c
|
||||
dialog-lot-viewer.c
|
||||
dialog-new-user.c
|
||||
dialog-price-editor.c
|
||||
dialog-price-edit-db.c
|
||||
dialog-print-check.c
|
||||
dialog-print-check2.c
|
||||
dialog-progress.c
|
||||
dialog-sx-editor.c
|
||||
dialog-sx-editor2.c
|
||||
dialog-sx-from-trans.c
|
||||
dialog-sx-since-last-run.c
|
||||
dialog-tax-info.c
|
||||
gnc-budget-view.c
|
||||
gnc-plugin-account-tree.c
|
||||
gnc-plugin-basic-commands.c
|
||||
gnc-plugin-budget.c
|
||||
gnc-plugin-register.c
|
||||
gnc-plugin-register2.c
|
||||
gnc-plugin-page-account-tree.c
|
||||
gnc-plugin-page-budget.c
|
||||
gnc-plugin-page-sx-list.c
|
||||
gnc-plugin-page-register.c
|
||||
gnc-plugin-page-register2.c
|
||||
gnc-split-reg.c
|
||||
gnc-split-reg2.c
|
||||
reconcile-view.c
|
||||
top-level.c
|
||||
window-reconcile.c
|
||||
window-reconcile2.c
|
||||
window-autoclear.c
|
||||
)
|
||||
|
||||
IF (WIN32)
|
||||
SET (gnc_gnome_SOURCES ${gnc_gnome_SOURCES} ${CMAKE_SOURCE_DIR}/lib/libc/strfmon.c)
|
||||
ENDIF(WIN32)
|
||||
|
||||
ADD_LIBRARY (gnc-gnome ${gnc_gnome_SOURCES} ${gnc_gnome_noinst_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gnc-gnome gncmod-gnome-search gncmod-ledger-core gncmod-report-gnome gncmod-report-system
|
||||
gncmod-register-gnome gncmod-register-core gncmod-engine ${GTK2_LDFLAGS} ${GTK_MAC_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gnc-gnome PRIVATE -DG_LOG_DOMAIN=\"gnc.gui\" ${GTK_MAC_CFLAGS_OTHER})
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gnc-gnome
|
||||
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
PRIVATE ${CMAKE_SOURCE_DIR}/src/app-utils/calculation ${GTK_MAC_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
|
||||
IF (MAC_INTEGRATION)
|
||||
TARGET_COMPILE_OPTIONS(gnc-gnome PRIVATE ${OSX_EXTRA_COMPILE_FLAGS})
|
||||
TARGET_LINK_LIBRARIES(gnc-gnome ${OSX_EXTRA_LIBRARIES})
|
||||
ENDIF(MAC_INTEGRATION)
|
||||
|
||||
|
||||
INSTALL(TARGETS gnc-gnome
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
# No headers to install
|
||||
|
||||
# FIXME: where does LC_ALL=C come from?
|
||||
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT gnucash.appdata.xml
|
||||
COMMAND ${CMAKE_COMMAND} -E env
|
||||
LC_ALL=C
|
||||
${PERL_EXECUTABLE} ${INTLTOOL_MERGE} -x -u -c ${CMAKE_SOURCE_DIR}/po/.intltool-merge-cache ${CMAKE_SOURCE_DIR}/po
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/gnucash.appdata.xml.in gnucash.appdata.xml
|
||||
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/gnucash.appdata.xml.in
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(gnucash-appdata ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/gnucash.appdata.xml)
|
||||
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/gnucash.appdata.xml DESTINATION share/appdata)
|
||||
|
||||
#=======
|
||||
|
||||
CONFIGURE_FILE(gnucash.desktop.in.in gnucash.desktop.in)
|
||||
|
||||
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT gnucash.desktop
|
||||
COMMAND ${CMAKE_COMMAND} -E env
|
||||
LC_ALL=C
|
||||
${PERL_EXECUTABLE} ${INTLTOOL_MERGE} -d -u -c ${CMAKE_SOURCE_DIR}/po/.intltool-merge-cache ${CMAKE_SOURCE_DIR}/po
|
||||
gnucash.desktop.in gnucash.desktop
|
||||
MAIN_DEPENDENCY gnucash.desktop.in
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(gnucash-desktop ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/gnucash.desktop)
|
||||
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/gnucash.desktop DESTINATION share/applications)
|
19
src/gnome/gschemas/CMakeLists.txt
Normal file
19
src/gnome/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,19 @@
|
||||
|
||||
SET(gnome_GSCHEMA
|
||||
org.gnucash.dialogs.gschema.xml
|
||||
org.gnucash.dialogs.commodities.gschema.xml
|
||||
org.gnucash.dialogs.checkprinting.gschema.xml
|
||||
org.gnucash.dialogs.reconcile.gschema.xml
|
||||
org.gnucash.dialogs.sxs.gschema.xml
|
||||
org.gnucash.dialogs.totd.gschema.xml
|
||||
org.gnucash.gschema.xml
|
||||
org.gnucash.window.pages.account.tree.gschema.xml
|
||||
org.gnucash.window.pages.gschema.xml
|
||||
)
|
||||
|
||||
# If you edit one of the above files, you need to rerun cmake.
|
||||
# When we can use CONFIGURE_FILE() instead of GNC_CONFIGURE()
|
||||
# this issue will go away.
|
||||
|
||||
|
||||
ADD_GSCHEMA_TARGETS(gnome-gschema "${gnome_GSCHEMA}")
|
12
src/gnome/gtkbuilder/CMakeLists.txt
Normal file
12
src/gnome/gtkbuilder/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
12
src/gnome/ui/CMakeLists.txt
Normal file
12
src/gnome/ui/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
43
src/html/CMakeLists.txt
Normal file
43
src/html/CMakeLists.txt
Normal file
@ -0,0 +1,43 @@
|
||||
|
||||
SET (html_HEADERS
|
||||
gnc-html-history.h
|
||||
gnc-html.h
|
||||
gnc-html-p.h
|
||||
gnc-html-factory.h
|
||||
gnc-html-webkit.h
|
||||
gnc-html-extras.h
|
||||
gnc-html-webkit-p.h
|
||||
)
|
||||
|
||||
SET (SWIG_GNC_HTML_C ${CMAKE_CURRENT_BINARY_DIR}/swig-gnc-html.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_GNC_HTML_C} ${CMAKE_CURRENT_SOURCE_DIR}/gnc-html.i ${gncmod_html_HEADERS})
|
||||
|
||||
SET (html_SOURCES
|
||||
gncmod-html.c
|
||||
gnc-html.c
|
||||
gnc-html-history.c
|
||||
gnc-html-factory.c
|
||||
gnc-html-webkit.c
|
||||
${SWIG_GNC_HTML_C}
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gncmod-html
|
||||
${html_SOURCES}
|
||||
${html_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-html gnc-qof gnc-module gncmod-gnome-utils ${WEBKIT_LDFLAGS} ${GUILE_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-html PRIVATE -DG_LOG_DOMAIN=\"gnc.html\")
|
||||
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gncmod-html
|
||||
PUBLIC ${WEBKIT_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
INSTALL(TARGETS gncmod-html
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${html_HEADERS} DESTINATION include/gnucash)
|
@ -1,43 +1,77 @@
|
||||
# CMakeLists.txt for src/import-export
|
||||
|
||||
# ############################################################
|
||||
|
||||
IF (WITH_AQBANKING)
|
||||
ADD_SUBDIRECTORY (aqb)
|
||||
ENDIF (WITH_AQBANKING)
|
||||
ADD_SUBDIRECTORY(aqb)
|
||||
ENDIF(WITH_AQBANKING)
|
||||
ADD_SUBDIRECTORY(csv-exp)
|
||||
ADD_SUBDIRECTORY(csv-imp)
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
ADD_SUBDIRECTORY(log-replay)
|
||||
IF (WITH_OFX)
|
||||
ADD_SUBDIRECTORY(ofx)
|
||||
ENDIF(WITH_OFX)
|
||||
ADD_SUBDIRECTORY(qif)
|
||||
ADD_SUBDIRECTORY(qif-imp)
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.import\")
|
||||
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GCONF2_INCLUDE_DIRS})
|
||||
#INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
#INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for pow.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof) # for qof.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module) # for gnc-module.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils) # for gnc-glib-utils.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/app-utils)
|
||||
|
||||
SET (libgnc_import_SOURCES
|
||||
SET (generic_import_SOURCES
|
||||
import-account-matcher.c
|
||||
import-commodity-matcher.c
|
||||
import-backend.c
|
||||
import-format-dialog.c
|
||||
import-match-picker.c
|
||||
import-parse.c
|
||||
import-utilities.c
|
||||
import-settings.c
|
||||
import-match-map.c
|
||||
import-main-matcher.c
|
||||
gncmod-generic-import.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_import_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (${generic_import_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET (libgnc_import_HEADERS
|
||||
import-utilities.h
|
||||
import-settings.h
|
||||
import-match-map.h
|
||||
SET (generic_import_HEADERS
|
||||
import-parse.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gnc-import
|
||||
${libgnc_import_SOURCES}
|
||||
${libgnc_import_HEADERS}
|
||||
)
|
||||
SET (generic_import_noinst_HEADERS
|
||||
import-account-matcher.h
|
||||
import-backend.h
|
||||
import-commodity-matcher.h
|
||||
import-main-matcher.h
|
||||
import-match-picker.h
|
||||
import-settings.h
|
||||
import-utilities.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gncmod-generic-import
|
||||
${generic_import_SOURCES}
|
||||
${generic_import_HEADERS}
|
||||
${generic_import_noinst_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-generic-import gncmod-gnome-utils gncmod-engine ${GTK2_LDFLAGS} ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gncmod-generic-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-generic-import PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-generic-import
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin
|
||||
)
|
||||
|
||||
INSTALL(FILES ${generic_import_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
SET(generic_import_GLADE dialog-import.glade)
|
||||
|
||||
INSTALL(FILES ${generic_import_GLADE} DESTINATION share/gnucash/gtkbuilder)
|
||||
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${generic_import_GLADE}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder)
|
||||
ENDIF()
|
||||
|
@ -1,41 +1,76 @@
|
||||
# CMakeLists.txt for src/import-export/aqbanking
|
||||
|
||||
# ############################################################
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.import.aqbanking\")
|
||||
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GCONF2_INCLUDE_DIRS})
|
||||
#INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
#INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
#INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${GWENHYWFAR_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${AQBANKING_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for pow.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof) # for qof.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module) # for gnc-module.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils) # for gnc-glib-utils.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine)
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/app-utils)
|
||||
|
||||
SET (libgnc_aqbanking_SOURCES
|
||||
SET (aqbanking_SOURCES
|
||||
dialog-ab-trans.c
|
||||
dialog-ab-daterange.c
|
||||
assistant-ab-initial.c
|
||||
gnc-ab-getbalance.c
|
||||
gnc-ab-gettrans.c
|
||||
gnc-ab-kvp.c
|
||||
# gnc-ab-utils.c
|
||||
# gnc-gwen-gui.c
|
||||
gnc-ab-transfer.c
|
||||
gnc-ab-utils.c
|
||||
gnc-file-aqb-import.c
|
||||
gnc-gwen-gui.c
|
||||
gnc-plugin-aqbanking.c
|
||||
gncmod-aqbanking.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_aqbanking_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (${aqbanking_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET (libgnc_aqbanking_HEADERS
|
||||
SET (aqbanking_noinst_HEADERS
|
||||
dialog-ab-trans.h
|
||||
dialog-ab-daterange.h
|
||||
assistant-ab-initial.h
|
||||
gnc-ab-getbalance.h
|
||||
gnc-ab-gettrans.h
|
||||
gnc-ab-kvp.h
|
||||
# gnc-ab-utils.h
|
||||
# gnc-gwen-gui.h
|
||||
gnc-ab-transfer.h
|
||||
gnc-ab-utils.h
|
||||
gnc-file-aqb-import.h
|
||||
gnc-gwen-gui.h
|
||||
gnc-plugin-aqbanking.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gnc-aqbanking
|
||||
${libgnc_aqbanking_SOURCES}
|
||||
${libgnc_aqbanking_HEADERS}
|
||||
ADD_LIBRARY (gncmod-aqbanking
|
||||
${aqbanking_SOURCES}
|
||||
${aqbanking_noinst_HEADERS}
|
||||
)
|
||||
|
||||
SET(AQB_EXPORT_SYMBOLS "")
|
||||
IF (WIN32)
|
||||
SET(AQB_EXPORT_SYMBOLS "-Wl,--export-all-symbols")
|
||||
ENDIF()
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-aqbanking gnc-gnome gncmod-gnome-utils gncmod-generic-import gncmod-register-core
|
||||
gncmod-register-gnome gncmod-ledger-core gncmod-engine gnc-qof ${AQB_EXPORT_SYMBOLS} ${AQBANKING_LDFLAGS} ${GWENHYWFAR_LDFLAGS}
|
||||
${GWENGUI_GTK2_LDFLAGS} ${GNOME_LDFLAGS} ${KTOBLZCHECK_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-aqbanking PRIVATE -DG_LOG_DOMAIN=\"gnc.import.aqbanking\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-aqbanking PRIVATE ${AQBANKING_INCLUDE_DIRS}
|
||||
${GWENHYWFAR_INCLUDE_DIRS} ${KTOBLZCHECK_INCLUDE_DIRS})
|
||||
|
||||
INSTALL(TARGETS gncmod-aqbanking
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
||||
|
||||
SET(aqbanking_GLADE assistant-ab-initial.glade dialog-ab.glade)
|
||||
|
||||
SET(aqbanking_UI gnc-plugin-aqbanking-ui.xml)
|
||||
|
||||
INSTALL(FILES ${aqbanking_GLADE} DESTINATION share/gnucash/gtkbuilder)
|
||||
|
||||
INSTALL(FILES ${aqbanking_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${aqbanking_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
FILE(COPY ${aqbanking_GLADE}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder)
|
||||
ENDIF()
|
4
src/import-export/aqb/gschemas/CMakeLists.txt
Normal file
4
src/import-export/aqb/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
SET(aqb_GSCHEMA org.gnucash.dialogs.import.hbci.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(aqb-gschema "${aqb_GSCHEMA}")
|
47
src/import-export/csv-exp/CMakeLists.txt
Normal file
47
src/import-export/csv-exp/CMakeLists.txt
Normal file
@ -0,0 +1,47 @@
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
|
||||
SET(csv_export_SOURCES
|
||||
gncmod-csv-export.c
|
||||
gnc-plugin-csv-export.c
|
||||
assistant-csv-export.c
|
||||
csv-tree-export.c
|
||||
csv-transactions-export.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${csv_export_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET(csv_export_noinst_HEADERS
|
||||
gnc-plugin-csv-export.h
|
||||
assistant-csv-export.h
|
||||
csv-tree-export.h
|
||||
csv-transactions-export.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-csv-export ${csv_export_noinst_HEADERS} ${csv_export_SOURCES})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-csv-export gncmod-register-gnome gncmod-register-core gncmod-ledger-core gncmod-engine
|
||||
gnc-module gncmod-gnome-utils gnc-gnome gncmod-app-utils gnc-core-utils)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-csv-export PRIVATE -DG_LOG_DOMAIN=\"gnc.export.csv\")
|
||||
|
||||
INSTALL(TARGETS gncmod-csv-export
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install.
|
||||
|
||||
SET(csv_export_GLADE assistant-csv-export.glade)
|
||||
|
||||
INSTALL(FILES ${csv_export_GLADE} DESTINATION share/gnucash/gtkbuilder)
|
||||
|
||||
SET(csv_export_UI gnc-plugin-csv-export-ui.xml)
|
||||
|
||||
INSTALL(FILES ${csv_export_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${csv_export_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
FILE(COPY ${csv_export_GLADE}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder)
|
||||
ENDIF()
|
5
src/import-export/csv-exp/gschemas/CMakeLists.txt
Normal file
5
src/import-export/csv-exp/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,5 @@
|
||||
|
||||
SET(csv_exp_GSCHEMA org.gnucash.dialogs.export.csv.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(csv-exp-gschema "${csv_exp_GSCHEMA}")
|
||||
|
68
src/import-export/csv-imp/CMakeLists.txt
Normal file
68
src/import-export/csv-imp/CMakeLists.txt
Normal file
@ -0,0 +1,68 @@
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
|
||||
SET(csv_import_SOURCES
|
||||
gncmod-csv-import.c
|
||||
assistant-csv-account-import.c
|
||||
assistant-csv-fixed-trans-import.c
|
||||
assistant-csv-trans-import.c
|
||||
gnc-plugin-csv-import.c
|
||||
csv-account-import.c
|
||||
csv-fixed-trans-import.c
|
||||
gnc-csv-account-map.c
|
||||
gnc-csv-model.c
|
||||
gnc-csv-gnumeric-popup.c
|
||||
gnc-csv-trans-settings.c
|
||||
${CMAKE_SOURCE_DIR}/lib/stf/stf-parse.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${csv_import_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET(csv_import_noinst_HEADERS
|
||||
assistant-csv-account-import.h
|
||||
assistant-csv-fixed-trans-import.h
|
||||
assistant-csv-trans-import.h
|
||||
gnc-plugin-csv-import.h
|
||||
csv-account-import.h
|
||||
csv-fixed-trans-import.h
|
||||
gnc-csv-account-map.h
|
||||
gnc-csv-model.h
|
||||
gnc-csv-gnumeric-popup.h
|
||||
gnc-csv-trans-settings.h
|
||||
${CMAKE_SOURCE_DIR}/lib/stf/stf-parse.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-csv-import ${csv_import_noinst_HEADERS} ${csv_import_SOURCES})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-csv-import ${GOFFICE_LDFLAGS} gncmod-generic-import gncmod-gnome-utils
|
||||
gncmod-app-utils gncmod-engine gnc-core-utils gnc-module)
|
||||
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-csv-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import.csv\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-csv-import PRIVATE
|
||||
${CMAKE_SOURCE_DIR}/lib ${GOFFICE_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
INSTALL(TARGETS gncmod-csv-import
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
# No headers to install
|
||||
|
||||
SET(csv_import_GLADE assistant-csv-account-import.glade assistant-csv-fixed-trans-import.glade
|
||||
assistant-csv-trans-import.glade)
|
||||
|
||||
INSTALL(FILES ${csv_import_GLADE} DESTINATION share/gnucash/gtkbuilder)
|
||||
|
||||
SET(csv_import_UI gnc-plugin-csv-import-ui.xml)
|
||||
|
||||
INSTALL(FILES ${csv_import_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${csv_import_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
FILE(COPY ${csv_import_GLADE}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder)
|
||||
ENDIF()
|
3
src/import-export/csv-imp/gschemas/CMakeLists.txt
Normal file
3
src/import-export/csv-imp/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,3 @@
|
||||
SET(csv_imp_GSCHEMA org.gnucash.dialogs.import.csv.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(csv-imp-gschema "${csv_imp_GSCHEMA}")
|
4
src/import-export/gschemas/CMakeLists.txt
Normal file
4
src/import-export/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
SET(generic_import_GSCHEMA org.gnucash.dialogs.import.generic.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(generic-import-gschema "${generic_import_GSCHEMA}")
|
36
src/import-export/log-replay/CMakeLists.txt
Normal file
36
src/import-export/log-replay/CMakeLists.txt
Normal file
@ -0,0 +1,36 @@
|
||||
|
||||
SET(log_replay_SOURCES
|
||||
gnc-log-replay.c
|
||||
gnc-plugin-log-replay.c
|
||||
gncmod-log-replay.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${log_replay_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET(log_replay_noinst_HEADERS
|
||||
gnc-log-replay.h
|
||||
gnc-plugin-log-replay.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-log-replay ${log_replay_SOURCES} ${log_replay_noinst_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-log-replay gncmod-gnome-utils gncmod-app-utils gncmod-engine
|
||||
gnc-core-utils gnc-module gnc-qof ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-log-replay PRIVATE -DG_LOG_DOMAIN=\"gnc.import.log-replay\")
|
||||
|
||||
INSTALL(TARGETS gncmod-log-replay
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install.
|
||||
|
||||
SET(log_replay_UI gnc-plugin-log-replay-ui.xml)
|
||||
|
||||
INSTALL(FILES ${log_replay_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${log_replay_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
ENDIF()
|
41
src/import-export/ofx/CMakeLists.txt
Normal file
41
src/import-export/ofx/CMakeLists.txt
Normal file
@ -0,0 +1,41 @@
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
|
||||
SET(ofx_SOURCES
|
||||
gnc-ofx-import.c
|
||||
gnc-ofx-kvp.c
|
||||
gncmod-ofx-import.c
|
||||
gnc-plugin-ofx.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${ofx_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET(ofx_noinst_HEADERS
|
||||
gnc-ofx-import.h
|
||||
gnc-ofx-kvp.h
|
||||
gnc-plugin-ofx.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-ofx ${ofx_SOURCES} ${ofx_noinst_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-ofx gncmod-generic-import gncmod-engine gncmod-app-utils gnc-core-utils
|
||||
gncmod-gnome-utils gnc-qof ${LIBOFX_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-ofx PRIVATE -DG_LOG_DOMAIN=\"gnc.import.ofx\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-ofx PRIVATE ${LIBOFX_INCLUDE_DIRS})
|
||||
|
||||
INSTALL(TARGETS gncmod-ofx
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
SET(ofx_UI gnc-plugin-ofx-ui.xml)
|
||||
|
||||
INSTALL(FILES ${ofx_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${ofx_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
ENDIF()
|
4
src/import-export/ofx/gschemas/CMakeLists.txt
Normal file
4
src/import-export/ofx/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
set(ofx_GSCHEMA org.gnucash.dialogs.import.ofx.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(ofx-gschema "${ofx_GSCHEMA}")
|
90
src/import-export/qif-imp/CMakeLists.txt
Normal file
90
src/import-export/qif-imp/CMakeLists.txt
Normal file
@ -0,0 +1,90 @@
|
||||
# CMakeLists.txt for src/import_export/qif-imp
|
||||
|
||||
ADD_SUBDIRECTORY(gschemas)
|
||||
|
||||
SET (qif_import_SOURCES
|
||||
dialog-account-picker.c
|
||||
assistant-qif-import.c
|
||||
gnc-plugin-qif-import.c
|
||||
gncmod-qif-import.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${qif_import_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET (qif_import_noinst_HEADERS
|
||||
dialog-account-picker.h
|
||||
assistant-qif-import.h
|
||||
gnc-plugin-qif-import.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gncmod-qif-import ${qif_import_SOURCES} ${qif_import_noinst_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-qif-import gncmod-app-utils gncmod-gnome-utils gnc-gnome)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-qif-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import.qif.import\")
|
||||
|
||||
INSTALL(TARGETS gncmod-qif-import
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install.
|
||||
|
||||
|
||||
# Scheme
|
||||
|
||||
SET (qif_import_SCHEME
|
||||
qif-dialog-utils.scm
|
||||
qif-file.scm
|
||||
qif-guess-map.scm
|
||||
qif-merge-groups.scm
|
||||
qif-objects.scm
|
||||
qif-parse.scm
|
||||
qif-to-gnc.scm
|
||||
qif-utils.scm
|
||||
qif-import.scm # yes, included in both SETs
|
||||
)
|
||||
|
||||
SET(qif_import_SCHEME_2
|
||||
qif-import.scm
|
||||
)
|
||||
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS src/core-utils src/gnc-module src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/core-utils src/gnc-module src/gnome)
|
||||
SET(GUILE_DEPENDS gncmod-qif-import scm-core-utils scm-gnc-module scm-scm)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-qif-import-2
|
||||
"${qif_import_SCHEME_2}"
|
||||
"gnucash/import-export"
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-qif-import
|
||||
"${qif_import_SCHEME}"
|
||||
"qif-import"
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
SET(qif_import_GLADE assistant-qif-import.glade dialog-account-picker.glade)
|
||||
|
||||
INSTALL(FILES ${qif_import_GLADE} DESTINATION share/gnucash/gtkbuilder)
|
||||
|
||||
SET(qif_import_UI gnc-plugin-qif-import-ui.xml)
|
||||
|
||||
INSTALL(FILES ${qif_import_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${qif_import_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
FILE(COPY ${qif_import_GLADE}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder)
|
||||
ENDIF()
|
4
src/import-export/qif-imp/gschemas/CMakeLists.txt
Normal file
4
src/import-export/qif-imp/gschemas/CMakeLists.txt
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
set(qif_imp_GSCHEMA org.gnucash.dialogs.import.qif.gschema.xml)
|
||||
|
||||
ADD_GSCHEMA_TARGETS(qif-imp-gschema "${qif_imp_GSCHEMA}")
|
33
src/import-export/qif/CMakeLists.txt
Normal file
33
src/import-export/qif/CMakeLists.txt
Normal file
@ -0,0 +1,33 @@
|
||||
|
||||
SET(qif_SOURCES
|
||||
qif-context.c
|
||||
qif-defaults.c
|
||||
qif-file.c
|
||||
qif-objects.c
|
||||
qif-parse.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${qif_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET(qif_noinst_HEADERS
|
||||
qif-file.h
|
||||
qif-defaults.h
|
||||
qif-import-p.h
|
||||
qif-import.h
|
||||
qif-objects.h
|
||||
qif-objects-p.h
|
||||
qif-parse.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-qif ${qif_noinst_HEADERS} ${qif_SOURCES})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-qif gncmod-generic-import gncmod-engine gnc-qof ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-qif PRIVATE -DG_LOG_DOMAIN=\"gnc.import.qif\")
|
||||
|
||||
INSTALL(TARGETS gncmod-qif
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install.
|
@ -1,41 +1,80 @@
|
||||
# CMakeLists.txt for src/libqof
|
||||
|
||||
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"qof\")
|
||||
SET (gnc_qof_HEADERS
|
||||
qof/gnc-aqbanking-templates.h
|
||||
qof/gnc-date-p.h
|
||||
qof/gnc-date.h
|
||||
qof/gnc-numeric.h
|
||||
qof/gnc-datetime.hpp
|
||||
qof/gnc-rational.hpp
|
||||
qof/gnc-timezone.hpp
|
||||
qof/guid.h
|
||||
qof/kvp_frame.hpp
|
||||
qof/kvp-value.hpp
|
||||
qof/qof.h
|
||||
qof/qofbackend-p.h
|
||||
qof/qofbackend.h
|
||||
qof/qofbook.h
|
||||
qof/qofbookslots.h
|
||||
qof/qofchoice.h
|
||||
qof/qofclass.h
|
||||
qof/qofevent.h
|
||||
qof/qofid-p.h
|
||||
qof/qofid.h
|
||||
qof/qofinstance-p.h
|
||||
qof/qofinstance.h
|
||||
qof/qoflog.h
|
||||
qof/qofobject.h
|
||||
qof/qofquery.h
|
||||
qof/qofquerycore.h
|
||||
qof/qofsession.h
|
||||
qof/qofutil.h
|
||||
qof/qof-gobject.h
|
||||
qof/qof-string-cache.h
|
||||
)
|
||||
SET (gnc_qof_noinst_HEADERS
|
||||
qof/qofbook-p.h
|
||||
qof/qofclass-p.h
|
||||
qof/gnc-date-p.h
|
||||
qof/qofevent-p.h
|
||||
qof/gnc-int128.hpp
|
||||
qof/qofobject-p.h
|
||||
qof/qofquery-p.h
|
||||
qof/qofquerycore-p.h
|
||||
qof/qofsession-p.h
|
||||
)
|
||||
|
||||
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
|
||||
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
|
||||
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_BINARY_DIR}/.. ) # for config.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/lib/libc) # for strptime.h
|
||||
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src) # for platform.h
|
||||
|
||||
SET (libgnc_qof_SOURCES
|
||||
qof/gnc-date.c
|
||||
qof/gnc-numeric.c
|
||||
qof/guid.c
|
||||
qof/kvp-util.c
|
||||
qof/kvp_frame.c
|
||||
qof/md5.c
|
||||
qof/qofbackend.c
|
||||
qof/qofbook.c
|
||||
qof/qofchoice.c
|
||||
qof/qofclass.c
|
||||
qof/qofevent.c
|
||||
qof/qofid.c
|
||||
qof/qofinstance.c
|
||||
qof/qoflog.c
|
||||
qof/qofobject.c
|
||||
qof/qofquery.c
|
||||
qof/qofquerycore.c
|
||||
qof/qofreference.c
|
||||
qof/qofsession.c
|
||||
qof/qofutil.c
|
||||
qof/qof-string-cache.c
|
||||
SET (gnc_qof_SOURCES
|
||||
qof/gnc-aqbanking-templates.cpp
|
||||
qof/gnc-date.cpp
|
||||
qof/gnc-datetime.cpp
|
||||
qof/gnc-int128.cpp
|
||||
qof/gnc-numeric.cpp
|
||||
qof/gnc-rational.cpp
|
||||
qof/gnc-datetime.cpp
|
||||
qof/gnc-timezone.cpp
|
||||
qof/guid.cpp
|
||||
qof/kvp_frame.cpp
|
||||
qof/kvp-value.cpp
|
||||
qof/qofbackend.cpp
|
||||
qof/qofbook.cpp
|
||||
qof/qofchoice.cpp
|
||||
qof/qofclass.cpp
|
||||
qof/qofevent.cpp
|
||||
qof/qofid.cpp
|
||||
qof/qofinstance.cpp
|
||||
qof/qoflog.cpp
|
||||
qof/qofobject.cpp
|
||||
qof/qofquery.cpp
|
||||
qof/qofquerycore.cpp
|
||||
qof/qofsession.cpp
|
||||
qof/qofutil.cpp
|
||||
qof/qof-string-cache.cpp
|
||||
)
|
||||
IF (WIN32)
|
||||
ADD_DEFINITIONS (-DOS_WIN32)
|
||||
SET (libgnc_qof_SOURCES ${libgnc_qof_SOURCES}
|
||||
qof/qof-win32.c
|
||||
SET (gnc_qof_SOURCES ${gnc_qof_SOURCES}
|
||||
qof/qof-win32.cpp
|
||||
../../lib/libc/strptime.c
|
||||
../../lib/libc/localtime_r.c
|
||||
../../lib/libc/gmtime_r.c
|
||||
@ -43,40 +82,40 @@ IF (WIN32)
|
||||
ENDIF (WIN32)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${libgnc_qof_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
SET_SOURCE_FILES_PROPERTIES (${gnc_qof_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET (libgnc_qof_HEADERS
|
||||
qof/gnc-date-p.h
|
||||
qof/gnc-date.h
|
||||
qof/gnc-numeric.h
|
||||
qof/guid.h
|
||||
qof/kvp-util-p.h
|
||||
qof/kvp-util.h
|
||||
qof/kvp_frame.h
|
||||
qof/qof.h
|
||||
qof/qofbackend-p.h
|
||||
qof/qofbackend.h
|
||||
qof/qofbook.h
|
||||
qof/qofbookslots.h
|
||||
qof/qofchoice.h
|
||||
qof/qofclass.h
|
||||
qof/qofevent.h
|
||||
qof/qofid-p.h
|
||||
qof/qofid.h
|
||||
qof/qofinstance-p.h
|
||||
qof/qofinstance.h
|
||||
qof/qoflog.h
|
||||
qof/qofobject.h
|
||||
qof/qofquery.h
|
||||
qof/qofquerycore.h
|
||||
qof/qofreference.h
|
||||
qof/qofsession.h
|
||||
qof/qofutil.h
|
||||
qof/qof-gobject.h
|
||||
qof/qof-string-cache.h
|
||||
ADD_LIBRARY (gnc-qof
|
||||
${gnc_qof_SOURCES}
|
||||
${gnc_qof_HEADERS}
|
||||
${gnc_qof_noinst_HEADERS}
|
||||
)
|
||||
|
||||
ADD_LIBRARY (qof
|
||||
${libgnc_qof_SOURCES}
|
||||
${libgnc_qof_HEADERS}
|
||||
)
|
||||
TARGET_LINK_LIBRARIES(gnc-qof ${Boost_DATE_TIME_LIBRARIES} ${REGEX_LDFLAGS} ${GMODULE_LDFLAGS} ${GLIB2_LDFLAGS} ${GOBJECT_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gnc-qof PRIVATE -DG_LOG_DOMAIN=\"qof\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gnc-qof PUBLIC
|
||||
${CMAKE_BINARY_DIR}/src # for config.h
|
||||
${CMAKE_SOURCE_DIR}/src # for platform.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/qof
|
||||
${GLIB2_INCLUDE_DIRS}
|
||||
${LIBINTL_INCLUDE_PATH}
|
||||
${REGEX_INCLUDE_PATH}
|
||||
${CMAKE_SOURCE_DIR}/lib/libc # for strptime.h
|
||||
)
|
||||
|
||||
INSTALL(TARGETS gnc-qof
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
INSTALL(FILES ${gnc_qof_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
SET(qof_test_HEADERS
|
||||
qof/kvp_frame.hpp
|
||||
qof/qofbook.h
|
||||
qof/qofinstance.h
|
||||
qof/qofobject.h
|
||||
qof/qofsession.h
|
||||
)
|
||||
|
||||
INSTALL(FILES ${qof_test_HEADERS} DESTINATION libexec/gnucash/src/libqof/qof/test)
|
||||
|
119
src/pixmaps/CMakeLists.txt
Normal file
119
src/pixmaps/CMakeLists.txt
Normal file
@ -0,0 +1,119 @@
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE
|
||||
)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/pixmaps
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
FOREACH(dir 256x256 128x128 96x96 64x64 48x48)
|
||||
INSTALL(
|
||||
FILES ${CMAKE_CURRENT_SOURCE_DIR}/gnucash-icon-${dir}.png
|
||||
RENAME gnucash-icon.png
|
||||
DESTINATION share/icons/hicolor/${dir}/apps)
|
||||
IF(GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${CMAKE_CURRENT_SOURCE_DIR}/gnucash-icon-${dir}.png
|
||||
DESTINATION ${DATADIR_BUILD}/icons/hicolor/${dir}/apps/gnucash-icon-${dir}.png)
|
||||
ENDIF()
|
||||
ENDFOREACH(dir)
|
||||
|
||||
INSTALL(
|
||||
FILES ${CMAKE_SOURCE_DIR}/art/tango/32x32/gnucash.png
|
||||
RENAME gnucash-icon.png
|
||||
DESTINATION share/icons/hicolor/32x32/apps
|
||||
)
|
||||
|
||||
INSTALL(
|
||||
FILES ${CMAKE_SOURCE_DIR}/art/tango/22x22/gnucash-22x22.png
|
||||
RENAME gnucash-icon.png
|
||||
DESTINATION share/icons/hicolor/22x22/apps
|
||||
)
|
||||
INSTALL(
|
||||
FILES ${CMAKE_SOURCE_DIR}/art/tango/22x22/gnucash-24x24.png
|
||||
RENAME gnucash-icon.png
|
||||
DESTINATION share/icons/hicolor/24x24/apps
|
||||
)
|
||||
INSTALL(
|
||||
FILES ${CMAKE_SOURCE_DIR}/art/tango/16x16/gnucash.png
|
||||
RENAME gnucash-icon.png
|
||||
DESTINATION share/icons/hicolor/16x16/apps
|
||||
)
|
||||
INSTALL(
|
||||
FILES ${CMAKE_SOURCE_DIR}/art/tango/scalable/gnucash.svg
|
||||
RENAME gnucash-icon.svg
|
||||
DESTINATION share/icons/hicolor/scalable/apps
|
||||
)
|
||||
INSTALL(
|
||||
FILES ${CMAKE_SOURCE_DIR}/art/tango/16x16/gnucash.png
|
||||
RENAME gnucash-icon-16x16.png
|
||||
DESTINATION share/gnucash/pixmaps
|
||||
)
|
||||
INSTALL(
|
||||
FILES ${CMAKE_SOURCE_DIR}/art/tango/32x32/gnucash.png
|
||||
RENAME gnucash-icon-32x32.png
|
||||
DESTINATION share/gnucash/pixmaps
|
||||
)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(
|
||||
COPY ${CMAKE_SOURCE_DIR}/art/tango/32x32/gnucash.png
|
||||
DESTINATION ${DATADIR_BUILD}/icons/hicolor/32x32/apps
|
||||
)
|
||||
FILE(RENAME ${DATADIR_BUILD}/icons/hicolor/32x32/apps/gnucash.png
|
||||
${DATADIR_BUILD}/icons/hicolor/32x32/apps/gnucash-icon.png
|
||||
)
|
||||
|
||||
FILE(
|
||||
COPY ${CMAKE_SOURCE_DIR}/art/tango/22x22/gnucash-22x22.png
|
||||
DESTINATION ${DATADIR_BUILD}/icons/hicolor/22x22/apps
|
||||
)
|
||||
FILE(RENAME ${DATADIR_BUILD}/icons/hicolor/22x22/apps/gnucash-22x22.png
|
||||
${DATADIR_BUILD}/icons/hicolor/22x22/apps/gnucash-icon.png
|
||||
)
|
||||
FILE(
|
||||
COPY ${CMAKE_SOURCE_DIR}/art/tango/22x22/gnucash-24x24.png
|
||||
DESTINATION ${DATADIR_BUILD}/icons/hicolor/24x24/apps
|
||||
)
|
||||
FILE(RENAME ${DATADIR_BUILD}/icons/hicolor/24x24/apps/gnucash-24x24.png
|
||||
${DATADIR_BUILD}/icons/hicolor/24x24/apps/gnucash-icon.png
|
||||
)
|
||||
|
||||
FILE(
|
||||
COPY ${CMAKE_SOURCE_DIR}/art/tango/16x16/gnucash.png
|
||||
DESTINATION ${DATADIR_BUILD}/icons/hicolor/16x16/apps
|
||||
)
|
||||
FILE(RENAME ${DATADIR_BUILD}/icons/hicolor/16x16/apps/gnucash.png
|
||||
${DATADIR_BUILD}/icons/hicolor/16x16/apps/gnucash-icon.png
|
||||
)
|
||||
|
||||
FILE(
|
||||
COPY ${CMAKE_SOURCE_DIR}/art/tango/scalable/gnucash.svg
|
||||
DESTINATION ${DATADIR_BUILD}/icons/hicolor/scalable/apps
|
||||
)
|
||||
FILE(RENAME ${DATADIR_BUILD}/icons/hicolor/scalable/apps/gnucash.svg
|
||||
${DATADIR_BUILD}/icons/hicolor/scalable/apps/gnucash-icon.svg
|
||||
)
|
||||
|
||||
FILE(
|
||||
COPY ${CMAKE_SOURCE_DIR}/art/tango/16x16/gnucash.png
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/pixmaps
|
||||
)
|
||||
FILE(RENAME ${DATADIR_BUILD}/gnucash/pixmaps/gnucash.png
|
||||
${DATADIR_BUILD}/gnucash/pixmaps/gnucash-icon-16x16.png
|
||||
)
|
||||
|
||||
FILE(
|
||||
COPY ${CMAKE_SOURCE_DIR}/art/tango/32x32/gnucash.png
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/pixmaps
|
||||
)
|
||||
FILE(RENAME ${DATADIR_BUILD}/gnucash/pixmaps/gnucash.png
|
||||
${DATADIR_BUILD}/gnucash/pixmaps/gnucash-icon-32x32.png
|
||||
)
|
||||
|
||||
ENDIF()
|
43
src/plugins/bi_import/CMakeLists.txt
Normal file
43
src/plugins/bi_import/CMakeLists.txt
Normal file
@ -0,0 +1,43 @@
|
||||
|
||||
ADD_SUBDIRECTORY(gtkbuilder)
|
||||
ADD_SUBDIRECTORY(ui)
|
||||
|
||||
SET(bi_import_SOURCES
|
||||
gnc-plugin-bi-import.c
|
||||
gncmod-bi-import.c
|
||||
dialog-bi-import-gui.c
|
||||
dialog-bi-import-helper.c
|
||||
dialog-bi-import.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${bi_import_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
SET(bi_import_noinst_HEADERS
|
||||
gnc-plugin-bi-import.h
|
||||
dialog-bi-import-gui.h
|
||||
dialog-bi-import-helper.h
|
||||
dialog-bi-import.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-bi_import ${bi_import_noinst_HEADERS} ${bi_import_SOURCES})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-bi_import
|
||||
gncmod-business-gnome
|
||||
gncmod-gnome-utils
|
||||
gncmod-gnome-search
|
||||
gncmod-app-utils
|
||||
gncmod-engine
|
||||
gnc-core-utils
|
||||
gnc-module
|
||||
gnc-qof
|
||||
)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-bi_import PRIVATE -DG_LOG_DOMAIN=\"gnc.plugin.bi-import\")
|
||||
|
||||
INSTALL(TARGETS gncmod-bi_import
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install.
|
||||
|
11
src/plugins/bi_import/gtkbuilder/CMakeLists.txt
Normal file
11
src/plugins/bi_import/gtkbuilder/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
12
src/plugins/bi_import/ui/CMakeLists.txt
Normal file
12
src/plugins/bi_import/ui/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
32
src/plugins/customer_import/CMakeLists.txt
Normal file
32
src/plugins/customer_import/CMakeLists.txt
Normal file
@ -0,0 +1,32 @@
|
||||
ADD_SUBDIRECTORY(gtkbuilder)
|
||||
ADD_SUBDIRECTORY(ui)
|
||||
|
||||
SET(customer_import_SOURCES
|
||||
gnc-plugin-customer_import.c
|
||||
libgncmod-customer_import.c
|
||||
dialog-customer-import-gui.c
|
||||
dialog-customer-import.c
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${customer_import_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
|
||||
SET(customer_import_noinst_HEADERS
|
||||
gnc-plugin-customer_import.h
|
||||
dialog-customer-import-gui.h
|
||||
dialog-customer-import.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-customer_import ${customer_import_SOURCES} ${customer_input_noinst_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-customer_import gncmod-business-gnome gncmod-gnome-utils gncmod-app-utils
|
||||
gncmod-engine gnc-core-utils gnc-module gnc-qof ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-customer_import PRIVATE -DG_LOG_DOMAIN=\"gnc.plugin.customer_import\")
|
||||
|
||||
INSTALL(TARGETS gncmod-customer_import
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install.
|
12
src/plugins/customer_import/gtkbuilder/CMakeLists.txt
Normal file
12
src/plugins/customer_import/gtkbuilder/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
12
src/plugins/customer_import/ui/CMakeLists.txt
Normal file
12
src/plugins/customer_import/ui/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY .
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DESTINATION share/gnucash
|
||||
PATTERN Makefile.* EXCLUDE
|
||||
PATTERN CMakeLists.txt EXCLUDE)
|
46
src/quotes/CMakeLists.txt
Normal file
46
src/quotes/CMakeLists.txt
Normal file
@ -0,0 +1,46 @@
|
||||
|
||||
|
||||
|
||||
SET(PERL ${PERL_EXECUTABLE})
|
||||
|
||||
SET(_TMPDIR ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY})
|
||||
FILE(WRITE ${_TMPDIR}/copy_with_perms.cmake
|
||||
"FILE(COPY \${SRC} DESTINATION \${DST}
|
||||
FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)"
|
||||
)
|
||||
|
||||
FOREACH(file gnc-fq-check.in gnc-fq-helper.in gnc-fq-update.in gnc-fq-dump)
|
||||
STRING(REPLACE ".in" "" _OUTPUT_FILE_NAME ${file})
|
||||
GNC_CONFIGURE2(${file} ${_OUTPUT_FILE_NAME})
|
||||
SET(_ABS_OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_OUTPUT_FILE_NAME})
|
||||
INSTALL(PROGRAMS ${_ABS_OUPUT_FILE} DESTINATION bin)
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_ABS_OUTPUT_FILE}
|
||||
APPEND
|
||||
COMMAND ${CMAKE_COMMAND} -D SRC=${_ABS_OUTPUT_FILE}
|
||||
-D DST=${BINDIR_BUILD}
|
||||
-P ${_TMPDIR}/copy_with_perms.cmake
|
||||
)
|
||||
ENDIF()
|
||||
ENDFOREACH(file)
|
||||
|
||||
SET(_MAN_FILES "")
|
||||
FOREACH(file gnc-fq-dump gnc-fq-helper)
|
||||
SET(_POD_INPUT ${CMAKE_CURRENT_BINARY_DIR}/${file})
|
||||
SET(_MAN_OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${file}.1)
|
||||
LIST(APPEND _MAN_FILES ${_MAN_OUTPUT})
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${_MAN_OUTPUT}
|
||||
COMMAND
|
||||
${CMAKE_COMMAND} -E env ${PERL_EXECUTABLE} ${POD2MAN_EXECUTABLE} ${_POD_INPUT} ${_MAN_OUTPUT}
|
||||
DEPENDS ${_POD_INPUT}
|
||||
)
|
||||
ENDFOREACH(file)
|
||||
|
||||
# I don't bother copying the man pages for GNC_BUILD_AS_INSTALL. I probably should for completeness.
|
||||
|
||||
ADD_CUSTOM_TARGET(quotes-man ALL DEPENDS ${_MAN_FILES})
|
||||
ADD_CUSTOM_TARGET(quotes-bin ALL DEPENDS gnc-fq-check gnc-fq-update)
|
||||
INSTALL(FILES ${_MAN_FILES} DESTINATION share/man/man1)
|
||||
|
43
src/register/ledger-core/CMakeLists.txt
Normal file
43
src/register/ledger-core/CMakeLists.txt
Normal file
@ -0,0 +1,43 @@
|
||||
|
||||
|
||||
SET (ledger_core_SOURCES
|
||||
gnc-ledger-display.c
|
||||
gnc-ledger-display2.c
|
||||
gncmod-ledger-core.c
|
||||
split-register.c
|
||||
split-register-control.c
|
||||
split-register-layout.c
|
||||
split-register-load.c
|
||||
split-register-model.c
|
||||
split-register-model-save.c
|
||||
split-register-util.c
|
||||
)
|
||||
|
||||
SET (ledger_core_HEADERS
|
||||
gnc-ledger-display.h
|
||||
gnc-ledger-display2.h
|
||||
split-register.h
|
||||
split-register-control.h
|
||||
split-register-layout.h
|
||||
split-register-model.h
|
||||
split-register-model-save.h
|
||||
split-register-p.h
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${ledger_core_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gncmod-ledger-core ${ledger_core_SOURCES} ${ledger_core_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-ledger-core gncmod-register-gnome gncmod-register-core gncmod-gnome-utils
|
||||
gncmod-engine ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gncmod-ledger-core PRIVATE -DG_LOG_DOMAIN=\"gnc.register.ledger\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-ledger-core PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
INSTALL(TARGETS gncmod-ledger-core
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
59
src/register/register-core/CMakeLists.txt
Normal file
59
src/register/register-core/CMakeLists.txt
Normal file
@ -0,0 +1,59 @@
|
||||
|
||||
|
||||
SET (register_core_SOURCES
|
||||
gncmod-register-core.c
|
||||
basiccell.c
|
||||
cell-factory.c
|
||||
cellblock.c
|
||||
formulacell.c
|
||||
gtable.c
|
||||
numcell.c
|
||||
pricecell.c
|
||||
quickfillcell.c
|
||||
recncell.c
|
||||
checkboxcell.c
|
||||
register-common.c
|
||||
table-allgui.c
|
||||
table-control.c
|
||||
table-layout.c
|
||||
table-model.c
|
||||
)
|
||||
|
||||
|
||||
SET (register_core_HEADERS
|
||||
basiccell.h
|
||||
cell-factory.h
|
||||
cellblock.h
|
||||
combocell.h
|
||||
datecell.h
|
||||
formulacell.h
|
||||
gtable.h
|
||||
numcell.h
|
||||
pricecell.h
|
||||
quickfillcell.h
|
||||
recncell.h
|
||||
checkboxcell.h
|
||||
register-common.h
|
||||
table-allgui.h
|
||||
table-control.h
|
||||
table-layout.h
|
||||
table-model.h
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${register_core_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gncmod-register-core ${register_core_SOURCES} ${register_core_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-register-core gncmod-gnome-utils gnc-qof gncmod-app-utils ${GMODULE_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gncmod-register-core PRIVATE -DG_LOG_DOMAIN=\"gnc.register.core\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-register-core PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
INSTALL(TARGETS gncmod-register-core
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${register_core_HEADERS} DESTINATION include/gnucash)
|
58
src/register/register-gnome/CMakeLists.txt
Normal file
58
src/register/register-gnome/CMakeLists.txt
Normal file
@ -0,0 +1,58 @@
|
||||
|
||||
SET (register_gnome_SOURCES
|
||||
gncmod-register-gnome.c
|
||||
combocell-gnome.c
|
||||
datecell-gnome.c
|
||||
formulacell-gnome.c
|
||||
gnucash-color.c
|
||||
gnucash-cursor.c
|
||||
gnucash-date-picker.c
|
||||
gnucash-grid.c
|
||||
gnucash-header.c
|
||||
gnucash-item-edit.c
|
||||
gnucash-item-list.c
|
||||
gnucash-scrolled-window.c
|
||||
gnucash-sheet.c
|
||||
gnucash-style.c
|
||||
pricecell-gnome.c
|
||||
quickfillcell-gnome.c
|
||||
table-gnome.c
|
||||
)
|
||||
|
||||
SET (register_gnome_noinst_HEADERS
|
||||
formulacell-gnome.h
|
||||
gnucash-color.h
|
||||
gnucash-cursor.h
|
||||
gnucash-date-picker.h
|
||||
gnucash-grid.h
|
||||
gnucash-header.h
|
||||
gnucash-item-edit.h
|
||||
gnucash-item-list.h
|
||||
gnucash-scrolled-window.h
|
||||
gnucash-sheet.h
|
||||
gnucash-sheetP.h
|
||||
gnucash-style.h
|
||||
pricecell-gnome.h
|
||||
quickfillcell-gnome.h
|
||||
table-gnome.h
|
||||
)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${register_gnome_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY (gncmod-register-gnome ${register_gnome_SOURCES} ${register_gnome_noinst_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-register-gnome gncmod-register-core gnc-qof ${GNOMECANVAS_LDFLAGS} ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-register-gnome PRIVATE -DG_LOG_DOMAIN=\"gnc.register.gnome\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-register-gnome
|
||||
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
PRIVATE ${CMAKE_SOURCE_DIR}/src/register/ledger-core ${GNOMECANVAS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
INSTALL(TARGETS gncmod-register-gnome
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
10
src/report/CMakeLists.txt
Normal file
10
src/report/CMakeLists.txt
Normal file
@ -0,0 +1,10 @@
|
||||
|
||||
ADD_SUBDIRECTORY(business-reports)
|
||||
ADD_SUBDIRECTORY(jqplot)
|
||||
ADD_SUBDIRECTORY(locale-specific/us)
|
||||
ADD_SUBDIRECTORY(report-gnome)
|
||||
ADD_SUBDIRECTORY(report-system)
|
||||
ADD_SUBDIRECTORY(standard-reports)
|
||||
ADD_SUBDIRECTORY(stylesheets)
|
||||
ADD_SUBDIRECTORY(utility-reports)
|
||||
|
46
src/report/business-reports/CMakeLists.txt
Normal file
46
src/report/business-reports/CMakeLists.txt
Normal file
@ -0,0 +1,46 @@
|
||||
|
||||
SET (business_reports_SCHEME
|
||||
aging.scm
|
||||
customer-summary.scm
|
||||
easy-invoice.scm
|
||||
fancy-invoice.scm
|
||||
taxinvoice.scm
|
||||
receipt.scm
|
||||
invoice.scm
|
||||
job-report.scm
|
||||
owner-report.scm
|
||||
payables.scm
|
||||
receivables.scm
|
||||
balsheet-eg.scm
|
||||
business-reports.scm
|
||||
)
|
||||
|
||||
SET(business_reports_DATA
|
||||
taxinvoice.eguile.scm
|
||||
taxinvoice.css
|
||||
receipt.eguile.scm
|
||||
receipt.css
|
||||
balsheet-eg.css
|
||||
balsheet-eg.eguile.scm
|
||||
)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash/report)
|
||||
SET(GUILE_MODULES src/app-utils src/engine src/html src/gnome-utils
|
||||
src/report/report-system src/report/standard-reports)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/gnome-utils src/scm
|
||||
src/report/business_reports src/report/report-system src/report/standard-reports)
|
||||
SET(GUILE_LIBRARY_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/gnome-utils src/report/report-system
|
||||
src/report/standard-reports)
|
||||
SET(GUILE_DEPENDS scm-business-reports-links gncmod-standard-reports scm-standard-reports)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-business-reports
|
||||
"${business_reports_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
TRUE
|
||||
)
|
||||
|
||||
INSTALL(FILES ${business_reports_DATA} DESTINATION ${SCHEME_INSTALLED_SOURCE_DIR}/gnucash/report)
|
33
src/report/jqplot/CMakeLists.txt
Normal file
33
src/report/jqplot/CMakeLists.txt
Normal file
@ -0,0 +1,33 @@
|
||||
|
||||
SET(gncjqplot_DATA
|
||||
jquery.min.js
|
||||
jquery.jqplot.js
|
||||
jquery.jqplot.css
|
||||
plugins/jqplot.barRenderer.js
|
||||
plugins/jqplot.BezierCurveRenderer.js
|
||||
plugins/jqplot.blockRenderer.js
|
||||
plugins/jqplot.bubbleRenderer.js
|
||||
plugins/jqplot.canvasAxisLabelRenderer.js
|
||||
plugins/jqplot.canvasAxisTickRenderer.js
|
||||
plugins/jqplot.canvasTextRenderer.js
|
||||
plugins/jqplot.categoryAxisRenderer.js
|
||||
plugins/jqplot.ciParser.js
|
||||
plugins/jqplot.cursor.js
|
||||
plugins/jqplot.dateAxisRenderer.js
|
||||
plugins/jqplot.donutRenderer.js
|
||||
plugins/jqplot.dragable.js
|
||||
plugins/jqplot.enhancedLegendRenderer.js
|
||||
plugins/jqplot.funnelRenderer.js
|
||||
plugins/jqplot.highlighter.js
|
||||
plugins/jqplot.json2.js
|
||||
plugins/jqplot.logAxisRenderer.js
|
||||
plugins/jqplot.mekkoAxisRenderer.js
|
||||
plugins/jqplot.mekkoRenderer.js
|
||||
plugins/jqplot.meterGaugeRenderer.js
|
||||
plugins/jqplot.ohlcRenderer.js
|
||||
plugins/jqplot.pieRenderer.js
|
||||
plugins/jqplot.pointLabels.js
|
||||
plugins/jqplot.trendline.js
|
||||
)
|
||||
|
||||
INSTALL(FILES ${gncjqplot_DATA} DESTINATION share/gnucash/jqplot)
|
54
src/report/locale-specific/us/CMakeLists.txt
Normal file
54
src/report/locale-specific/us/CMakeLists.txt
Normal file
@ -0,0 +1,54 @@
|
||||
|
||||
|
||||
SET(locale_reports_us_SOURCES
|
||||
gncmod-locale-reports-us.c
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-locale-reports-us ${locale_reports_us_SOURCES})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-locale-reports-us gnc-module gncmod-app-utils gncmod-gnome-utils
|
||||
${GUILE_LDFLAGS} ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-locale-reports-us PRIVATE -DG_LOG_DOMAIN=\"gnc.report.locale.us\")
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-locale-reports-us
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
||||
|
||||
# Scheme
|
||||
|
||||
SET(gncmod_local_reports_us_SCHEME_1 taxtxf.scm taxtxf-de_DE.scm)
|
||||
|
||||
|
||||
SET(gncmod_local_reports_us_SCHEME_2 us.scm de_DE.scm)
|
||||
|
||||
|
||||
SET(GUILE_MODULES src/app-utils src/engine src/gnome-utils src/html src/report/report-system src/tax/us)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/gnome-utils src/report/report-system
|
||||
src/scm src/tax/us)
|
||||
SET(GUILE_LIBRARY_DIRS src/engine src/libqof/qof src/app-utils src/core-utils src/gnc-module src/gnome-utils
|
||||
src/html src/report/report-system)
|
||||
SET(GUILE_DEPENDS gncmod-html scm-tax-us-1 scm-tax-us-2 scm-report-system-3)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-locale-specific-1
|
||||
"${gncmod_local_reports_us_SCHEME_1}"
|
||||
gnucash/report
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-locale-specific-2
|
||||
"${gncmod_local_reports_us_SCHEME_2}"
|
||||
gnucash/report/locale-specific
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"scm-report-locale-specific-1;${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
77
src/report/report-gnome/CMakeLists.txt
Normal file
77
src/report/report-gnome/CMakeLists.txt
Normal file
@ -0,0 +1,77 @@
|
||||
|
||||
|
||||
SET (report_gnome_HEADERS
|
||||
dialog-report-column-view.h
|
||||
dialog-custom-report.h
|
||||
dialog-report-style-sheet.h
|
||||
gnc-plugin-page-report.h
|
||||
window-report.h
|
||||
)
|
||||
|
||||
SET (SWIG_REPORT_GNOME_C ${CMAKE_CURRENT_BINARY_DIR}/swig-report-gnome.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_REPORT_GNOME_C} ${CMAKE_CURRENT_SOURCE_DIR}/report-gnome.i ${report_gnome_HEADERS})
|
||||
|
||||
SET (report_gnome_SOURCES
|
||||
${SWIG_REPORT_GNOME_C}
|
||||
dialog-report-column-view.c
|
||||
dialog-custom-report.c
|
||||
dialog-report-style-sheet.c
|
||||
gnc-plugin-page-report.c
|
||||
gncmod-report-gnome.c
|
||||
window-report.c
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gncmod-report-gnome
|
||||
${report_gnome_SOURCES}
|
||||
${report_gnome_HEADERS}
|
||||
)
|
||||
TARGET_LINK_LIBRARIES(gncmod-report-gnome gncmod-report-system gncmod-html gncmod-gnome-utils
|
||||
gnc-qof ${GUILE_LDFLAGS} ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS (gncmod-report-gnome PRIVATE -DG_LOG_DOMAIN=\"gnc.report.gui\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-report-gnome PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
INSTALL(TARGETS gncmod-report-gnome
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${report_gnome_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
# Scheme
|
||||
|
||||
SET(report_gnome_SCHEME
|
||||
report-gnome.scm
|
||||
)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash/report)
|
||||
SET(GUILE_MODULES src/app-utils src/scm src/engine src/gnc-module src/gnome-utils src/reports/report-system src/report/utility-reports)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/gnc-module src/engine src/scm src/core-utils src/gnome-utils)
|
||||
SET(GUILE_LIBRARY_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/gnome-utils src/report-gnome)
|
||||
SET(GUILE_DEPENDS gncmod-report-gnome gncmod-engine scm-app-utils scm-gnome-utils scm-core-utils scm-gnc-module scm-scm)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-gnome
|
||||
"${report_gnome_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
SET(report_gnome_GLADE dialog-custom-report.glade dialog-report.glade)
|
||||
|
||||
INSTALL(FILES ${report_gnome_GLADE} DESTINATION share/gnucash/gtkbuilder)
|
||||
|
||||
SET(report_gnome_UI gnc-plugin-page-report-ui.xml)
|
||||
|
||||
INSTALL(FILES ${report_gnome_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${report_gnome_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
FILE(COPY ${report_gnome_GLADE}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/gtkbuilder)
|
||||
ENDIF()
|
107
src/report/report-system/CMakeLists.txt
Normal file
107
src/report/report-system/CMakeLists.txt
Normal file
@ -0,0 +1,107 @@
|
||||
|
||||
SET (report_system_HEADERS
|
||||
gnc-report.h
|
||||
)
|
||||
|
||||
SET (SWIG_REPORT_SYSTEM_C ${CMAKE_CURRENT_BINARY_DIR}/swig-report-system.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_REPORT_SYSTEM_C} ${CMAKE_CURRENT_SOURCE_DIR}/report-system.i ${report_system_HEADERS})
|
||||
|
||||
SET (report_system_SOURCES
|
||||
${SWIG_REPORT_SYSTEM_C}
|
||||
gncmod-report-system.c
|
||||
gnc-report.c
|
||||
)
|
||||
|
||||
ADD_LIBRARY (gncmod-report-system
|
||||
${report_system_SOURCES}
|
||||
${report_system_HEADERS}
|
||||
)
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-report-system PRIVATE -DG_LOG_DOMAIN=\"gnc.report.core\")
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-report-system gnc-module gncmod-app-utils gnc-qof ${GTK2_LDFLAGS} ${GUILE_LDFLAGS})
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES (gncmod-report-system
|
||||
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} PRIVATE ${GTK2_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-report-system
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES ${report_system_HEADERS} DESTINATION include/gnucash)
|
||||
|
||||
# Scheme
|
||||
|
||||
SET (report_system_SCHEME
|
||||
report-system.scm
|
||||
eguile-gnc.scm
|
||||
eguile-utilities.scm
|
||||
eguile-html-utilities.scm
|
||||
)
|
||||
|
||||
SET (report_system_SCHEME_2
|
||||
collectors.scm
|
||||
list-extras.scm
|
||||
report-collectors.scm
|
||||
)
|
||||
|
||||
SET (report_system_SCHEME_3
|
||||
commodity-utilities.scm
|
||||
html-acct-table.scm
|
||||
html-barchart.scm
|
||||
html-document.scm
|
||||
html-fonts.scm
|
||||
html-piechart.scm
|
||||
html-scatter.scm
|
||||
html-linechart.scm
|
||||
html-style-info.scm
|
||||
html-style-sheet.scm
|
||||
html-table.scm
|
||||
html-text.scm
|
||||
html-utilities.scm
|
||||
html-jqplot.scm
|
||||
options-utilities.scm
|
||||
report-utilities.scm
|
||||
report.scm
|
||||
)
|
||||
|
||||
|
||||
SET(GUILE_MODULES src/app-utils src/engine src/html src/gnome-utils)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/gnome-utils src/report/report-system src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/gnome-utils)
|
||||
SET(GUILE_DEPENDS gncmod-html gncmod-gnome-utils gncmod-report-system scm-app-utils scm-gnome-utils)
|
||||
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-system
|
||||
"${report_system_SCHEME}"
|
||||
"gnucash/report"
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-system-2
|
||||
"${report_system_SCHEME_2}"
|
||||
"gnucash/report/report-system"
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
scm-report-system
|
||||
FALSE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-system-3
|
||||
"${report_system_SCHEME_3}"
|
||||
""
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
scm-report-system-2
|
||||
FALSE
|
||||
)
|
||||
|
84
src/report/standard-reports/CMakeLists.txt
Normal file
84
src/report/standard-reports/CMakeLists.txt
Normal file
@ -0,0 +1,84 @@
|
||||
|
||||
SET(standard_reports_SOURCES gncmod-standard-reports.c)
|
||||
|
||||
ADD_LIBRARY (gncmod-standard-reports ${standard_reports_SOURCES})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-standard-reports gnc-module ${GTK2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-standard-reports PRIVATE -DG_LOG_DOMAIN=\"gnc.report.standard\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-standard-reports PRIVATE ${GUILE_INCLUDE_DIRS})
|
||||
|
||||
INSTALL(TARGETS gncmod-standard-reports
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
# No headers to install
|
||||
|
||||
|
||||
# Scheme
|
||||
|
||||
SET (standard_reports_SCHEME standard-reports.scm)
|
||||
|
||||
SET (standard_reports_SCHEME_2
|
||||
account-piecharts.scm
|
||||
account-summary.scm
|
||||
advanced-portfolio.scm
|
||||
average-balance.scm
|
||||
balance-sheet.scm
|
||||
budget-balance-sheet.scm
|
||||
budget-barchart.scm
|
||||
budget-flow.scm
|
||||
budget-income-statement.scm
|
||||
budget.scm
|
||||
cash-flow.scm
|
||||
category-barchart.scm
|
||||
daily-reports.scm
|
||||
equity-statement.scm
|
||||
general-journal.scm
|
||||
general-ledger.scm
|
||||
income-statement.scm
|
||||
net-barchart.scm
|
||||
net-linechart.scm
|
||||
portfolio.scm
|
||||
price-scatter.scm
|
||||
register.scm
|
||||
sx-summary.scm
|
||||
transaction.scm
|
||||
trial-balance.scm
|
||||
)
|
||||
|
||||
SET(GUILE_MODULES src/app-utils src/engine src/gnome-utils src/html src/report/report-system)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/engine src/core-utils src/gnc-module src/gnome-utils src/report/report-system src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/app-utils src/engine src/core-utils src/gnc-module src/gnome-utils src/report/report-system)
|
||||
SET(GUILE_DEPENDS gncmod-html scm-app-utils scm-gnome-utils scm-report-system scm-report-system-3)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-standard-reports
|
||||
"${standard_reports_SCHEME}"
|
||||
"gnucash/report"
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"scm-standard-reports-2;${GUILE_DEPENDS}"
|
||||
TRUE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-standard-reports-2
|
||||
"${standard_reports_SCHEME_2}"
|
||||
"gnucash/report/standard-reports"
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"scm-standard-reports-2-links;${GUILE_DEPENDS}"
|
||||
TRUE
|
||||
)
|
||||
|
||||
# FIXME: This is a hack since core-utils assumes an autotools build environment.
|
||||
|
||||
SET(STD_RPT_DIR ${CMAKE_CURRENT_BINARY_DIR}/gnucash/report)
|
||||
FILE(MAKE_DIRECTORY ${STD_RPT_DIR})
|
||||
FILE(COPY standard-reports.scm DESTINATION ${STD_RPT_DIR})
|
||||
|
||||
FILE(MAKE_DIRECTORY ${STD_RPT_DIR}/standard-reports)
|
||||
FILE(COPY ${standard_reports_SCHEME_2} DESTINATION ${STD_RPT_DIR}/standard-reports)
|
80
src/report/stylesheets/CMakeLists.txt
Normal file
80
src/report/stylesheets/CMakeLists.txt
Normal file
@ -0,0 +1,80 @@
|
||||
|
||||
SET(stylesheets_SOURCES
|
||||
gnc-plugin-stylesheets.c
|
||||
gncmod-stylesheets.c
|
||||
)
|
||||
|
||||
SET(stylesheet_noinst_HEADERS
|
||||
gnc-plugin-stylesheets.h
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-stylesheets MODULE ${stylesheets_SOURCES} ${stylesheets_noinst_HEADERS})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-stylesheets gncmod-report-gnome gncmod-report-system gncmod-gnome-utils gnc-module
|
||||
gnc-qof ${GUILE_LDFLAGS} ${GTK2_LDFLAGS} ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-stylesheets PRIVATE -DG_LOG_DOMAIN=\"gnc.report.core\")
|
||||
|
||||
SET(LIB_DIR lib/gnucash)
|
||||
IF (WIN32)
|
||||
SET(LIB_DIR bin)
|
||||
ENDIF(WIN32)
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-stylesheets
|
||||
LIBRARY DESTINATION ${LIB_DIR}
|
||||
ARCHIVE DESTINATION ${LIB_DIR}
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
# No headers to install
|
||||
|
||||
# Scheme
|
||||
|
||||
SET(stylesheets_SCHEME_1
|
||||
stylesheet-plain.scm
|
||||
stylesheet-fancy.scm
|
||||
stylesheet-footer.scm
|
||||
stylesheet-easy.scm
|
||||
stylesheet-head-or-tail.scm
|
||||
)
|
||||
|
||||
SET(stylesheets_SCHEME_2
|
||||
stylesheets.scm
|
||||
)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash/report)
|
||||
SET(GUILE_MODULES src/app-utils src/engine src/html src/gnome-utils src/report/report-system)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/gnome-utils src/report/report-system src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/engine src/app-utils src/core-utils src/gnc-module src/gnome-utils src/html src/report/report-system)
|
||||
SET(GUILE_DEPENDS gncmod-html scm-app-utils scm-report-system-3)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-stylesheets-1
|
||||
"${stylesheets_SCHEME_1}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
TRUE
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-report-stylesheets-2
|
||||
"${stylesheets_SCHEME_2}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"scm-report-stylesheets-1;${GUILE_DEPENDS}"
|
||||
TRUE
|
||||
)
|
||||
|
||||
ADD_CUSTOM_TARGET(scm-report-stylesheets ALL DEPENDS scm-report-stylesheets-1 scm-report-stylesheets-2)
|
||||
|
||||
SET(stylesheets_UI gnc-plugin-stylesheets-ui.xml)
|
||||
|
||||
INSTALL(FILES ${stylesheets_UI} DESTINATION share/gnucash/ui)
|
||||
|
||||
IF (GNC_BUILD_AS_INSTALL)
|
||||
FILE(COPY ${stylesheets_UI}
|
||||
DESTINATION ${DATADIR_BUILD}/gnucash/ui)
|
||||
ENDIF()
|
55
src/report/utility-reports/CMakeLists.txt
Normal file
55
src/report/utility-reports/CMakeLists.txt
Normal file
@ -0,0 +1,55 @@
|
||||
|
||||
|
||||
SET(utility_reports_SOURCES
|
||||
gncmod-utility-reports.c
|
||||
)
|
||||
|
||||
ADD_LIBRARY(gncmod-utility-reports MODULE ${utility_reports_SOURCES})
|
||||
|
||||
TARGET_LINK_LIBRARIES(gncmod-utility-reports gnc-module ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS})
|
||||
|
||||
TARGET_COMPILE_DEFINITIONS(gncmod-utility-reports PRIVATE -DG_LOG_DOMAIN=\"gnc.report.util\")
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-utility-reports
|
||||
PRIVATE ${GUILE_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
SET(LIB_DIR lib/gnucash)
|
||||
IF (WIN32)
|
||||
SET(LIB_DIR bin)
|
||||
ENDIF(WIN32)
|
||||
|
||||
|
||||
INSTALL(TARGETS gncmod-utility-reports
|
||||
LIBRARY DESTINATION ${LIB_DIR}
|
||||
ARCHIVE DESTINATION ${LIB_DIR}
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
# Scheme
|
||||
|
||||
SET(utility_reports_SCHEME
|
||||
hello-world.scm
|
||||
utility-reports.scm
|
||||
view-column.scm
|
||||
welcome-to-gnucash.scm
|
||||
)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash/report)
|
||||
SET(GUILE_MODULES src/app-utils src/engine src/gnome-utils src/html src/report/report-system)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/core-utils src/engine src/gnc-module
|
||||
src/gnome-utils src/report/report-system src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/engine src/app-utils src/core-utils src/gnc-module src/gnome-utils src/html
|
||||
src/report/report-system)
|
||||
SET(GUILE_DEPENDS scm-utility-reports-links scm-app-utils scm-report-system-3)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-utility-reports
|
||||
"${utility_reports_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
TRUE
|
||||
)
|
||||
|
||||
|
66
src/scm/CMakeLists.txt
Normal file
66
src/scm/CMakeLists.txt
Normal file
@ -0,0 +1,66 @@
|
||||
ADD_SUBDIRECTORY(gnumeric)
|
||||
|
||||
SET (BUILD_CONFIG_SCM ${CMAKE_CURRENT_BINARY_DIR}/build-config.scm)
|
||||
|
||||
SET (scm_SCHEME_4
|
||||
substring-search.scm
|
||||
xml-generator.scm
|
||||
)
|
||||
|
||||
# We need to replace a couple of variables in build-config.scm. Normally, I
|
||||
# would use CONFIGURE_FILE to do this. But this scheme files is using a different
|
||||
# replacement marking scheme ("@-", "-@") than the usual one with just "@"
|
||||
# that CONFIGURE_FILE expects.
|
||||
|
||||
# FIXME: ${BUILD_CONFIG_SCM} needs a rule to cause it to be generated, I think.
|
||||
|
||||
IF (HAVE_GUILE1)
|
||||
GNC_CONFIGURE(build-config.scm.in build-config.scm)
|
||||
ELSE()
|
||||
GNC_CONFIGURE2(build-config.scm.in build-config.scm)
|
||||
ENDIF()
|
||||
|
||||
# CONFIGURE_FILE(build-config.scm.in ${BUILD_CONFIG_SCM})
|
||||
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS src/core-utils src/gnc-module)
|
||||
SET(GUILE_LIBRARY_DIRS src/core-utils src/gnc-module)
|
||||
SET(GUILE_DEPENDS scm-core-utils scm-gnc-module)
|
||||
|
||||
SET(scm_SCHEME_0
|
||||
fin.scm
|
||||
string.scm
|
||||
${BUILD_CONFIG_SCM}
|
||||
substring-search.scm
|
||||
xml-generator.scm
|
||||
)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-scm-0 "${scm_SCHEME_0}" "" "" "" "" "" FALSE)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-scm-1 "printf.scm" gnucash "" "" "" "" FALSE)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-scm-2
|
||||
main.scm
|
||||
gnucash
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"scm-scm-1;${GUILE_DEPENDS}" # requires printf.scm from scm-scm-1 and modules from GUILE_DEPENDS
|
||||
FALSE
|
||||
)
|
||||
|
||||
# depends on main.scm
|
||||
GNC_ADD_SCHEME_TARGETS(scm-scm-3
|
||||
price-quotes.scm
|
||||
gnucash
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"scm-scm-2;scm-scm-0" # depends on build_config.scm
|
||||
FALSE)
|
||||
|
||||
ADD_CUSTOM_TARGET(scm-scm ALL DEPENDS scm-scm-3 scm-scm-2 scm-scm-1 scm-scm-0 scm-gnumeric)
|
||||
|
||||
INSTALL(FILES config DESTINATION etc/gnucash)
|
||||
|
||||
|
19
src/scm/gnumeric/CMakeLists.txt
Normal file
19
src/scm/gnumeric/CMakeLists.txt
Normal file
@ -0,0 +1,19 @@
|
||||
|
||||
|
||||
SET(gnumeric_SCHEME gnumeric-utilities.scm table-utils.scm)
|
||||
|
||||
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS "")
|
||||
SET(GUILE_LIBRARY_DIRS "")
|
||||
SET(GUILE_DEPENDS "")
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-gnumeric
|
||||
"${gnumeric_SCHEME}"
|
||||
gnumeric
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
48
src/tax/us/CMakeLists.txt
Normal file
48
src/tax/us/CMakeLists.txt
Normal file
@ -0,0 +1,48 @@
|
||||
SET(tax_us_SOURCES gncmod-tax-us.c)
|
||||
|
||||
# Add dependency on config.h
|
||||
SET_SOURCE_FILES_PROPERTIES (${tax_us_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
|
||||
|
||||
ADD_LIBRARY(gncmod-tax-us ${tax_us_SOURCES})
|
||||
TARGET_LINK_LIBRARIES(gncmod-tax-us gnc-module ${GLIB2_LDFLAGS} ${GUILE_LDFLAGS})
|
||||
|
||||
TARGET_INCLUDE_DIRECTORIES(gncmod-tax-us
|
||||
PRIVATE ${CMAKE_BINARY_DIR}/src ${GUILE_INCLUDE_DIRS})
|
||||
|
||||
INSTALL(TARGETS gncmod-tax-us
|
||||
LIBRARY DESTINATION lib/gnucash
|
||||
ARCHIVE DESTINATION lib/gnucash
|
||||
RUNTIME DESTINATION bin)
|
||||
# No headers to install
|
||||
|
||||
# Scheme
|
||||
|
||||
SET(gncmod_tax_us_SCHEME_1 txf.scm txf-help.scm txf-de_DE.scm txf-help-de_DE.scm)
|
||||
SET(gncmod_tax_us_SCHEME_2 de_DE.scm us.scm)
|
||||
|
||||
SET(GUILE_MODULES src/app-utils src/engine)
|
||||
SET(GUILE_LOAD_DIRS src/app-utils src/core-utils src/engine src/gnc-module src/scm)
|
||||
SET(GUILE_LIBRARY_DIRS src/app-utils src/engine src/gnc-module)
|
||||
SET(GUILE_DEPENDS scm-app-utils)
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm-tax-us-1
|
||||
"${gncmod_tax_us_SCHEME_1}"
|
||||
""
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
GNC_ADD_SCHEME_TARGETS(scm-tax-us-2
|
||||
"${gncmod_tax_us_SCHEME_2}"
|
||||
gnucash/tax
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
|
||||
|
54
src/test-core/CMakeLists.txt
Normal file
54
src/test-core/CMakeLists.txt
Normal file
@ -0,0 +1,54 @@
|
||||
|
||||
SET(test_core_SOURCES
|
||||
test-stuff.c
|
||||
unittest-support.c
|
||||
)
|
||||
|
||||
SET(test_core_noinst_HEADERS
|
||||
test-stuff.h
|
||||
unittest-support.h
|
||||
)
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${CMAKE_BINARY_DIR}/src
|
||||
${CMAKE_SOURCE_DIR}/src
|
||||
${CMAKE_SOURCE_DIR}/src/libqof/qof
|
||||
${CMAKE_SOURCE_DIR}/src/test-core
|
||||
|
||||
${GLIB2_INCLUDE_DIRS}
|
||||
${GUILE_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
ADD_LIBRARY(test-core ${test_core_SOURCES} ${test_core_noinst_HEADERS})
|
||||
TARGET_LINK_LIBRARIES(test-core gnc-qof ${GLIB2_LDFLAGS})
|
||||
|
||||
SET (SWIG_UNITTEST_SUPPORT_GUILE_C ${CMAKE_CURRENT_BINARY_DIR}/swig-unittest-support-guile.c)
|
||||
GNC_ADD_SWIG_COMMAND (${SWIG_UNITTEST_SUPPORT_GUILE_C}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/unittest-support.i ${test_core_HEADERS})
|
||||
|
||||
|
||||
SET(test_core_guile_SOURCES ${SWIG_UNITTEST_SUPPORT_GUILE_C})
|
||||
|
||||
ADD_LIBRARY(test-core-guile ${test_core_guile_SOURCES})
|
||||
TARGET_LINK_LIBRARIES(test-core-guile test-core ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS})
|
||||
|
||||
SET(test_core_SCHEME unittest-support.scm)
|
||||
|
||||
SET(GUILE_OUTPUT_DIR gnucash)
|
||||
SET(GUILE_MODULES "")
|
||||
SET(GUILE_LOAD_DIRS "")
|
||||
SET(GUILE_LIBRARY_DIRS src/test-core src/libqof)
|
||||
SET(GUILE_DEPENDS test-core-guile)
|
||||
|
||||
|
||||
GNC_ADD_SCHEME_TARGETS(scm_test_core
|
||||
${test_core_SCHEME}
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_MODULES}"
|
||||
"${GUILE_LOAD_DIRS}"
|
||||
"${GUILE_LIBRARY_DIRS}"
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
INSTALL(FILES unittest-support.h DESTINATION libexec/gnucash/src/libqof/qof/test)
|
Loading…
Reference in New Issue
Block a user