gnucash unstable: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Tue Nov 28 17:59:12 EST 2017


Updated	 via  https://github.com/Gnucash/gnucash/commit/5204100d (commit)
	 via  https://github.com/Gnucash/gnucash/commit/e92a1b37 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/831640b5 (commit)
	from  https://github.com/Gnucash/gnucash/commit/0afef080 (commit)



commit 5204100d53b67fda3960f58568331d4822eab6bf
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Nov 28 14:25:35 2017 -0800

    Use GNUInstallDirs in CMake Builds
    
    Provides correct file layout when building distribution tarballs.
    Fixes Bugs 790840 and 790841.

diff --git a/CMakeLists.txt b/CMakeLists.txt
index f35ac5c..1f8054d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -46,6 +46,7 @@ INCLUDE (GncConfigure)
 INCLUDE (GncAddGSchemaTargets)
 INCLUDE (GncAddTest)
 INCLUDE (MakeDistFiles)
+INCLUDE (GNUInstallDirs)
 
 # ############################################################
 # These options are settable from the CMake command line. For example, to disable
@@ -73,17 +74,17 @@ OPTION (AUTOTOOLS_IN_DIST "Add autotools support to distribution tarballs." ON)
 # These are also settable from the command line in a similar way.
 
 SET(GNUCASH_BUILD_ID "" CACHE STRING "Overrides the GnuCash build identification (Build ID) which defaults to a description of the vcs commit from which gnucash is built. Distributions may want to insert a package management based version number instead")
-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(BINDIR ${CMAKE_INSTALL_BINDIR} CACHE STRING "user executables")
+SET(SYSCONFDIR ${CMAKE_INSTALL_SYSCONFDIR} CACHE STRING "read-only single-machine data")
+SET(DATAROOTDIR ${CMAKE_INSTALL_DATAROOTDIR} CACHE STRING "read-only arch.-independent data root")
+SET(DATADIR ${CMAKE_INSTALL_DATADIR} CACHE STRING "read-only architecture-independent data")
+SET(LIBDIR ${CMAKE_INSTALL_LIBDIR} 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)
+SET(PKGLIBDIR ${CMAKE_INSTALL_LIBDIR}/gnucash)
 SET(TEST_MYSQL_URL "" CACHE STRING "MySQL database URL for testing")
 SET(TEST_PGSQL_URL "" CACHE STRING "PgSQL database URL for testing")
 
@@ -492,11 +493,11 @@ SET( CMAKE_CXX_FLAGS_DEBUG "-O0 -g ${CMAKE_CXX_FLAGS} -Wno-deprecated-declaratio
 
 IF (APPLE AND WITH_GNUCASH)
   SET(CMAKE_MACOSX_RPATH ON)
-  SET(CMAKE_INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
+  SET(CMAKE_INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}")
 ENDIF (APPLE AND WITH_GNUCASH)
 
 IF (UNIX)
-  SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib:${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}:${PKGLIBDIR}")
 ENDIF()
 
 SET(BUILD_SHARED_LIBS ON)
@@ -564,7 +565,7 @@ SET(gnucash_DOCS
 )
 
 
-INSTALL(FILES ${gnucash_DOCS} DESTINATION share/doc/gnucash)
+INSTALL(FILES ${gnucash_DOCS} DESTINATION ${CMAKE_INSTALL_DOCDIR})
 
 # ############################################################
 
@@ -689,8 +690,8 @@ ADD_DEFINITIONS (-DHAVE_CONFIG_H)
 SET (CONFIG_H ${CMAKE_CURRENT_BINARY_DIR}/common/config.h)
 CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR}/common/config.h.cmake.in ${CONFIG_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})
+SET(SCHEME_INSTALLED_SOURCE_DIR ${CMAKE_INSTALL_DATADIR}/gnucash/scm)
+SET(SCHEME_INSTALLED_CACHE_DIR ${PKGLIBDIR}/scm/ccache/${GUILE_EFFECTIVE_VERSION})
 
 # The subdirectories
 ADD_SUBDIRECTORY (borrowed)
@@ -834,9 +835,9 @@ IF (BUILDING_FROM_VCS)
     COMMAND ${GIT_EXECUTABLE} log --format=\"%ad %aN %n%n%x09* %s%d%n\" --date=short --since=2016-01-01 > ${CMAKE_BINARY_DIR}/ChangeLog
     WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
   )
-  INSTALL(FILES ${CMAKE_BINARY_DIR}/ChangeLog DESTINATION share/doc/gnucash)
+  INSTALL(FILES ${CMAKE_BINARY_DIR}/ChangeLog DESTINATION ${CMAKE_INSTALL_DOCDIR})
 ELSE()
-  INSTALL(FILES ${CMAKE_SOURCE_DIR}/ChangeLog DESTINATION share/doc/gnucash)
+  INSTALL(FILES ${CMAKE_SOURCE_DIR}/ChangeLog DESTINATION ${CMAKE_INSTALL_DOCDIR})
 ENDIF()
 
 #Link LICENSE to COPYING so that people expecting to find it,
@@ -850,7 +851,7 @@ ENDIF()
 INSTALL(CODE
 " EXECUTE_PROCESS(
       COMMAND ${CMAKE_COMMAND} -E ${_CMD} LICENSE COPYING
-      WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/share/doc/gnucash
+      WORKING_DIRECTORY ${CMAKE_INSTALL_DOCDIR}
   )"
 )
 
@@ -860,7 +861,7 @@ IF (WIN32)
   FIND_LIBRARY(LIBSTDC++ libstdc++-6.dll)
   FIND_LIBRARY(LIBDW2 libgcc_s_dw2-1.dll)
   SET(MINGW_DLLS ${LIBSTDC++} ${LIBDW2})
-  INSTALL(PROGRAMS ${MINGW_DLLS} DESTINATION bin)
+  INSTALL(PROGRAMS ${MINGW_DLLS} DESTINATION ${CMAKE_INSTALL_BINDIR})
   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
diff --git a/borrowed/goffice/CMakeLists.txt b/borrowed/goffice/CMakeLists.txt
index adb1fca..b056787 100644
--- a/borrowed/goffice/CMakeLists.txt
+++ b/borrowed/goffice/CMakeLists.txt
@@ -7,9 +7,9 @@ set(goffice_SOURCES go-optionmenu.c go-charmap-sel.c go-glib-extras.c)
 #TARGET_INCLUDE_DIRECTORIES(gnc-goffice PUBLIC ${GTK_CFLAGS} ${LIBXML2_CFLAGS})
 
 #INSTALL(TARGETS gnc-goffice
