gnucash master: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Sat Sep 21 19:34:57 EDT 2019


Updated	 via  https://github.com/Gnucash/gnucash/commit/78f44434 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/b8b33b95 (commit)
	from  https://github.com/Gnucash/gnucash/commit/980daeec (commit)



commit 78f44434da306645bc6e5c5db9ac41f9cac0a339
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Sep 21 15:34:36 2019 -0700

    Fix missing include CheckSymbolExists and use the AQB linkage flags found by pkg-config.

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6586d0af0..7d579b2b8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -337,7 +337,8 @@ if (WITH_AQBANKING)
   pkg_check_modules (AQBANKING REQUIRED aqbanking>=5.3.4)
   set(CMAKE_REQUIRED_INCLUDES "${AQBANKING_INCLUDE_DIRS}"
     "${GWENHYWFAR_INCLUDE_DIRS}")
-  set(CMAKE_REQUIRED_LIBRARIES "-laqbanking")
+  set(CMAKE_REQUIRED_LIBRARIES "${AQBANKING_LD_FLAGS}")
+  include(CheckSymbolExists)
   check_symbol_exists("AB_Banking_RuntimeConfig_SetCharValue"
     "aqbanking/banking.h" AQB_HAS_RUNTIME_CONFIG)
   set(CMAKE_REQUIRED_INCLUDES)

commit b8b33b959143962181adefe92e9040d40d3a504f
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Sep 21 15:28:09 2019 -0700

    Revert "More conversions from pkg-config variables to imported targets."
    
    This reverts commit 1a9fcfefad723e45ccae7514eb6ea3ac97573ea9 because
    on MinGW cmake complains about the paths in pkgconfig files. This can
    be addressed by using the MSYS2 cmake instead of the MINGW32 one, but
    that requires some other changes... and there's also a path separator
    bug in that version of FindPkgConfig.cmake.

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 119402457..6586d0af0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -193,14 +193,14 @@ if (NOT PKG_CONFIG_FOUND)
  endif (NOT PKG_CONFIG_FOUND)
 
 # glib et al.
-pkg_check_modules (GLIB2 REQUIRED IMPORTED_TARGET glib-2.0>=2.40)
-pkg_check_modules (GIO REQUIRED IMPORTED_TARGET gio-2.0)
-pkg_check_modules (GOBJECT REQUIRED IMPORTED_TARGET gobject-2.0>=2.20)
-pkg_check_modules (GMODULE REQUIRED IMPORTED_TARGET gmodule-2.0>=2.20)
-pkg_check_modules (GTHREAD REQUIRED IMPORTED_TARGET gthread-2.0>=2.20)
-
-pkg_check_modules (LIBXML2 REQUIRED IMPORTED_TARGET libxml-2.0>=2.7.0)
-pkg_check_modules (LIBXSLT REQUIRED IMPORTED_TARGET libxslt)
+pkg_check_modules (GLIB2 REQUIRED glib-2.0>=2.40)
+pkg_check_modules (GIO REQUIRED gio-2.0)
+pkg_check_modules (GOBJECT REQUIRED gobject-2.0>=2.20)
+pkg_check_modules (GMODULE REQUIRED gmodule-2.0>=2.20)
+pkg_check_modules (GTHREAD REQUIRED gthread-2.0>=2.20)
+
+pkg_check_modules (LIBXML2 REQUIRED libxml-2.0>=2.7.0)
+pkg_check_modules (LIBXSLT REQUIRED libxslt)
 if (WITH_GNUCASH)
   if (WIN32 OR APPLE)
     pkg_check_modules (WEBKIT REQUIRED IMPORTED_TARGET webkitgtk-3.0)
@@ -220,7 +220,7 @@ if (WITH_GNUCASH)
   pkg_check_modules (GTK3 REQUIRED IMPORTED_TARGET gtk+-3.0>=3.18.0)
 endif (WITH_GNUCASH)
 
-pkg_check_modules (ZLIB REQUIRED IMPORTED_TARGET zlib)
+pkg_check_modules (ZLIB REQUIRED zlib)
 
 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")
@@ -268,23 +268,42 @@ string(REGEX MATCH "^[0-9]+[.]" SWIG_MAJOR ${SWIG_VERSION})
 # Look for guile versions in this order: 2.2 > 2.0
 
 # guile library and include dir
-pkg_check_modules (GUILE IMPORTED_TARGET guile-2.2 QUIET)
-if (GUILE_FOUND)
-  if (NOT GUILE_EFFECTIVE_VERSION) # found guile-2.2
-    set(GUILE_EFFECTIVE_VERSION 2.2)
-  endif()
-else(GUILE_FOUND)
-  pkg_check_modules (GUILE REQUIRED IMPORTED_TARGET guile-2.0>=2.0.9 QUIET)
-  set(GUILE_EFFECTIVE_VERSION 2.0)
-endif(GUILE_FOUND)
-find_program (GUILD_EXECUTABLE NAMES guild2.2 guild2.0 guild)
-if (NOT GUILD_EXECUTABLE)
-  message (SEND_ERROR "The guild executable was not found, but is required.")
-endif (NOT GUILD_EXECUTABLE)
+pkg_check_modules (GUILE22 guile-2.2 QUIET)
+if (GUILE22_FOUND) # found guile-2.2
+  add_definitions (-DHAVE_GUILE22)
+  set(HAVE_GUILE2 TRUE)
+  set(GUILE_EFFECTIVE_VERSION 2.2)
+  set(GUILE_INCLUDE_DIRS ${GUILE22_INCLUDE_DIRS})
+  set(GUILE_LDFLAGS ${GUILE22_LDFLAGS})
+
+  find_program (GUILD_EXECUTABLE NAMES guild2.2 guild)
+  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.2.x")
+  find_program (GUILE_EXECUTABLE NAMES guile2.2 guile)
+else(GUILE22_FOUND)
+  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)
+    set(GUILE_INCLUDE_DIRS ${GUILE2_INCLUDE_DIRS})
+    set(GUILE_LDFLAGS ${GUILE2_LDFLAGS})
+
+    find_program (GUILD_EXECUTABLE NAMES guild2.0 guild)
+    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")
-    find_program (GUILE_EXECUTABLE NAMES guile2.2 guile2.0 guile)
+    find_program (GUILE_EXECUTABLE NAMES guile2.0 guile)
+  else(GUILE2_FOUND)
+    message (FATAL_ERROR "Neither guile 2.2 nor guile 2.0 were found GnuCash can't run without one of them. Ensure that one is installed and can be found with pkg-config.")
+  endif(GUILE2_FOUND)
+endif(GUILE22_FOUND)
+
 if (NOT GUILE_EXECUTABLE)
-  message (SEND_ERROR "The guile executable was not found, but is required.")
+  message (SEND_ERROR "The guile executable was not found, but is required. Please set GUILE_EXECUTABLE.")
 endif (NOT GUILE_EXECUTABLE)
 
 # Test that guile has SRFI-64. This is required for some unit tests.