-#  LIBRARY DESTINATION lib
-#  ARCHIVE DESTINATION lib
-#  RUNTIME DESTINATION bin)
+#  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+#  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+#  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
 SET_DIST_LIST(goffice_DIST CMakeLists.txt Makefile.am
   README ${goffice_noinst_HEADERS} ${goffice_SOURCES})
diff --git a/borrowed/gwengui-gtk3/CMakeLists.txt b/borrowed/gwengui-gtk3/CMakeLists.txt
index 446c63c..a9b68f9 100644
--- a/borrowed/gwengui-gtk3/CMakeLists.txt
+++ b/borrowed/gwengui-gtk3/CMakeLists.txt
@@ -53,7 +53,7 @@ TARGET_INCLUDE_DIRECTORIES(gwengui-gtk3 PUBLIC
 TARGET_LINK_LIBRARIES(gwengui-gtk3 ${GWENHYWFAR_LDFLAGS} ${GTK3_LDFLAGS})
 
 INSTALL(TARGETS gwengui-gtk3
-  LIBRARY DESTINATION lib
-  ARCHIVE DESTINATION lib
-  RUNTIME DESTINATION bin
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
   )
diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
index bce5e3e..d79d108 100644
--- a/cmake/CMakeLists.txt
+++ b/cmake/CMakeLists.txt
@@ -2,9 +2,9 @@
 
 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)")
+                COMMAND /usr/bin/install_name_tool -add_rpath ${CMAKE_INSTALL_LIBDIR}
+                                                   -add_rpath ${PKGLIBDIR}
+                                                   ${CMAKE_INSTALL_BINDIR}/gnucash)")
 ENDIF(APPLE)
 
 
diff --git a/common/test-core/CMakeLists.txt b/common/test-core/CMakeLists.txt
index aa6e331..3309232 100644
--- a/common/test-core/CMakeLists.txt
+++ b/common/test-core/CMakeLists.txt
@@ -73,4 +73,4 @@ ADD_LIBRARY(gmock STATIC  ${lib_gmock_SOURCES})
 TARGET_INCLUDE_DIRECTORIES(gmock PUBLIC
   ${GTEST_INCLUDE_DIR} ${GTEST_SRC_DIR}
   ${GMOCK_INCLUDE_DIR} ${GMOCK_SRC_DIR})
-INSTALL(FILES unittest-support.h DESTINATION libexec/gnucash/libgnucash/engine/test)
+INSTALL(FILES unittest-support.h DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/gnucash/libgnucash/engine/test)
diff --git a/data/accounts/CMakeLists.txt b/data/accounts/CMakeLists.txt
index d02aa52..1c62ab1 100644
--- a/data/accounts/CMakeLists.txt
+++ b/data/accounts/CMakeLists.txt
@@ -36,7 +36,7 @@ SET(accounts_SUBDIRS
   zh_TW
 )
 
-SET(ACCOUNTS_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/gnucash/accounts)
+SET(ACCOUNTS_INSTALL_DIR ${CMAKE_INSTALL_DATADIR}/gnucash/accounts)
 SET(ACCOUNTS_BUILD_DIR ${DATADIR_BUILD}/gnucash/accounts)
 
 
diff --git a/data/checks/CMakeLists.txt b/data/checks/CMakeLists.txt
index 095119b..e9f8b3a 100644
--- a/data/checks/CMakeLists.txt
+++ b/data/checks/CMakeLists.txt
@@ -8,7 +8,7 @@ SET(checks_DATA
   quicken_3part.chk
 )
 
-INSTALL(FILES ${checks_DATA} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/gnucash/checks)
+INSTALL(FILES ${checks_DATA} DESTINATION ${CMAKE_INSTALL_DATADIR}/gnucash/checks)
 
 FILE(COPY ${checks_DATA} DESTINATION ${DATADIR_BUILD}/gnucash/checks)
 
diff --git a/gnucash/CMakeLists.txt b/gnucash/CMakeLists.txt
index 69fc47e..1ba974a 100644
--- a/gnucash/CMakeLists.txt
+++ b/gnucash/CMakeLists.txt
@@ -85,7 +85,7 @@ IF (MAC_INTEGRATION)
   TARGET_LINK_LIBRARIES(gnucash ${OSX_EXTRA_LIBRARIES})
 ENDIF(MAC_INTEGRATION)
 
-INSTALL(TARGETS gnucash DESTINATION bin)
+INSTALL(TARGETS gnucash DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install.
 
 # Generate the gnucash-env script
@@ -95,7 +95,7 @@ SET(SCRIPT_OUTPUT_DIR ${BINDIR_BUILD})
 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)
+  SET (GNC_OVERRIDES_DIR ${CMAKE_INSTALL_LIBEXECDIR}/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")
@@ -154,9 +154,9 @@ 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"))
+IF (NOT(${CMAKE_INSTALL_FULL_DATADIR} STREQUAL "/usr/share") AND NOT(${CMAKE_INSTALL_FULL_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")
+  FILE(APPEND ${ENV_FILE_OUT} "XDG_DATA_DIRS=${CMAKE_INSTALL_DATADIR};{XDG_DATA_DIRS};" "${GNC_SYSTEM_XDG_DATA_DIRS}\n")
 ENDIF()
 
 FILE(APPEND ${BUILD_ENV_FILE_OUT} "GNC_DBD_DIR=${LIBDBI_DRIVERS_DIR}/dbd")
@@ -192,8 +192,9 @@ FILE(COPY ${ENV_FILE_OUT}
   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)
+INSTALL(FILES ${SCRIPT_LIST} ${VALGRIND_OUTDIR}/gnucash-valgrind DESTINATION ${CMAKE_INSTALL_BINDIR})
+INSTALL(FILES ${ENVIRONMENT_FILE_DIR}/environment DESTINATION
+  ${CMAKE_INSTALL_FULL_SYSCONFDIR}/gnucash)
 
 IF (WIN32)
   # Write out a command script for windows
@@ -234,7 +235,7 @@ IF (WIN32)
   ENDFOREACH(line)
   FILE(APPEND ${BUILD_CMD_FILE} "\nstart gnucash %*\n")
 
-  INSTALL(PROGRAMS ${CMD_FILE} DESTINATION bin)
+  INSTALL(PROGRAMS ${CMD_FILE} DESTINATION })
 ENDIF(WIN32)
 
 # The GResource Files are absolute paths but SET_LOCAL_DIST requires
diff --git a/gnucash/gnome-search/CMakeLists.txt b/gnucash/gnome-search/CMakeLists.txt
index 3695186..f754c17 100644
--- a/gnucash/gnome-search/CMakeLists.txt
+++ b/gnucash/gnome-search/CMakeLists.txt
@@ -53,15 +53,15 @@ TARGET_COMPILE_DEFINITIONS(gncmod-gnome-search PRIVATE -DG_LOG_DOMAIN=\"gnc.gui.
 TARGET_INCLUDE_DIRECTORIES(gncmod-gnome-search PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-gnome-search PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-gnome-search PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-gnome-search
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${gnome_search_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${gnome_search_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 SET(gnome_search_GLADE dialog-search.glade)
 
diff --git a/gnucash/gnome-utils/CMakeLists.txt b/gnucash/gnome-utils/CMakeLists.txt
index 084ecb2..4a8881e 100644
--- a/gnucash/gnome-utils/CMakeLists.txt
+++ b/gnucash/gnome-utils/CMakeLists.txt
@@ -233,15 +233,15 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-gnome-utils
 
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-gnome-utils PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-gnome-utils PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-gnome-utils
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${gnome_utils_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${gnome_utils_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 
 # Scheme
diff --git a/gnucash/gnome/CMakeLists.txt b/gnucash/gnome/CMakeLists.txt
index b1c1670..5c939f0 100644
--- a/gnucash/gnome/CMakeLists.txt
+++ b/gnucash/gnome/CMakeLists.txt
@@ -156,9 +156,9 @@ ENDIF(MAC_INTEGRATION)
 
 
 INSTALL(TARGETS gnc-gnome
-  LIBRARY DESTINATION lib
-  ARCHIVE DESTINATION lib
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
 # No headers to install
 
diff --git a/gnucash/html/CMakeLists.txt b/gnucash/html/CMakeLists.txt
index 25a77d3..88f7afd 100644
--- a/gnucash/html/CMakeLists.txt
+++ b/gnucash/html/CMakeLists.txt
@@ -54,12 +54,12 @@ PUBLIC
 )
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-html PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-html PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-html
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${html_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${html_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
diff --git a/gnucash/import-export/CMakeLists.txt b/gnucash/import-export/CMakeLists.txt
index 6e620ae..57808e1 100644
--- a/gnucash/import-export/CMakeLists.txt
+++ b/gnucash/import-export/CMakeLists.txt
@@ -65,16 +65,16 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-generic-import PUBLIC ${CMAKE_CURRENT_SOURCE_D
 
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-generic-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-generic-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-generic-import
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 )
 
-INSTALL(FILES ${generic_import_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${generic_import_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 SET(generic_import_GLADE dialog-import.glade)
 
diff --git a/gnucash/import-export/aqb/CMakeLists.txt b/gnucash/import-export/aqb/CMakeLists.txt
index 52c2ff5..06e7c26 100644
--- a/gnucash/import-export/aqb/CMakeLists.txt
+++ b/gnucash/import-export/aqb/CMakeLists.txt
@@ -70,13 +70,13 @@ IF(WITH_AQBANKING)
     ${KTOBLZCHECK_INCLUDE_DIRS})
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-aqbanking PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-aqbanking PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
   INSTALL(TARGETS gncmod-aqbanking
-    LIBRARY DESTINATION lib/gnucash
-    ARCHIVE DESTINATION lib/gnucash
-    RUNTIME DESTINATION bin)
+    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
 # No headers to install
 
diff --git a/gnucash/import-export/bi-import/CMakeLists.txt b/gnucash/import-export/bi-import/CMakeLists.txt
index ad6cf6c..e7a70a8 100644
--- a/gnucash/import-export/bi-import/CMakeLists.txt
+++ b/gnucash/import-export/bi-import/CMakeLists.txt
@@ -40,13 +40,13 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-bi-import
 TARGET_COMPILE_DEFINITIONS(gncmod-bi-import PRIVATE -DG_LOG_DOMAIN=\"gnc.plugin.bi-import\")
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-bi-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-bi-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-bi-import
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install.
 
 SET_LOCAL_DIST(bi_import_DIST_local CMakeLists.txt Makefile.am README ${bi_import_SOURCES} ${bi_import_noinst_HEADERS})
diff --git a/gnucash/import-export/csv-exp/CMakeLists.txt b/gnucash/import-export/csv-exp/CMakeLists.txt
index 424efcf..dccaefa 100644
--- a/gnucash/import-export/csv-exp/CMakeLists.txt
+++ b/gnucash/import-export/csv-exp/CMakeLists.txt
@@ -26,13 +26,13 @@ TARGET_LINK_LIBRARIES(gncmod-csv-export gncmod-register-gnome gncmod-register-co
 TARGET_COMPILE_DEFINITIONS(gncmod-csv-export PRIVATE -DG_LOG_DOMAIN=\"gnc.export.csv\")
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-csv-export PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-csv-export PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-csv-export
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install.
 
 SET(csv_export_GLADE assistant-csv-export.glade)
diff --git a/gnucash/import-export/csv-imp/CMakeLists.txt b/gnucash/import-export/csv-imp/CMakeLists.txt
index e2fbb5e..0360e5d 100644
--- a/gnucash/import-export/csv-imp/CMakeLists.txt
+++ b/gnucash/import-export/csv-imp/CMakeLists.txt
@@ -73,13 +73,13 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-csv-import PRIVATE
 )
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-csv-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-csv-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-csv-import
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
 # No headers to install
 
diff --git a/gnucash/import-export/customer-import/CMakeLists.txt b/gnucash/import-export/customer-import/CMakeLists.txt
index f7e8255..d209d0e 100644
--- a/gnucash/import-export/customer-import/CMakeLists.txt
+++ b/gnucash/import-export/customer-import/CMakeLists.txt
@@ -31,13 +31,13 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-customer-import
 TARGET_COMPILE_DEFINITIONS(gncmod-customer-import PRIVATE -DG_LOG_DOMAIN=\"gnc.plugin.customer-import\")
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-customer-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-customer-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-customer-import
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install.
 
 SET_LOCAL_DIST(customer_import_DIST_local CMakeLists.txt Makefile.am ${customer_import_SOURCES} ${customer_import_noinst_HEADERS})
diff --git a/gnucash/import-export/log-replay/CMakeLists.txt b/gnucash/import-export/log-replay/CMakeLists.txt
index a0878b4..cea9116 100644
--- a/gnucash/import-export/log-replay/CMakeLists.txt
+++ b/gnucash/import-export/log-replay/CMakeLists.txt
@@ -21,13 +21,13 @@ TARGET_LINK_LIBRARIES(gncmod-log-replay gncmod-gnome-utils gncmod-app-utils gncm
 TARGET_COMPILE_DEFINITIONS(gncmod-log-replay PRIVATE -DG_LOG_DOMAIN=\"gnc.import.log-replay\")
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-log-replay PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-log-replay PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-log-replay
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install.
 
 SET(log_replay_UI gnc-plugin-log-replay-ui.xml)
diff --git a/gnucash/import-export/ofx/CMakeLists.txt b/gnucash/import-export/ofx/CMakeLists.txt
index 5484412..905b0fa 100644
--- a/gnucash/import-export/ofx/CMakeLists.txt
+++ b/gnucash/import-export/ofx/CMakeLists.txt
@@ -30,13 +30,13 @@ IF (WITH_OFX)
   TARGET_INCLUDE_DIRECTORIES(gncmod-ofx PRIVATE ${LIBOFX_INCLUDE_DIRS})
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-ofx PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-ofx PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
   INSTALL(TARGETS gncmod-ofx
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
   INSTALL(FILES ${ofx_UI} DESTINATION share/gnucash/ui)
 
diff --git a/gnucash/import-export/qif-imp/CMakeLists.txt b/gnucash/import-export/qif-imp/CMakeLists.txt
index 9c7e0e3..98cb79c 100644
--- a/gnucash/import-export/qif-imp/CMakeLists.txt
+++ b/gnucash/import-export/qif-imp/CMakeLists.txt
@@ -26,13 +26,13 @@ TARGET_LINK_LIBRARIES(gncmod-qif-import gncmod-app-utils gncmod-gnome-utils gnc-
 TARGET_COMPILE_DEFINITIONS(gncmod-qif-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import.qif.import\")
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-qif-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-qif-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-qif-import
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install.
 
 
diff --git a/gnucash/import-export/qif/CMakeLists.txt b/gnucash/import-export/qif/CMakeLists.txt
index ae0fa02..65e54d7 100644
--- a/gnucash/import-export/qif/CMakeLists.txt
+++ b/gnucash/import-export/qif/CMakeLists.txt
@@ -30,13 +30,13 @@ TARGET_LINK_LIBRARIES(gncmod-qif gncmod-generic-import gncmod-engine ${GLIB2_LDF
 TARGET_COMPILE_DEFINITIONS(gncmod-qif PRIVATE -DG_LOG_DOMAIN=\"gnc.import.qif\")
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-qif PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-qif PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-qif
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install.
 
 SET_LOCAL_DIST(qif_DIST_local CMakeLists.txt Makefile.am ${qif_SOURCES} ${qif_noinst_HEADERS})
diff --git a/gnucash/overrides/CMakeLists.txt b/gnucash/overrides/CMakeLists.txt
index 3110352..620f6ea 100644
--- a/gnucash/overrides/CMakeLists.txt
+++ b/gnucash/overrides/CMakeLists.txt
@@ -28,5 +28,5 @@ INSTALL(
     PROGRAMS
       ${SCRIPT_OUTPUT_DIR}/gnucash-env
       ${SCRIPT_OUTPUT_DIR}/gnucash-make-guids
-    DESTINATION libexec/gnucash/overrides
+    DESTINATION }exec/gnucash/overrides
 )
diff --git a/gnucash/python/CMakeLists.txt b/gnucash/python/CMakeLists.txt
index 79d27ba..8028c65 100644
--- a/gnucash/python/CMakeLists.txt
+++ b/gnucash/python/CMakeLists.txt
@@ -11,9 +11,9 @@ IF (WITH_PYTHON)
     PRIVATE ${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/core_utils ${CMAKE_SOURCE_DIR}/gnc-module ${PYTHON_INCLUDE_DIR})
   TARGET_COMPILE_OPTIONS(gncmod-python PRIVATE -DG_LOG_DOMAIN=\"gnc.python\")
   INSTALL(TARGETS gncmod-python
-    LIBRARY DESTINATION lib/gnucash
-    ARCHIVE DESTINATION lib/gnucash
-    RUNTIME DESTINATION bin
+    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
   )
 
   INSTALL(DIRECTORY pycons DESTINATION share/gnucash/python)
diff --git a/gnucash/register/ledger-core/CMakeLists.txt b/gnucash/register/ledger-core/CMakeLists.txt
index 6a663bb..5eed412 100644
--- a/gnucash/register/ledger-core/CMakeLists.txt
+++ b/gnucash/register/ledger-core/CMakeLists.txt
@@ -54,13 +54,13 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-ledger-core
 )
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-ledger-core PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-ledger-core PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-ledger-core
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install
 
 
diff --git a/gnucash/register/register-core/CMakeLists.txt b/gnucash/register/register-core/CMakeLists.txt
index a001646..5d7a501 100644
--- a/gnucash/register/register-core/CMakeLists.txt
+++ b/gnucash/register/register-core/CMakeLists.txt
@@ -52,15 +52,15 @@ TARGET_COMPILE_DEFINITIONS (gncmod-register-core PRIVATE -DG_LOG_DOMAIN=\"gnc.re
 TARGET_INCLUDE_DIRECTORIES(gncmod-register-core PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-register-core PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-register-core PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-register-core
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${register_core_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${register_core_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 SET_LOCAL_DIST(register_core_DIST_local CMakeLists.txt Makefile.am README ${register_core_SOURCES} ${register_core_HEADERS})
 
diff --git a/gnucash/register/register-gnome/CMakeLists.txt b/gnucash/register/register-gnome/CMakeLists.txt
index 2fa125a..3187abf 100644
--- a/gnucash/register/register-gnome/CMakeLists.txt
+++ b/gnucash/register/register-gnome/CMakeLists.txt
@@ -54,13 +54,13 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-register-gnome
 )
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-register-gnome PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-register-gnome PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-register-gnome
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install
 
 SET_LOCAL_DIST(register_gnome_DIST_local CMakeLists.txt Makefile.am ${register_gnome_SOURCES} ${register_gnome_noinst_HEADERS})
diff --git a/gnucash/report/locale-specific/us/CMakeLists.txt b/gnucash/report/locale-specific/us/CMakeLists.txt
index 97f7211..afcf83c 100644
--- a/gnucash/report/locale-specific/us/CMakeLists.txt
+++ b/gnucash/report/locale-specific/us/CMakeLists.txt
@@ -13,13 +13,13 @@ TARGET_COMPILE_DEFINITIONS(gncmod-locale-reports-us PRIVATE -DG_LOG_DOMAIN=\"gnc
 
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-locale-reports-us PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-locale-reports-us PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-locale-reports-us
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install
 
 # Scheme
diff --git a/gnucash/report/report-gnome/CMakeLists.txt b/gnucash/report/report-gnome/CMakeLists.txt
index e2362e2..d95a57f 100644
--- a/gnucash/report/report-gnome/CMakeLists.txt
+++ b/gnucash/report/report-gnome/CMakeLists.txt
@@ -37,15 +37,15 @@ TARGET_COMPILE_DEFINITIONS (gncmod-report-gnome PRIVATE -DG_LOG_DOMAIN=\"gnc.rep
 TARGET_INCLUDE_DIRECTORIES(gncmod-report-gnome PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-report-gnome PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-report-gnome PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-report-gnome
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${report_gnome_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${report_gnome_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 # Scheme
 
diff --git a/gnucash/report/report-system/CMakeLists.txt b/gnucash/report/report-system/CMakeLists.txt
index a589284..19f4102 100644
--- a/gnucash/report/report-system/CMakeLists.txt
+++ b/gnucash/report/report-system/CMakeLists.txt
@@ -33,15 +33,15 @@ TARGET_INCLUDE_DIRECTORIES (gncmod-report-system
 
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-report-system PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-report-system PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-report-system
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${report_system_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${report_system_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 # Scheme
 
diff --git a/gnucash/report/stylesheets/CMakeLists.txt b/gnucash/report/stylesheets/CMakeLists.txt
index 8ca7325..33c69af 100644
--- a/gnucash/report/stylesheets/CMakeLists.txt
+++ b/gnucash/report/stylesheets/CMakeLists.txt
@@ -16,20 +16,20 @@ TARGET_LINK_LIBRARIES(gncmod-stylesheets gncmod-report-gnome gncmod-report-syste
 
 TARGET_COMPILE_DEFINITIONS(gncmod-stylesheets PRIVATE -DG_LOG_DOMAIN=\"gnc.report.core\")
 
-SET(LIB_DIR lib/gnucash)
+SET(LIB_DIR ${CMAKE_INSTALL_LIBDIR}/gnucash)
 IF (WIN32)
-  SET(LIB_DIR bin)
+  SET(LIB_DIR ${CMAKE_INSTALL_BINDIR})
 ENDIF(WIN32)
 
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-stylesheets PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-stylesheets PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-stylesheets
   LIBRARY DESTINATION ${LIB_DIR}
   ARCHIVE DESTINATION ${LIB_DIR}
-  RUNTIME DESTINATION bin)
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
 # No headers to install
 
diff --git a/libgnucash/app-utils/CMakeLists.txt b/libgnucash/app-utils/CMakeLists.txt
index db1507c..6107bf0 100644
--- a/libgnucash/app-utils/CMakeLists.txt
+++ b/libgnucash/app-utils/CMakeLists.txt
@@ -100,13 +100,13 @@ TARGET_INCLUDE_DIRECTORIES (gncmod-app-utils
 TARGET_COMPILE_DEFINITIONS (gncmod-app-utils PRIVATE -DG_LOG_DOMAIN=\"gnc.app-utils\")
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-app-utils PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-app-utils PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-app-utils
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 )
 
 IF (WITH_PYTHON)
@@ -121,19 +121,19 @@ IF (WITH_PYTHON)
   TARGET_COMPILE_DEFINITIONS (gncmod-app-utils-python PRIVATE -DG_LOG_DOMAIN=\"gnc.app-utils\")
 
   IF (APPLE)
-    SET_TARGET_PROPERTIES (gncmod-app-utils-python PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+    SET_TARGET_PROPERTIES (gncmod-app-utils-python PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
   ENDIF()
 
   INSTALL(TARGETS gncmod-app-utils-python
-    LIBRARY DESTINATION lib/gnucash
-    ARCHIVE DESTINATION lib/gnucash
-    RUNTIME DESTINATION bin
+    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
   )
 ENDIF()
 
 
 
-INSTALL(FILES ${app_utils_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${app_utils_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 IF (WITH_OFX)
   FILE(READ ${CMAKE_SOURCE_DIR}/gnucash/import-export/ofx/migratable-prefs-ofx.xml MIGRATABLE_PREFS_OFX)
diff --git a/libgnucash/backend/dbi/CMakeLists.txt b/libgnucash/backend/dbi/CMakeLists.txt
index 6c8dbdf..4a43d31 100644
--- a/libgnucash/backend/dbi/CMakeLists.txt
+++ b/libgnucash/backend/dbi/CMakeLists.txt
@@ -41,11 +41,11 @@ TARGET_COMPILE_DEFINITIONS(gncmod-backend-dbi PRIVATE -DG_LOG_DOMAIN=\"gnc.backe
 TARGET_INCLUDE_DIRECTORIES(gncmod-backend-dbi PRIVATE ${LIBDBI_INCLUDE_PATH})
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-backend-dbi PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-backend-dbi PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-backend-dbi
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install
diff --git a/libgnucash/backend/sql/CMakeLists.txt b/libgnucash/backend/sql/CMakeLists.txt
index 2bd6fa0..4659b0e 100644
--- a/libgnucash/backend/sql/CMakeLists.txt
+++ b/libgnucash/backend/sql/CMakeLists.txt
@@ -76,8 +76,8 @@ TARGET_COMPILE_DEFINITIONS (gnc-backend-sql PRIVATE -DG_LOG_DOMAIN=\"gnc.backend
 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)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
 # No headers to install
diff --git a/libgnucash/backend/xml/CMakeLists.txt b/libgnucash/backend/xml/CMakeLists.txt
index 4c3d8c9..e231f7a 100644
--- a/libgnucash/backend/xml/CMakeLists.txt
+++ b/libgnucash/backend/xml/CMakeLists.txt
@@ -92,9 +92,9 @@ TARGET_INCLUDE_DIRECTORIES (gnc-backend-xml-utils
 TARGET_COMPILE_DEFINITIONS (gnc-backend-xml-utils PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.xml\" -DU_SHOW_CPLUSPLUS_API=0)
 
 INSTALL(TARGETS gnc-backend-xml-utils
-  LIBRARY DESTINATION lib
-  ARCHIVE DESTINATION lib
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install
 
 # ----
@@ -109,20 +109,20 @@ TARGET_LINK_LIBRARIES(gncmod-backend-xml gnc-backend-xml-utils gncmod-engine
 
 TARGET_COMPILE_DEFINITIONS (gncmod-backend-xml PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.xml\" -DU_SHOW_CPLUSPLUS_API=0)
 
-SET(LIB_DIR lib/gnucash)
+SET(LIB_DIR ${CMAKE_INSTALL_LIBDIR}/gnucash)
 IF (WIN32)
-  SET(LIB_DIR bin)
+  SET(LIB_DIR ${CMAKE_INSTALL_BINDIR})
 ENDIF(WIN32)
 
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-backend-xml PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/${LIB_DIR}")
+  SET_TARGET_PROPERTIES (gncmod-backend-xml PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}")
 ENDIF()
 
 INSTALL(TARGETS gncmod-backend-xml
   LIBRARY DESTINATION ${LIB_DIR}
   ARCHIVE DESTINATION ${LIB_DIR}
-  RUNTIME DESTINATION bin)
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
 # ----
 
diff --git a/libgnucash/core-utils/CMakeLists.txt b/libgnucash/core-utils/CMakeLists.txt
index dd4ff00..52e1251 100644
--- a/libgnucash/core-utils/CMakeLists.txt
+++ b/libgnucash/core-utils/CMakeLists.txt
@@ -162,9 +162,9 @@ IF (MAC_INTEGRATION)
 ENDIF(MAC_INTEGRATION)
 
 INSTALL(TARGETS gnc-core-utils
-  LIBRARY DESTINATION lib
-  ARCHIVE DESTINATION lib
-  RUNTIME DESTINATION bin
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 )
 
 IF (WITH_PYTHON)
@@ -184,9 +184,9 @@ IF (WITH_PYTHON)
   ENDIF(MAC_INTEGRATION)
 
   INSTALL(TARGETS gnc-core-utils-python
-    LIBRARY DESTINATION lib
-    ARCHIVE DESTINATION lib
-    RUNTIME DESTINATION bin
+    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
   )
 
 ENDIF()
diff --git a/libgnucash/engine/CMakeLists.txt b/libgnucash/engine/CMakeLists.txt
index b7f4fb0..b7dbd69 100644
--- a/libgnucash/engine/CMakeLists.txt
+++ b/libgnucash/engine/CMakeLists.txt
@@ -249,15 +249,15 @@ TARGET_INCLUDE_DIRECTORIES (gncmod-engine
 )
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-engine PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-engine PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-engine
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${engine_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${engine_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 SET(qof_test_HEADERS
 kvp-frame.hpp
@@ -267,7 +267,7 @@ qofobject.h
 qofsession.h
 )
 
-INSTALL(FILES ${qof_test_HEADERS} DESTINATION libexec/gnucash/libgnucash/engine/test)
+INSTALL(FILES ${qof_test_HEADERS} DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/gnucash/libgnucash/engine/test)
 
 # Scheme
 
diff --git a/libgnucash/gnc-module/CMakeLists.txt b/libgnucash/gnc-module/CMakeLists.txt
index ae9bd03..c599e97 100644
--- a/libgnucash/gnc-module/CMakeLists.txt
+++ b/libgnucash/gnc-module/CMakeLists.txt
@@ -39,11 +39,11 @@ TARGET_INCLUDE_DIRECTORIES (gnc-module
 )
 
 INSTALL(TARGETS gnc-module
-  LIBRARY DESTINATION lib
-  ARCHIVE DESTINATION lib
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 
-INSTALL(FILES ${gnc_module_HEADERS} DESTINATION include/gnucash)
+INSTALL(FILES ${gnc_module_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/gnucash)
 
 # --- Compile Scheme file(s) ---
 
diff --git a/libgnucash/quotes/CMakeLists.txt b/libgnucash/quotes/CMakeLists.txt
index ed2ced8..21118ed 100644
--- a/libgnucash/quotes/CMakeLists.txt
+++ b/libgnucash/quotes/CMakeLists.txt
@@ -47,7 +47,7 @@ ENDFOREACH(file)
 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)
-INSTALL(PROGRAMS ${_BIN_FILES} DESTINATION bin)
+INSTALL(PROGRAMS ${_BIN_FILES} DESTINATION })
 
 SET_DIST_LIST(quotes_DIST CMakeLists.txt gnc-fq-check.in gnc-fq-dump gnc-fq-helper.in gnc-fq-update.in
         gnc-value-portfolio Makefile.am Quote_example.pl README)
diff --git a/libgnucash/scm/CMakeLists.txt b/libgnucash/scm/CMakeLists.txt
index 4d0aa5b..22165f8 100644
--- a/libgnucash/scm/CMakeLists.txt
+++ b/libgnucash/scm/CMakeLists.txt
@@ -52,7 +52,7 @@ GNC_ADD_SCHEME_TARGETS(scm-scm-3
 
 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)
+INSTALL(FILES config DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/gnucash)
 
 SET_LOCAL_DIST(scm_DIST_local config CMakeLists.txt Makefile.am fin.scm string.scm build-config.scm.in substring-search.scm
                               xml-generator.scm main.scm price-quotes.scm printf.scm ${scm_SCHEME_4})
diff --git a/libgnucash/tax/us/CMakeLists.txt b/libgnucash/tax/us/CMakeLists.txt
index 83479bd..c25199b 100644
--- a/libgnucash/tax/us/CMakeLists.txt
+++ b/libgnucash/tax/us/CMakeLists.txt
@@ -12,13 +12,13 @@ TARGET_INCLUDE_DIRECTORIES(gncmod-tax-us
     PRIVATE ${CMAKE_BINARY_DIR}/common ${GUILE_INCLUDE_DIRS})
 
 IF (APPLE)
-  SET_TARGET_PROPERTIES (gncmod-tax-us PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib/gnucash")
+  SET_TARGET_PROPERTIES (gncmod-tax-us PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_LIBDIR}/gnucash")
 ENDIF()
 
 INSTALL(TARGETS gncmod-tax-us
-  LIBRARY DESTINATION lib/gnucash
-  ARCHIVE DESTINATION lib/gnucash
-  RUNTIME DESTINATION bin)
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 # No headers to install
 
 # Scheme

commit e92a1b3723e7ddfa72d1fa40c6b3a79b7e1e19f7
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Nov 28 14:25:24 2017 -0800

    Fix python tests in tarball builds.

diff --git a/bindings/python/Makefile.am b/bindings/python/Makefile.am
index 264c2cf..06e8e81 100644
--- a/bindings/python/Makefile.am
+++ b/bindings/python/Makefile.am
@@ -106,18 +106,25 @@ sqlite3test_SOURCES = sqlite3test.c
 sqlite3test_LDADD = ${_gnucash_core_c_la_LIBADD}
 sqlite3test_CPPFLAGS = ${_gnucash_core_c_la_CPPFLAGS}
 
-PYTHON_LINK_FILES = \
+PYTHON_GNUCASH_LINK_FILES = \
   $(pkgpyexec_DATA)
 
-.py-links:$(PYTHON_LINK_FILES)
+
+if BUILDING_FROM_VCS
+  PYTHON_LINK_FILES = $(filter-out gnucash_core_c.py,${PYTHON_GNUCASH_LINK_FILES})
+else
+  PYTHON_LINK_FILES = ${PYTHON_GNUCASH_LINK_FILES}
+endif
+
+.py-links:$(PYTHON_GNUCASH_LINK_FILES)
 	$(RM) -rf gnucash
 	mkdir -p gnucash
 if GNUCASH_SEPARATE_BUILDDIR
-	for X in $(filter-out gnucash_core_c.py,${PYTHON_LINK_FILES}) ; do \
-	  $(LN_S) -f ${srcdir}/$$X . ; \
+	for X in ${PYTHON_LINK_FILES} ; do \
+	    $(LN_S) -f ${srcdir}/$$X . ; \
 	done
 endif
-	( cd gnucash; for file in $(PYTHON_LINK_FILES) ; do \
+	( cd gnucash; for file in $(PYTHON_GNUCASH_LINK_FILES) ; do \
 	  $(LN_S) -f ../$$file .; \
 	  done )
 
diff --git a/bindings/python/tests/CMakeLists.txt b/bindings/python/tests/CMakeLists.txt
index d0a857a..ef38aa1 100644
--- a/bindings/python/tests/CMakeLists.txt
+++ b/bindings/python/tests/CMakeLists.txt
@@ -12,6 +12,7 @@ SET(test_python_bindings_DATA
         test_account.py
         test_book.py
         test_business.py
+        test_commodity.py
         test_split.py
         test_transaction.py)
 
diff --git a/common/test-core/CMakeLists.txt b/common/test-core/CMakeLists.txt
index 9d2e335..aa6e331 100644
--- a/common/test-core/CMakeLists.txt
+++ b/common/test-core/CMakeLists.txt
@@ -36,6 +36,7 @@ IF (BUILDING_FROM_VCS)
 ELSE()
   SET (SWIG_UNITTEST_SUPPORT_GUILE_C  swig-unittest-support-guile.c)
   SET (SWIG_UNITTEST_SUPPORT_PYTHON_C swig-unittest-support-python.c)
+  FILE(COPY unittest_support.py DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
 ENDIF()
 
 

commit 831640b546805ce2896ee6a5df3df7af428bc3c9
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Nov 28 09:53:06 2017 -0800

    Remove common/test-core/unittest_support.py from git.
    
    It's a SWIG-generated file accidentally added during directory
    rearrangement.

diff --git a/common/test-core/unittest_support.py b/common/test-core/unittest_support.py
deleted file mode 100644
index cdf7ecf..0000000
--- a/common/test-core/unittest_support.py
+++ /dev/null
@@ -1,166 +0,0 @@
-# This file was automatically generated by SWIG (http://www.swig.org).
-# Version 3.0.10
-#
-# Do not make changes to this file unless you know what you are doing--modify
-# the SWIG interface file instead.
-
-
-
-
-
-from sys import version_info as _swig_python_version_info
-if _swig_python_version_info >= (2, 7, 0):
-    def swig_import_helper():
-        import importlib
-        pkg = __name__.rpartition('.')[0]
-        mname = '.'.join((pkg, '_unittest_support')).lstrip('.')
-        try:
-            return importlib.import_module(mname)
-        except ImportError:
-            return importlib.import_module('_unittest_support')
-    _unittest_support = swig_import_helper()
-    del swig_import_helper
-elif _swig_python_version_info >= (2, 6, 0):
-    def swig_import_helper():
-        from os.path import dirname
-        import imp
-        fp = None
-        try:
-            fp, pathname, description = imp.find_module('_unittest_support', [dirname(__file__)])
-        except ImportError:
-            import _unittest_support
-            return _unittest_support
-        if fp is not None:
-            try:
-                _mod = imp.load_module('_unittest_support', fp, pathname, description)
-            finally:
-                fp.close()
-            return _mod
-    _unittest_support = swig_import_helper()
-    del swig_import_helper
-else:
-    import _unittest_support
-del _swig_python_version_info
-try:
-    _swig_property = property
-except NameError:
-    pass  # Python < 2.2 doesn't have 'property'.
-
-try:
-    import builtins as __builtin__
-except ImportError:
-    import __builtin__
-
-def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
-    if (name == "thisown"):
-        return self.this.own(value)
-    if (name == "this"):
-        if type(value).__name__ == 'SwigPyObject':
-            self.__dict__[name] = value
-            return
-    method = class_type.__swig_setmethods__.get(name, None)
-    if method:
-        return method(self, value)
-    if (not static):
-        if _newclass:
-            object.__setattr__(self, name, value)
-        else:
-            self.__dict__[name] = value
-    else:
-        raise AttributeError("You cannot add attributes to %s" % self)
-
-
-def _swig_setattr(self, class_type, name, value):
-    return _swig_setattr_nondynamic(self, class_type, name, value, 0)
-
-
-def _swig_getattr(self, class_type, name):
-    if (name == "thisown"):
-        return self.this.own()
-    method = class_type.__swig_getmethods__.get(name, None)
-    if method:
-        return method(self)
-    raise AttributeError("'%s' object has no attribute '%s'" % (class_type.__name__, name))
-
-
-def _swig_repr(self):
-    try:
-        strthis = "proxy of " + self.this.__repr__()
-    except __builtin__.Exception:
-        strthis = ""
-    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
-
-try:
-    _object = object
-    _newclass = 1
-except __builtin__.Exception:
-    class _object:
-        pass
-    _newclass = 0
-
-class TestErrorStruct(_object):
-    __swig_setmethods__ = {}
-    __setattr__ = lambda self, name, value: _swig_setattr(self, TestErrorStruct, name, value)
-    __swig_getmethods__ = {}
-    __getattr__ = lambda self, name: _swig_getattr(self, TestErrorStruct, name)
-    __repr__ = _swig_repr
-    __swig_setmethods__["log_level"] = _unittest_support.TestErrorStruct_log_level_set
-    __swig_getmethods__["log_level"] = _unittest_support.TestErrorStruct_log_level_get
-    if _newclass:
-        log_level = _swig_property(_unittest_support.TestErrorStruct_log_level_get, _unittest_support.TestErrorStruct_log_level_set)
-    __swig_setmethods__["log_domain"] = _unittest_support.TestErrorStruct_log_domain_set
-    __swig_getmethods__["log_domain"] = _unittest_support.TestErrorStruct_log_domain_get
-    if _newclass:
-        log_domain = _swig_property(_unittest_support.TestErrorStruct_log_domain_get, _unittest_support.TestErrorStruct_log_domain_set)
-    __swig_setmethods__["msg"] = _unittest_support.TestErrorStruct_msg_set
-    __swig_getmethods__["msg"] = _unittest_support.TestErrorStruct_msg_get
-    if _newclass:
-        msg = _swig_property(_unittest_support.TestErrorStruct_msg_get, _unittest_support.TestErrorStruct_msg_set)
-
-    def __init__(self):
-        this = _unittest_support.new_TestErrorStruct()
-        try:
-            self.this.append(this)
-        except __builtin__.Exception:
-            self.this = this
-    __swig_destroy__ = _unittest_support.delete_TestErrorStruct
-    __del__ = lambda self: None
-TestErrorStruct_swigregister = _unittest_support.TestErrorStruct_swigregister
-TestErrorStruct_swigregister(TestErrorStruct)
-
-G_LOG_FLAG_RECURSION = _unittest_support.G_LOG_FLAG_RECURSION
-G_LOG_FLAG_FATAL = _unittest_support.G_LOG_FLAG_FATAL
-G_LOG_LEVEL_ERROR = _unittest_support.G_LOG_LEVEL_ERROR
-G_LOG_LEVEL_CRITICAL = _unittest_support.G_LOG_LEVEL_CRITICAL
-G_LOG_LEVEL_WARNING = _unittest_support.G_LOG_LEVEL_WARNING
-G_LOG_LEVEL_MESSAGE = _unittest_support.G_LOG_LEVEL_MESSAGE
-G_LOG_LEVEL_INFO = _unittest_support.G_LOG_LEVEL_INFO
-G_LOG_LEVEL_DEBUG = _unittest_support.G_LOG_LEVEL_DEBUG
-G_LOG_LEVEL_MASK = _unittest_support.G_LOG_LEVEL_MASK
-
-def test_add_error(error):
-    return _unittest_support.test_add_error(error)
-test_add_error = _unittest_support.test_add_error
-
-def test_clear_error_list():
-    return _unittest_support.test_clear_error_list()
-test_clear_error_list = _unittest_support.test_clear_error_list
-
-def test_set_checked_handler(domain, level, data):
-    return _unittest_support.test_set_checked_handler(domain, level, data)
-test_set_checked_handler = _unittest_support.test_set_checked_handler
-
-def test_set_list_handler(domain, level, data):
-    return _unittest_support.test_set_list_handler(domain, level, data)
-test_set_list_handler = _unittest_support.test_set_list_handler
-
-def test_set_null_handler(domain, level, data):
-    return _unittest_support.test_set_null_handler(domain, level, data)
-test_set_null_handler = _unittest_support.test_set_null_handler
-
-def g_log_remove_handler(log_domain, handler):
-    return _unittest_support.g_log_remove_handler(log_domain, handler)
-g_log_remove_handler = _unittest_support.g_log_remove_handler
-# This file is compatible with both classic and new-style classes.
-
-



Summary of changes:
 CMakeLists.txt                                     |  31 ++--
 bindings/python/Makefile.am                        |  17 ++-
 bindings/python/tests/CMakeLists.txt               |   1 +
 borrowed/goffice/CMakeLists.txt                    |   6 +-
 borrowed/gwengui-gtk3/CMakeLists.txt               |   6 +-
 cmake/CMakeLists.txt                               |   6 +-
 common/test-core/CMakeLists.txt                    |   3 +-
 common/test-core/unittest_support.py               | 166 ---------------------
 data/accounts/CMakeLists.txt                       |   2 +-
 data/checks/CMakeLists.txt                         |   2 +-
 gnucash/CMakeLists.txt                             |  15 +-
 gnucash/gnome-search/CMakeLists.txt                |  10 +-
 gnucash/gnome-utils/CMakeLists.txt                 |  10 +-
 gnucash/gnome/CMakeLists.txt                       |   6 +-
 gnucash/html/CMakeLists.txt                        |  10 +-
 gnucash/import-export/CMakeLists.txt               |  10 +-
 gnucash/import-export/aqb/CMakeLists.txt           |   8 +-
 gnucash/import-export/bi-import/CMakeLists.txt     |   8 +-
 gnucash/import-export/csv-exp/CMakeLists.txt       |   8 +-
 gnucash/import-export/csv-imp/CMakeLists.txt       |   8 +-
 .../import-export/customer-import/CMakeLists.txt   |   8 +-
 gnucash/import-export/log-replay/CMakeLists.txt    |   8 +-
 gnucash/import-export/ofx/CMakeLists.txt           |   8 +-
 gnucash/import-export/qif-imp/CMakeLists.txt       |   8 +-
 gnucash/import-export/qif/CMakeLists.txt           |   8 +-
 gnucash/overrides/CMakeLists.txt                   |   2 +-
 gnucash/python/CMakeLists.txt                      |   6 +-
 gnucash/register/ledger-core/CMakeLists.txt        |   8 +-
 gnucash/register/register-core/CMakeLists.txt      |  10 +-
 gnucash/register/register-gnome/CMakeLists.txt     |   8 +-
 gnucash/report/locale-specific/us/CMakeLists.txt   |   8 +-
 gnucash/report/report-gnome/CMakeLists.txt         |  10 +-
 gnucash/report/report-system/CMakeLists.txt        |  10 +-
 gnucash/report/stylesheets/CMakeLists.txt          |   8 +-
 libgnucash/app-utils/CMakeLists.txt                |  18 +--
 libgnucash/backend/dbi/CMakeLists.txt              |   8 +-
 libgnucash/backend/sql/CMakeLists.txt              |   6 +-
 libgnucash/backend/xml/CMakeLists.txt              |  14 +-
 libgnucash/core-utils/CMakeLists.txt               |  12 +-
 libgnucash/engine/CMakeLists.txt                   |  12 +-
 libgnucash/gnc-module/CMakeLists.txt               |   8 +-
 libgnucash/quotes/CMakeLists.txt                   |   2 +-
 libgnucash/scm/CMakeLists.txt                      |   2 +-
 libgnucash/tax/us/CMakeLists.txt                   |   8 +-
 44 files changed, 189 insertions(+), 344 deletions(-)
 delete mode 100644 common/test-core/unittest_support.py



More information about the gnucash-changes mailing list