@@ -314,8 +333,15 @@ find_guile_dirs()
 
 # ############################################################
 if (WITH_AQBANKING)
-  pkg_check_modules (GWENHYWFAR REQUIRED  IMPORTED_TARGET gwenhywfar>=4.9.99)
-  pkg_check_modules (AQBANKING REQUIRED IMPORTED_TARGET aqbanking>=5.3.4)
+  pkg_check_modules (GWENHYWFAR REQUIRED gwenhywfar>=4.9.99)
+  pkg_check_modules (AQBANKING REQUIRED aqbanking>=5.3.4)
+  set(CMAKE_REQUIRED_INCLUDES "${AQBANKING_INCLUDE_DIRS}"
+    "${GWENHYWFAR_INCLUDE_DIRS}")
+  set(CMAKE_REQUIRED_LIBRARIES "-laqbanking")
+  check_symbol_exists("AB_Banking_RuntimeConfig_SetCharValue"
+    "aqbanking/banking.h" AQB_HAS_RUNTIME_CONFIG)
+  set(CMAKE_REQUIRED_INCLUDES)
+  set(CMAKE_REQUIRED_LIBRARIES)
   if(WITH_GNUCASH)
     pkg_check_modules (GWEN_GTK3 gwengui-gtk3)
     if(GWEN_GTK3_FOUND AND GWEN_GTK3_VERSION VERSION_GREATER "4.20.0")
@@ -325,7 +351,7 @@ if (WITH_AQBANKING)
 endif (WITH_AQBANKING)
 
 if (WITH_OFX)
-  pkg_check_modules (LIBOFX REQUIRED IMPORTED_TARGET libofx)
+  pkg_check_modules (LIBOFX REQUIRED libofx)
   include(CheckCXXSourceRuns)
   if (WIN32)
       set(CMAKE_REQUIRED_LIBRARIES "-L ${CMAKE_PREFIX_PATH}/libofx/lib -lofx")
@@ -468,9 +494,10 @@ get_filename_component(PERL_DIR ${PERL_EXECUTABLE} DIRECTORY)
 find_program(POD2MAN_EXECUTABLE pod2man HINTS ${PERL_DIR})
 
 #ICU
-find_package(ICU REQUIRED COMPONENTS i18n uc)
+pkg_check_modules (ICU4C REQUIRED icu-uc)
+pkg_check_modules (ICU4C_I18N REQUIRED icu-i18n)
 
-pkg_check_modules (LIBSECRET IMPORTED_TARGET libsecret-1>=0.18)
+pkg_check_modules (LIBSECRET libsecret-1>=0.18)
 IF (LIBSECRET_FOUND)
   SET (HAVE_LIBSECRET ON)
 ENDIF (LIBSECRET_FOUND)
diff --git a/common/test-core/CMakeLists.txt b/common/test-core/CMakeLists.txt
index fd0faf5e2..42c13461e 100644
--- a/common/test-core/CMakeLists.txt
+++ b/common/test-core/CMakeLists.txt
@@ -22,7 +22,7 @@ set_dist_list(test_core_DIST ${test_core_SOURCES} ${test_core_noinst_HEADERS} CM
         unittest-support.i unittest-support.scm)
 
 add_library(test-core STATIC ${test_core_SOURCES} ${test_core_noinst_HEADERS})
-target_link_libraries(test-core gncmod-engine PkgConfig::GLIB2)
+target_link_libraries(test-core gncmod-engine ${GLIB2_LDFLAGS})
 if (UNIX)
   target_compile_options(test-core PRIVATE -fPIC)
 endif()
@@ -41,7 +41,7 @@ gnc_add_swig_python_command (swig-unittest-support-python
 )
 
 add_library(test-core-guile ${SWIG_UNITTEST_SUPPORT_GUILE_C})
-target_link_libraries(test-core-guile test-core PkgConfig::GUILE PkgConfig::GLIB2)
+target_link_libraries(test-core-guile test-core ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS})
 
 if (WITH_PYTHON)
   add_library(unittest_support MODULE ${SWIG_UNITTEST_SUPPORT_PYTHON_C})
diff --git a/gnucash/CMakeLists.txt b/gnucash/CMakeLists.txt
index 44f82e0ff..2cbd01aac 100644
--- a/gnucash/CMakeLists.txt
+++ b/gnucash/CMakeLists.txt
@@ -53,8 +53,7 @@ endif (BUILDING_FROM_VCS)
 target_link_libraries (gnucash
    gncmod-ledger-core gnc-gnome gncmod-gnome-utils gncmod-app-utils
    gncmod-engine gnc-module gnc-core-utils gncmod-report
-   PkgConfig::GLIB2 PkgConfig::GTK3 PkgConfig::GUILE
-   $<$<BOOL:${GTK_MAC_FOUND}>:PkgConfig::GTK_MAC>
+   PkgConfig::GTK3 ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS} ${GTK_MAC_LDFLAGS}
 )
 
 # Get glib executable for generating the gresource file
diff --git a/gnucash/gnome-utils/CMakeLists.txt b/gnucash/gnome-utils/CMakeLists.txt
index ea389e443..45cc0de36 100644
--- a/gnucash/gnome-utils/CMakeLists.txt
+++ b/gnucash/gnome-utils/CMakeLists.txt
@@ -203,9 +203,8 @@ add_library (gncmod-gnome-utils
 )
 
 target_link_libraries(gncmod-gnome-utils gncmod-app-utils gncmod-engine
-  gnc-backend-xml-utils PkgConfig::GTK3 ${CMAKE_DL_LIBS}
-  $<$<BOOL:${LIBSECRET_FOUND}>:PkgConfig::LIBSECRET>
-  $<$<BOOL:${GTK_MAC_FOUND}>:PkgConfig::GTK_MAC>)
+  gnc-backend-xml-utils PkgConfig::GTK3 ${CMAKE_DL_LIBS} ${LIBSECRET_LDFLAGS}
+  ${GTK_MAC_LDFLAGS})
 
 target_compile_options(gncmod-gnome-utils PRIVATE -Wno-deprecated-declarations)
 target_compile_definitions(gncmod-gnome-utils PUBLIC ${GTK_MAC_CFLAGS_OTHER}
@@ -224,6 +223,8 @@ target_include_directories(gncmod-gnome-utils
     PUBLIC
       ${CMAKE_CURRENT_SOURCE_DIR}
     PRIVATE
+      ${GTK_MAC_INCLUDE_DIRS}
+      ${LIBSECRET_INCLUDE_DIRS}
       ${CMAKE_CURRENT_BINARY_DIR}
 )
 
diff --git a/gnucash/gnome-utils/test/CMakeLists.txt b/gnucash/gnome-utils/test/CMakeLists.txt
index 5fc29da56..385a07ecf 100644
--- a/gnucash/gnome-utils/test/CMakeLists.txt
+++ b/gnucash/gnome-utils/test/CMakeLists.txt
@@ -1,6 +1,7 @@
 
 set(GNOME_UTILS_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
+  ${GLIB2_INCLUDE_DIRS}
   ${GUILE_INCLUDE_DIRS}
 )
 set(GNOME_UTILS_TEST_LIBS gnc-module test-core)
diff --git a/gnucash/gnome/CMakeLists.txt b/gnucash/gnome/CMakeLists.txt
index 32beaf79b..01c466398 100644
--- a/gnucash/gnome/CMakeLists.txt
+++ b/gnucash/gnome/CMakeLists.txt
@@ -138,8 +138,7 @@ set_source_files_properties (${gnc_gnome_SOURCES} PROPERTIES OBJECT_DEPENDS ${CO
 add_library (gnc-gnome ${gnc_gnome_SOURCES} ${gnc_gnome_noinst_HEADERS} ${SWIG_GNOME_C})
 target_link_libraries(gnc-gnome gncmod-gnome-search gncmod-ledger-core
   gncmod-html gncmod-report gncmod-register-gnome gncmod-register-core
-  gncmod-gnome-utils gncmod-engine PkgConfig::GTK3
-  $<$<BOOL:${GTK_MAC_FOUND}>:PkgConfig::GTK_MAC>)
+  gncmod-gnome-utils gncmod-engine PkgConfig::GTK3 ${GTK_MAC_LDFLAGS})
 
 target_compile_definitions (gnc-gnome PRIVATE -DG_LOG_DOMAIN=\"gnc.gui\" ${GTK_MAC_CFLAGS_OTHER})
 target_compile_options(gnc-gnome PRIVATE -Wno-deprecated-declarations)
diff --git a/gnucash/html/CMakeLists.txt b/gnucash/html/CMakeLists.txt
index 154af9e53..834cc8f4a 100644
--- a/gnucash/html/CMakeLists.txt
+++ b/gnucash/html/CMakeLists.txt
@@ -41,7 +41,7 @@ add_library (gncmod-html
 )
 
 target_link_libraries(gncmod-html gncmod-engine gnc-module gncmod-gnome-utils
-  PkgConfig::GTK3 PkgConfig::WEBKIT PkgConfig::GUILE)
+  PkgConfig::GTK3 PkgConfig::WEBKIT ${GUILE_LDFLAGS})
 
 target_compile_definitions(gncmod-html PRIVATE -DG_LOG_DOMAIN=\"gnc.html\")
 
diff --git a/gnucash/import-export/CMakeLists.txt b/gnucash/import-export/CMakeLists.txt
index 38fd2d0e1..413889878 100644
--- a/gnucash/import-export/CMakeLists.txt
+++ b/gnucash/import-export/CMakeLists.txt
@@ -51,8 +51,7 @@ add_library (gncmod-generic-import
   ${generic_import_noinst_HEADERS}
 )
 
-target_link_libraries(gncmod-generic-import gncmod-gnome-utils gncmod-engine
-  PkgConfig::GLIB2 PkgConfig::GTK3 )
+target_link_libraries(gncmod-generic-import gncmod-gnome-utils gncmod-engine PkgConfig::GTK3 ${GLIB2_LDFLAGS})
 
 target_compile_definitions (gncmod-generic-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import\")
 
diff --git a/gnucash/import-export/aqb/CMakeLists.txt b/gnucash/import-export/aqb/CMakeLists.txt
index 49d523514..74cc2d327 100644
--- a/gnucash/import-export/aqb/CMakeLists.txt
+++ b/gnucash/import-export/aqb/CMakeLists.txt
@@ -57,13 +57,17 @@ if(WITH_AQBANKING)
   target_link_libraries(gncmod-aqbanking gnc-gnome gncmod-gnome-utils
          gncmod-generic-import gncmod-register-core
          gncmod-register-gnome gncmod-ledger-core gncmod-engine gwengui-gtk3
-         PkgConfig::AQBANKING PkgConfig::GWENHYWFAR)
+         ${AQB_EXPORT_SYMBOLS} ${AQBANKING_LDFLAGS}
+         ${GWENHYWFAR_LDFLAGS} 
+         ${GNOME_LDFLAGS} ${AQB_LIBSTDCXX})
 
   target_compile_definitions(gncmod-aqbanking PRIVATE -DG_LOG_DOMAIN=\"gnc.import.aqbanking\")
   target_compile_options(gncmod-aqbanking PRIVATE -Wno-deprecated-declarations)
 
-  target_include_directories(gncmod-aqbanking
-    PRIVATE ${CMAKE_SOURCE_DIR}/borrowed/gwengui-gtk3)
+  target_include_directories(gncmod-aqbanking PRIVATE
+    ${CMAKE_SOURCE_DIR}/borrowed/gwengui-gtk3
+    ${AQBANKING_INCLUDE_DIRS}
+    ${GWENHYWFAR_INCLUDE_DIRS})
 
 if (APPLE)
   set_target_properties (gncmod-aqbanking PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
diff --git a/gnucash/import-export/aqb/test/CMakeLists.txt b/gnucash/import-export/aqb/test/CMakeLists.txt
index ee33d7b20..651eb1170 100644
--- a/gnucash/import-export/aqb/test/CMakeLists.txt
+++ b/gnucash/import-export/aqb/test/CMakeLists.txt
@@ -14,6 +14,8 @@ set(test_aqb_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/engine
   ${CMAKE_SOURCE_DIR}/libgnucash/core-utils
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
+  ${GLIB2_INCLUDE_DIRS}
+  ${GTK_INCLUDE_DIRS}
   ${AQBANKING_INCLUDE_DIRS}
 )
 
@@ -21,7 +23,7 @@ set(test_aqb_LIBS
   gncmod-aqbanking gncmod-generic-import gnc-gnome gncmod-gnome-utils
   gncmod-ledger-core gncmod-app-utils
   gncmod-backend-xml-utils gncmod-engine gnc-core-utils gnc-module
-  PkgConfig::GLIB2 PkgConfig::GTK3
+  ${GLIB2_LDFLAGS}
 )
 
 set_dist_list(test_aqb_DIST ${test_aqb_SOURCES} file-book.gnucash
diff --git a/gnucash/import-export/csv-imp/CMakeLists.txt b/gnucash/import-export/csv-imp/CMakeLists.txt
index b79544bf0..c31aa80f8 100644
--- a/gnucash/import-export/csv-imp/CMakeLists.txt
+++ b/gnucash/import-export/csv-imp/CMakeLists.txt
@@ -64,8 +64,8 @@ add_library(gncmod-csv-import ${csv_import_noinst_HEADERS}
 
 target_link_libraries(
   gncmod-csv-import
-  Boost::regex Boost::locale
-  ICU::i18n
+  ${Boost_LIBRARIES}
+  ${ICU4C_I18N_LDFLAGS}
   gncmod-generic-import
   gncmod-gnome-utils
   gncmod-app-utils
@@ -77,6 +77,7 @@ target_link_libraries(
 target_compile_definitions(gncmod-csv-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import.csv\")
 
 target_include_directories(gncmod-csv-import PRIVATE
+     ${ICU4C_I18N_INCLUDE_DIRS}
      ${CMAKE_SOURCE_DIR}/borrowed/goffice
 )
 
diff --git a/gnucash/import-export/csv-imp/test/CMakeLists.txt b/gnucash/import-export/csv-imp/test/CMakeLists.txt
index 6ae114016..52b11cbcb 100644
--- a/gnucash/import-export/csv-imp/test/CMakeLists.txt
+++ b/gnucash/import-export/csv-imp/test/CMakeLists.txt
@@ -5,13 +5,14 @@ set(CSV_IMP_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/engine
   ${CMAKE_SOURCE_DIR}/common/test-core
   ${CMAKE_SOURCE_DIR}/lib
+  ${GLIB2_INCLUDE_DIRS}
 )
 set(CSV_IMP_TEST_LIBS gncmod-csv-import gncmod-engine test-core)
 
 # This test does not run in Win32
 if (NOT WIN32)
   set(MODULEPATH ${CMAKE_SOURCE_DIR}/gnucash/import-export/csv-imp)
-  set(gtest_csv_imp_LIBS gncmod-csv-import PkgConfig::GLIB2 gtest)
+  set(gtest_csv_imp_LIBS gncmod-csv-import ${GLIB2_LDFLAGS} gtest)
   set(gtest_csv_imp_INCLUDES
     ${MODULEPATH}
     ${CSV_IMP_TEST_INCLUDE_DIRS})
diff --git a/gnucash/import-export/customer-import/CMakeLists.txt b/gnucash/import-export/customer-import/CMakeLists.txt
index 37e81c437..197ffc544 100644
--- a/gnucash/import-export/customer-import/CMakeLists.txt
+++ b/gnucash/import-export/customer-import/CMakeLists.txt
@@ -18,7 +18,7 @@ set(customer_import_noinst_HEADERS
 add_library(gncmod-customer-import ${customer_import_SOURCES} ${customer_import_noinst_HEADERS})
 
 target_link_libraries(gncmod-customer-import gnc-gnome gncmod-gnome-utils gncmod-app-utils
-     gncmod-engine gnc-core-utils gnc-module PkgConfig::GLIB2)
+     gncmod-engine gnc-core-utils gnc-module ${GLIB2_LDFLAGS})
 
 target_include_directories(gncmod-customer-import
   PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
diff --git a/gnucash/import-export/ofx/CMakeLists.txt b/gnucash/import-export/ofx/CMakeLists.txt
index 541d67227..2d968e735 100644
--- a/gnucash/import-export/ofx/CMakeLists.txt
+++ b/gnucash/import-export/ofx/CMakeLists.txt
@@ -20,11 +20,13 @@ set(ofx_UI gnc-plugin-ofx-ui.xml)
 if (WITH_OFX)
   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 PkgConfig::LIBOFX)
+  target_link_libraries(gncmod-ofx gncmod-generic-import gncmod-engine gncmod-app-utils gnc-core-utils
+                    gncmod-gnome-utils ${LIBOFX_LDFLAGS})
 
   target_compile_definitions(gncmod-ofx PRIVATE -DG_LOG_DOMAIN=\"gnc.import.ofx\")
 
+  target_include_directories(gncmod-ofx PRIVATE ${LIBOFX_INCLUDE_DIRS})
+
 if (APPLE)
   set_target_properties (gncmod-ofx PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
 endif()
diff --git a/gnucash/import-export/test/CMakeLists.txt b/gnucash/import-export/test/CMakeLists.txt
index 2a4f04d7f..11e92a624 100644
--- a/gnucash/import-export/test/CMakeLists.txt
+++ b/gnucash/import-export/test/CMakeLists.txt
@@ -7,9 +7,11 @@ set(GENERIC_IMPORT_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/common/test-core
   ${CMAKE_SOURCE_DIR}/libgnucash/engine
   ${CMAKE_SOURCE_DIR}/libgnucash/engine/test-core
+  ${GLIB2_INCLUDE_DIRS}
+  ${GUILE_INCLUDE_DIRS}
 )
 
-set(GENERIC_IMPORT_TEST_LIBS gncmod-generic-import gncmod-test-engine test-core PkgConfig::GLIB2)
+set(GENERIC_IMPORT_TEST_LIBS gncmod-generic-import gncmod-test-engine test-core)
 
 gnc_add_test_with_guile(test-import-parse test-import-parse.c
   GENERIC_IMPORT_TEST_INCLUDE_DIRS GENERIC_IMPORT_TEST_LIBS
diff --git a/gnucash/register/register-core/CMakeLists.txt b/gnucash/register/register-core/CMakeLists.txt
index b5614126d..381e0de7c 100644
--- a/gnucash/register/register-core/CMakeLists.txt
+++ b/gnucash/register/register-core/CMakeLists.txt
@@ -45,8 +45,7 @@ set_source_files_properties (${register_core_SOURCES} PROPERTIES OBJECT_DEPENDS
 
 add_library (gncmod-register-core ${register_core_SOURCES} ${register_core_HEADERS})
 
-target_link_libraries(gncmod-register-core gncmod-gnome-utils gncmod-app-utils
-  PkgConfig::GMODULE)
+target_link_libraries(gncmod-register-core gncmod-gnome-utils gncmod-app-utils ${GMODULE_LDFLAGS})
 
 target_compile_definitions (gncmod-register-core PRIVATE -DG_LOG_DOMAIN=\"gnc.register.core\")
 
diff --git a/gnucash/report/CMakeLists.txt b/gnucash/report/CMakeLists.txt
index 861079766..4292f3ca3 100644
--- a/gnucash/report/CMakeLists.txt
+++ b/gnucash/report/CMakeLists.txt
@@ -27,7 +27,7 @@ add_library (gncmod-report
 
 target_compile_definitions(gncmod-report PRIVATE -DG_LOG_DOMAIN=\"gnc.report.core\")
 
-target_link_libraries(gncmod-report gnc-module gncmod-app-utils PkgConfig::GTK3 PkgConfig::GUILE)
+target_link_libraries(gncmod-report gnc-module gncmod-app-utils PkgConfig::GTK3 ${GUILE_LDFLAGS})
 
 target_include_directories (gncmod-report
     PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} 
diff --git a/gnucash/report/test/CMakeLists.txt b/gnucash/report/test/CMakeLists.txt
index f00132801..a9ce3b81e 100644
--- a/gnucash/report/test/CMakeLists.txt
+++ b/gnucash/report/test/CMakeLists.txt
@@ -1,6 +1,7 @@
 
 set(REPORT_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
+  ${GUILE_INCLUDE_DIRS}
 )
 set(REPORT_TEST_LIBS gnc-module)
 
diff --git a/libgnucash/app-utils/CMakeLists.txt b/libgnucash/app-utils/CMakeLists.txt
index fc0ac2a7b..b34ca641c 100644
--- a/libgnucash/app-utils/CMakeLists.txt
+++ b/libgnucash/app-utils/CMakeLists.txt
@@ -78,9 +78,9 @@ set (app_utils_SOURCES
 set_source_files_properties (${app_utils_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
 
 set(app_utils_ALL_SOURCES ${app_utils_SOURCES} ${app_utils_HEADERS} ${app_utils_noinst_HEADERS})
-set(app_utils_ALL_LIBRARIES gncmod-engine gnc-module PkgConfig::GIO PkgConfig::LIBXML2 PkgConfig::LIBXSLT)
-set(app_utils_ALL_INCLUDES  ${CMAKE_CURRENT_SOURCE_DIR}/calculation
-  ${CMAKE_SOURCE_DIR}/libgnucash/backend ${CMAKE_SOURCE_DIR}/libgnucash/engine)
+set(app_utils_ALL_LIBRARIES gncmod-engine gnc-module ${GIO_LDFLAGS} ${LIBXML2_LDFLAGS} ${LIBXSLT_LDFLAGS})
+set(app_utils_ALL_INCLUDES  ${CMAKE_CURRENT_SOURCE_DIR}/calculation ${GIO_INCLUDE_DIRS} ${LIBXML2_INCLUDE_DIRS}
+    ${LIBXSLT_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/libgnucash/backend ${CMAKE_SOURCE_DIR}/libgnucash/engine)
 
 if (WIN32)
   list(APPEND app_utils_ALL_SOURCES gnc-help-utils.c)
diff --git a/libgnucash/app-utils/test/CMakeLists.txt b/libgnucash/app-utils/test/CMakeLists.txt
index 5cc368d90..111f7b3b8 100644
--- a/libgnucash/app-utils/test/CMakeLists.txt
+++ b/libgnucash/app-utils/test/CMakeLists.txt
@@ -5,9 +5,11 @@ set(APP_UTILS_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/app-utils
   ${CMAKE_SOURCE_DIR}/libgnucash/engine # for qof.h
   ${CMAKE_SOURCE_DIR}/libgnucash/engine/test-core
+  ${GIO_INCLUDE_DIRS}
+  ${GUILE_INCLUDE_DIRS}
 )
 
-set(APP_UTILS_TEST_LIBS gncmod-app-utils gncmod-test-engine test-core PkgConfig::GIO PkgConfig::GUILE)
+set(APP_UTILS_TEST_LIBS gncmod-app-utils gncmod-test-engine test-core ${GIO_LDFLAGS} ${GUILE_LDFLAGS})
 
 set(test_app_utils_SOURCES test-app-utils.c test-option-util.cpp test-gnc-ui-util.c)
 
diff --git a/libgnucash/backend/dbi/CMakeLists.txt b/libgnucash/backend/dbi/CMakeLists.txt
index 752fab1f4..ff7d760c7 100644
--- a/libgnucash/backend/dbi/CMakeLists.txt
+++ b/libgnucash/backend/dbi/CMakeLists.txt
@@ -33,7 +33,7 @@ if (WITH_SQL)
   if(MINGW64)
     set(WINSOCK_LIB "-lws2_32")
   endif(MINGW64)
-  target_link_libraries(gncmod-backend-dbi gnc-backend-sql gncmod-engine ${GTK2_LDFLAGS} Boost::regex ${LIBDBI_LIBRARY} ${WINSOCK_LIB})
+  target_link_libraries(gncmod-backend-dbi gnc-backend-sql gncmod-engine ${GTK2_LDFLAGS} ${Boost_REGEX_LIBRARY} ${LIBDBI_LIBRARY} ${WINSOCK_LIB})
 
   target_compile_definitions(gncmod-backend-dbi PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.dbi\")
 
diff --git a/libgnucash/backend/dbi/test/CMakeLists.txt b/libgnucash/backend/dbi/test/CMakeLists.txt
index 2bbc1a257..1df34f05a 100644
--- a/libgnucash/backend/dbi/test/CMakeLists.txt
+++ b/libgnucash/backend/dbi/test/CMakeLists.txt
@@ -8,8 +8,9 @@ set(BACKEND_DBI_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/engine/test-core
   ${CMAKE_SOURCE_DIR}/common/test-core
   ${LIBDBI_INCLUDE_PATH}
+  ${GLIB2_INCLUDE_DIRS}
 )
-set(BACKEND_DBI_TEST_LIBS gnc-backend-sql gncmod-engine gncmod-test-engine test-core PkgConfig::GLIB2 Boost::regex ${LIBDBI_LIBRARY})
+set(BACKEND_DBI_TEST_LIBS gnc-backend-sql gncmod-engine gncmod-test-engine test-core ${Boost_REGEX_LIBRARY} ${LIBDBI_LIBRARY})
 
 set(test_dbi_backend_SOURCES
   test-backend-dbi.cpp
diff --git a/libgnucash/backend/sql/test/CMakeLists.txt b/libgnucash/backend/sql/test/CMakeLists.txt
index b42914d96..d0c06ccfc 100644
--- a/libgnucash/backend/sql/test/CMakeLists.txt
+++ b/libgnucash/backend/sql/test/CMakeLists.txt
@@ -4,11 +4,12 @@ set(BACKEND_SQL_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/backend/sql
   ${CMAKE_SOURCE_DIR}/libgnucash/engine
   ${CMAKE_SOURCE_DIR}/common/test-core
+  ${GLIB2_INCLUDE_DIRS}
 )
 
 set(test_backend_sql_SOURCES test-sqlbe.cpp utest-gnc-backend-sql.cpp)
 
-set(BACKEND_SQL_TEST_LIBS gnc-backend-sql gncmod-engine test-core PkgConfig::GLIB2)
+set(BACKEND_SQL_TEST_LIBS gnc-backend-sql gncmod-engine test-core)
 
 set_dist_list(test_backend_sql_DIST ${test_backend_sql_SOURCES} CMakeLists.txt
   test-column-types.cpp)
diff --git a/libgnucash/backend/xml/CMakeLists.txt b/libgnucash/backend/xml/CMakeLists.txt
index 4356bed24..3c5c96dd3 100644
--- a/libgnucash/backend/xml/CMakeLists.txt
+++ b/libgnucash/backend/xml/CMakeLists.txt
@@ -82,11 +82,11 @@ add_library	(gnc-backend-xml-utils
   ${backend_xml_utils_noinst_HEADERS}
 )
 
-target_link_libraries(gnc-backend-xml-utils gncmod-engine PkgConfig::LIBXML2
-  PkgConfig::ZLIB)
+target_link_libraries(gnc-backend-xml-utils gncmod-engine ${LIBXML2_LDFLAGS} ${ZLIB_LDFLAGS})
 
 target_include_directories (gnc-backend-xml-utils
-  PUBLIC  ${CMAKE_CURRENT_SOURCE_DIR}
+  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\" -DU_SHOW_CPLUSPLUS_API=0)
@@ -105,7 +105,7 @@ set_source_files_properties (${libgncmod_backend_xml_SOURCES} PROPERTIES OBJECT_
 
 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 PkgConfig::LIBXML2 PkgConfig::GLIB2 PkgConfig::ZLIB)
+                        gnc-core-utils ${LIBXML2_LDFLAGS} ${GLIB2_LDFLAGS} ${ZLIB_LIBRARY})
 
 target_compile_definitions (gncmod-backend-xml PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.xml\" -DU_SHOW_CPLUSPLUS_API=0)
 
@@ -128,7 +128,6 @@ install(TARGETS gncmod-backend-xml
 
 # Special normal (non-MODULE) library for cutecash only
 add_library(gncmod-backend-xml-utils ${libgncmod_backend_xml_SOURCES})
-target_link_libraries(gncmod-backend-xml-utils gnc-backend-xml-utils
-  gncmod-engine gnc-core-utils PkgConfig::LIBXML2 PkgConfig::GLIB2
-  PkgConfig::ZLIB)
+target_link_libraries(gncmod-backend-xml-utils gnc-backend-xml-utils gncmod-engine
+                        gnc-core-utils ${LIBXML2_LDFLAGS} ${GLIB2_LDFLAGS} ${ZLIB_LIBRARY})
 target_compile_definitions (gncmod-backend-xml-utils PRIVATE -DG_LOG_DOMAIN=\"gnc.backend.xml\" -DU_SHOW_CPLUSPLUS_API=0)
diff --git a/libgnucash/backend/xml/test/CMakeLists.txt b/libgnucash/backend/xml/test/CMakeLists.txt
index ef108c90d..df1e599c2 100644
--- a/libgnucash/backend/xml/test/CMakeLists.txt
+++ b/libgnucash/backend/xml/test/CMakeLists.txt
@@ -8,11 +8,13 @@ set(XML_TEST_INCLUDE_DIRS
   ${CMAKE_SOURCE_DIR}/libgnucash/engine/test-core
   ${CMAKE_BINARY_DIR}/common # for config.h
   ${CMAKE_SOURCE_DIR}/common/test-core  # for unittest-support.h
+  ${GLIB2_INCLUDE_DIRS}
+  ${LIBXML2_INCLUDE_DIRS}
+  ${ZLIB_INCLUDE_DIRS}
 )
 
 
-set(XML_TEST_LIBS gncmod-engine gncmod-test-engine test-core PkgConfig::GLIB2
-  PkgConfig::LIBXML2 -lz)
+set(XML_TEST_LIBS gncmod-engine gncmod-test-engine test-core ${LIBXML2_LDFLAGS} -lz)
 
 function(add_xml_test _TARGET _SOURCE_FILES)
   gnc_add_test(${_TARGET} "${_SOURCE_FILES}" XML_TEST_INCLUDE_DIRS XML_TEST_LIBS ${ARGN})
diff --git a/libgnucash/core-utils/CMakeLists.txt b/libgnucash/core-utils/CMakeLists.txt
index 9e307bcf5..3960cd7c4 100644
--- a/libgnucash/core-utils/CMakeLists.txt
+++ b/libgnucash/core-utils/CMakeLists.txt
@@ -95,15 +95,16 @@ set(core_utils_noinst_HEADERS
 )
 
 set(core_utils_ALL_SOURCES ${core_utils_SOURCES} ${core_utils_noinst_HEADERS})
-set(core_utils_ALL_LIBRARIES Boost::regex Boost::locale Boost::filesystem
-  PkgConfig::GUILE PkgConfig::GLIB2 PkgConfig::GOBJECT
-  $<$<BOOL:${GTK_MAC_FOUND}>:PkgConfig::GTK_MAC>)
+set(core_utils_ALL_LIBRARIES ${Boost_LIBRARIES} ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS} ${GOBJECT_LDFLAGS} ${GTK_MAC_LDFLAGS})
 set(core_utils_ALL_INCLUDES
   ${CMAKE_SOURCE_DIR}/common
   ${CMAKE_BINARY_DIR}/common
   ${CMAKE_CURRENT_BINARY_DIR}
   ${CMAKE_CURRENT_SOURCE_DIR}
-)
+  ${GLIB2_INCLUDE_DIRS}
+  ${GUILE_INCLUDE_DIRS}
+  ${GTK_MAC_INCLUDE_DIRS})
+
 set_local_dist(core_utils_DIST_local ${core_utils_ALL_SOURCES} CMakeLists.txt core-utils.i core-utils.scm gncla-dir.h.in)
 set(core_utils_DIST ${core_utils_DIST_local} ${test_core_utils_DIST} PARENT_SCOPE)
 
diff --git a/libgnucash/core-utils/test/CMakeLists.txt b/libgnucash/core-utils/test/CMakeLists.txt
index 72f863416..ce9da8573 100644
--- a/libgnucash/core-utils/test/CMakeLists.txt
+++ b/libgnucash/core-utils/test/CMakeLists.txt
@@ -4,6 +4,8 @@ set(CORE_UTILS_TEST_INCLUDE_DIRS
   ${CMAKE_BINARY_DIR}/common # for config.h
   ${MODULEPATH}
   ${CMAKE_SOURCE_DIR}/common/test-core
+  ${GLIB2_INCLUDE_DIRS}
+  ${GTK_MAC_INCLUDE_DIRS}
 )
 set(CORE_UTILS_TEST_LIBS gnc-core-utils test-core)
 if (MAC_INTEGRATION)
@@ -30,12 +32,13 @@ set(gtest_core_utils_INCLUDES
   ${CMAKE_BINARY_DIR}/common # for config.h
   ${CMAKE_SOURCE_DIR}/common # for platform.h
   ${CMAKE_BINARY_DIR}/libgnucash/core-utils # for gncla-dir.h
+  ${GLIB2_INCLUDE_DIRS}
   )
 
 set(gtest_core_utils_LIBS
-  PkgConfig::GLIB2
-  Boost::regex Boost::locale Boost::filesystem
-  PkgConfig::GTHREAD
+  ${GLIB2_LDFLAGS}
+  ${Boost_LIBRARIES}
+  ${GTHREAD_LDFLAGS}
   gtest)
 
 set(test_gnc_path_util_SOURCES
diff --git a/libgnucash/engine/CMakeLists.txt b/libgnucash/engine/CMakeLists.txt
index 8dd1786bb..29a19f082 100644
--- a/libgnucash/engine/CMakeLists.txt
+++ b/libgnucash/engine/CMakeLists.txt
@@ -237,10 +237,7 @@ else()
   set(BCRYPT "")
 endif()
 
-target_link_libraries(gncmod-engine gnc-core-utils gnc-module
-  Boost::date_time Boost::regex ICU::i18n ICU::uc
-  ${BCRYPT} ${REGEX_LDFLAGS} PkgConfig::GMODULE PkgConfig::GLIB2
-  PkgConfig::GOBJECT PkgConfig::GUILE)
+target_link_libraries(gncmod-engine gnc-core-utils gnc-module ${Boost_DATE_TIME_LIBRARIES}  ${Boost_REGEX_LIBRARIES}  ${ICU4C_I18N_LDFLAGS} ${BCRYPT} ${REGEX_LDFLAGS} ${GMODULE_LDFLAGS} ${GLIB2_LDFLAGS} ${GOBJECT_LDFLAGS} ${GUILE_LDFLAGS})
 
 target_compile_definitions (gncmod-engine PRIVATE -DG_LOG_DOMAIN=\"gnc.engine\")
 
@@ -250,6 +247,7 @@ target_include_directories (gncmod-engine
         ${CMAKE_CURRENT_SOURCE_DIR}
         ${CMAKE_BINARY_DIR}/common # for config.h
         ${CMAKE_SOURCE_DIR}/common # for platform.h
+        ${GLIB2_INCLUDE_DIRS}
         ${LIBINTL_INCLUDE_PATH}
         ${REGEX_INCLUDE_PATH}
         ${CMAKE_SOURCE_DIR}/borrowed/libc # for strptime.h
diff --git a/libgnucash/engine/test-core/CMakeLists.txt b/libgnucash/engine/test-core/CMakeLists.txt
index e34c526ac..9dddffdcb 100644
--- a/libgnucash/engine/test-core/CMakeLists.txt
+++ b/libgnucash/engine/test-core/CMakeLists.txt
@@ -6,10 +6,9 @@ set(libgncmod_test_engine_SOURCES
 
 add_library(gncmod-test-engine STATIC ${libgncmod_test_engine_SOURCES})
 
-target_link_libraries(gncmod-test-engine PkgConfig::GMODULE)
-
 target_include_directories(gncmod-test-engine PRIVATE
   ${CMAKE_PREFIX_PATH}/include
+  ${GMODULE_INCLUDE_DIRS}
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
   ${CMAKE_BINARY_DIR}/common # for config.h
   ${CMAKE_SOURCE_DIR}/common
diff --git a/libgnucash/engine/test/CMakeLists.txt b/libgnucash/engine/test/CMakeLists.txt
index b3006f92e..56c3843f7 100644
--- a/libgnucash/engine/test/CMakeLists.txt
+++ b/libgnucash/engine/test/CMakeLists.txt
@@ -9,7 +9,7 @@ set(ENGINE_TEST_INCLUDE_DIRS
   ${GLIB2_INCLUDE_DIRS}
 )
 
-set(ENGINE_TEST_LIBS gncmod-engine gncmod-test-engine test-core PkgConfig::LIBXML2 -lm)
+set(ENGINE_TEST_LIBS gncmod-engine gncmod-test-engine test-core ${LIBXML2_LDFLAGS} -lm)
 
 macro(add_engine_test _TARGET _SOURCE_FILES)
   gnc_add_test(${_TARGET} "${_SOURCE_FILES}" ENGINE_TEST_INCLUDE_DIRS ENGINE_TEST_LIBS)
@@ -90,17 +90,17 @@ add_engine_test(test-numeric "${test_numeric_SOURCES}")
 set(MODULEPATH ${CMAKE_SOURCE_DIR}/libgnucash/engine)
 set(gtest_old_engine_LIBS
   gncmod-engine
-  PkgConfig::GLIB2
-  Boost::regex
+  ${GLIB2_LDFLAGS}
+  ${Boost_LIBRARIES}
   gtest)
 
 set(gtest_qof_LIBS
-  PkgConfig::GLIB2
-  PkgConfig::GOBJECT
-  PkgConfig::GMODULE
-  PkgConfig::GTHREAD
-  ICU::i18n ICU::uc
-  Boost::regex Boost::date_time
+  ${GLIB2_LDFLAGS}
+  ${GOBJECT_LDFLAGS}
+  ${GMODULE_LDFLAGS}
+  ${GTHREAD_LDFLAGS}
+  ${ICU4C_I18N_LDFLAGS}
+  ${Boost_LIBRARIES}
   gtest)
 
 set(gtest_engine_INCLUDES
@@ -108,6 +108,7 @@ set(gtest_engine_INCLUDES
   ${CMAKE_SOURCE_DIR}/libgnucash/core-utils
   ${CMAKE_BINARY_DIR}/common # for config.h
   ${CMAKE_SOURCE_DIR}/common # for platform.h
+  ${GLIB2_INCLUDE_DIRS}
   ../../../borrowed/libc
 )
 
diff --git a/libgnucash/gnc-module/CMakeLists.txt b/libgnucash/gnc-module/CMakeLists.txt
index 360b87064..b84654b2c 100644
--- a/libgnucash/gnc-module/CMakeLists.txt
+++ b/libgnucash/gnc-module/CMakeLists.txt
@@ -24,14 +24,16 @@ add_library	(gnc-module
   ${SWIG_GNC_MODULE_C}
 )
 
-target_link_libraries(gnc-module PkgConfig::GUILE PkgConfig::GMODULE PkgConfig::GLIB2)
+target_link_libraries(gnc-module ${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}
             ${CMAKE_SOURCE_DIR}/common
             ${CMAKE_BINARY_DIR}/common # for config.h
+            ${GLIB2_INCLUDE_DIRS}
 )
 
 install(TARGETS gnc-module
diff --git a/libgnucash/gnc-module/test/CMakeLists.txt b/libgnucash/gnc-module/test/CMakeLists.txt
index 9747558b8..ae87b460d 100644
--- a/libgnucash/gnc-module/test/CMakeLists.txt
+++ b/libgnucash/gnc-module/test/CMakeLists.txt
@@ -8,6 +8,8 @@ set(GNC_MODULE_TEST_INCLUDE_DIRS
   ${CMAKE_BINARY_DIR}/common # for config.h
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
   ${CMAKE_SOURCE_DIR}/common/test-core
+  ${GLIB2_INCLUDE_DIRS}
+  ${GUILE_INCLUDE_DIRS}
 )
 
 set(GNC_MODULE_TEST_LIBS
diff --git a/libgnucash/gnc-module/test/misc-mods/CMakeLists.txt b/libgnucash/gnc-module/test/misc-mods/CMakeLists.txt
index 2a45fcfd7..b3cf730ac 100644
--- a/libgnucash/gnc-module/test/misc-mods/CMakeLists.txt
+++ b/libgnucash/gnc-module/test/misc-mods/CMakeLists.txt
@@ -1,16 +1,17 @@
 
 INCLUDE_DIRECTORIES(
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
+  ${GLIB2_INCLUDE_DIRS}
 )
 
 add_library(gncmod-agedver EXCLUDE_FROM_ALL agedver.c)
-target_link_libraries(gncmod-agedver PkgConfig::GLIB2)
+target_link_libraries(gncmod-agedver ${GLIB2_LDFLAGS})
 
 add_library(gncmod-futuremodsys  EXCLUDE_FROM_ALL futuremodsys.c)
-target_link_libraries(gncmod-futuremodsys PkgConfig::GLIB2)
+target_link_libraries(gncmod-futuremodsys ${GLIB2_LDFLAGS})
 
 add_library(gncmod-incompatdep  EXCLUDE_FROM_ALL incompatdep.c)
-target_link_libraries(gncmod-incompatdep gnc-module PkgConfig::GLIB2)
+target_link_libraries(gncmod-incompatdep gnc-module ${GLIB2_LDFLAGS})
 
 set_target_properties(gncmod-agedver gncmod-futuremodsys gncmod-incompatdep PROPERTIES
 LIBRARY_OUTPUT_DIRECTORY ${LIBDIR_BUILD}/gnucash/test
diff --git a/libgnucash/gnc-module/test/mod-bar/CMakeLists.txt b/libgnucash/gnc-module/test/mod-bar/CMakeLists.txt
index a6914a110..ddeefb786 100644
--- a/libgnucash/gnc-module/test/mod-bar/CMakeLists.txt
+++ b/libgnucash/gnc-module/test/mod-bar/CMakeLists.txt
@@ -15,6 +15,8 @@ target_include_directories(gncmod-bar PRIVATE
   ${CMAKE_CURRENT_BINARY_DIR}
   ${CMAKE_SOURCE_DIR}/common
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
+  ${GLIB2_INCLUDE_DIRS}
+  ${GUILE_INCLUDE_DIRS}
 )
 
 gnc_add_scheme_test_targets(scm-mod-bar
diff --git a/libgnucash/gnc-module/test/mod-baz/CMakeLists.txt b/libgnucash/gnc-module/test/mod-baz/CMakeLists.txt
index 78e950fd7..f83fed30e 100644
--- a/libgnucash/gnc-module/test/mod-baz/CMakeLists.txt
+++ b/libgnucash/gnc-module/test/mod-baz/CMakeLists.txt
@@ -21,6 +21,8 @@ target_include_directories(gncmod-baz PRIVATE
   ${CMAKE_CURRENT_BINARY_DIR}
   ${CMAKE_SOURCE_DIR}/common
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
+  ${GLIB2_INCLUDE_DIRS}
+  ${GUILE_INCLUDE_DIRS}
 )
 
 gnc_add_scheme_test_targets(scm-mod-baz
diff --git a/libgnucash/gnc-module/test/mod-foo/CMakeLists.txt b/libgnucash/gnc-module/test/mod-foo/CMakeLists.txt
index 5a6df93d3..c184eef7d 100644
--- a/libgnucash/gnc-module/test/mod-foo/CMakeLists.txt
+++ b/libgnucash/gnc-module/test/mod-foo/CMakeLists.txt
@@ -15,6 +15,8 @@ target_include_directories(gncmod-foo PRIVATE
   ${CMAKE_CURRENT_BINARY_DIR}
   ${CMAKE_SOURCE_DIR}/common
   ${CMAKE_SOURCE_DIR}/libgnucash/gnc-module
+  ${GLIB2_INCLUDE_DIRS}
+  ${GUILE_INCLUDE_DIRS}
 )
 
 gnc_add_scheme_test_targets(scm-mod-foo
diff --git a/libgnucash/tax/CMakeLists.txt b/libgnucash/tax/CMakeLists.txt
index 79adfb4c9..82751602e 100644
--- a/libgnucash/tax/CMakeLists.txt
+++ b/libgnucash/tax/CMakeLists.txt
@@ -6,10 +6,10 @@ set(locale_tax_SOURCES gncmod-locale-tax.c)
 set_source_files_properties (${locale_tax_SOURCES} PROPERTIES OBJECT_DEPENDS ${CONFIG_H})
 
 add_library(gncmod-locale-tax ${locale_tax_SOURCES})
-target_link_libraries(gncmod-locale-tax gnc-module PkgConfig::GLIB2 PkgConfig::GUILE)
+target_link_libraries(gncmod-locale-tax gnc-module ${GLIB2_LDFLAGS} ${GUILE_LDFLAGS})
 
 target_include_directories(gncmod-locale-tax
-    PRIVATE ${CMAKE_BINARY_DIR}/common)
+    PRIVATE ${CMAKE_BINARY_DIR}/common ${GUILE_INCLUDE_DIRS})
 
 if (APPLE)
   set_target_properties (gncmod-locale-tax PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")



Summary of changes:
 CMakeLists.txt                                     | 86 ++++++++++++++--------
 common/test-core/CMakeLists.txt                    |  4 +-
 gnucash/CMakeLists.txt                             |  3 +-
 gnucash/gnome-utils/CMakeLists.txt                 |  7 +-
 gnucash/gnome-utils/test/CMakeLists.txt            |  1 +
 gnucash/gnome/CMakeLists.txt                       |  3 +-
 gnucash/html/CMakeLists.txt                        |  2 +-
 gnucash/import-export/CMakeLists.txt               |  3 +-
 gnucash/import-export/aqb/CMakeLists.txt           | 10 ++-
 gnucash/import-export/aqb/test/CMakeLists.txt      |  4 +-
 gnucash/import-export/csv-imp/CMakeLists.txt       |  5 +-
 gnucash/import-export/csv-imp/test/CMakeLists.txt  |  3 +-
 .../import-export/customer-import/CMakeLists.txt   |  2 +-
 gnucash/import-export/ofx/CMakeLists.txt           |  6 +-
 gnucash/import-export/test/CMakeLists.txt          |  4 +-
 gnucash/register/register-core/CMakeLists.txt      |  3 +-
 gnucash/report/CMakeLists.txt                      |  2 +-
 gnucash/report/test/CMakeLists.txt                 |  1 +
 libgnucash/app-utils/CMakeLists.txt                |  6 +-
 libgnucash/app-utils/test/CMakeLists.txt           |  4 +-
 libgnucash/backend/dbi/CMakeLists.txt              |  2 +-
 libgnucash/backend/dbi/test/CMakeLists.txt         |  3 +-
 libgnucash/backend/sql/test/CMakeLists.txt         |  3 +-
 libgnucash/backend/xml/CMakeLists.txt              | 13 ++--
 libgnucash/backend/xml/test/CMakeLists.txt         |  6 +-
 libgnucash/core-utils/CMakeLists.txt               |  9 ++-
 libgnucash/core-utils/test/CMakeLists.txt          |  9 ++-
 libgnucash/engine/CMakeLists.txt                   |  6 +-
 libgnucash/engine/test-core/CMakeLists.txt         |  3 +-
 libgnucash/engine/test/CMakeLists.txt              | 19 ++---
 libgnucash/gnc-module/CMakeLists.txt               |  4 +-
 libgnucash/gnc-module/test/CMakeLists.txt          |  2 +
 .../gnc-module/test/misc-mods/CMakeLists.txt       |  7 +-
 libgnucash/gnc-module/test/mod-bar/CMakeLists.txt  |  2 +
 libgnucash/gnc-module/test/mod-baz/CMakeLists.txt  |  2 +
 libgnucash/gnc-module/test/mod-foo/CMakeLists.txt  |  2 +
 libgnucash/tax/CMakeLists.txt                      |  4 +-
 37 files changed, 156 insertions(+), 99 deletions(-)



More information about the gnucash-changes mailing list