From 6357f46bc60e7ea88f53153bf8b064aee7e24490 Mon Sep 17 00:00:00 2001 From: Gerald Combs Date: Wed, 9 Jun 2021 15:35:03 -0700 Subject: [PATCH] Windows: Update GLib to 2.66.4. Upgrade our vcpkg bundle to one that includes GLib 2.66.4 and libxml2 2.9.10. Avoid running pkgconfig on Windows so that we don't find Strawberry Perl's headers. --- cmake/modules/FindGLIB2.cmake | 60 ++++++++++++++++----------------- cmake/modules/FindLibXml2.cmake | 12 ++++--- cmake/modules/FindZLIB.cmake | 6 ++-- tools/win-setup.ps1 | 8 ++--- 4 files changed, 45 insertions(+), 41 deletions(-) diff --git a/cmake/modules/FindGLIB2.cmake b/cmake/modules/FindGLIB2.cmake index 1882cfe411..ad3cb4bee8 100644 --- a/cmake/modules/FindGLIB2.cmake +++ b/cmake/modules/FindGLIB2.cmake @@ -73,7 +73,7 @@ find_path( GLIB2_INTERNAL_INCLUDE_DIR glibconfig.h HINTS "${GLIB2_INCLUDEDIR}" - "${GLIB2_HINTS}/include" + "${GLIB2_HINTS}/lib" "${glib2LibDir}" ${CMAKE_SYSTEM_LIBRARY_PATH} PATH_SUFFIXES @@ -128,16 +128,16 @@ if( GLIB2_FOUND ) # GTK+ required GObject and GIO. We probably don't. file( GLOB _glib2_dlls_release RELATIVE "${GLIB2_DLL_DIR_RELEASE}" - # "${GLIB2_DLL_DIR_RELEASE}/gio-2.dll" - "${GLIB2_DLL_DIR_RELEASE}/glib-2.dll" - "${GLIB2_DLL_DIR_RELEASE}/gmodule-2.dll" - # "${GLIB2_DLL_DIR_RELEASE}/gobject-2.dll" - "${GLIB2_DLL_DIR_RELEASE}/gthread-2.dll" - "${GLIB2_DLL_DIR_RELEASE}/libcharset.dll" + # "${GLIB2_DLL_DIR_RELEASE}/gio-2.0-0.dll" + "${GLIB2_DLL_DIR_RELEASE}/glib-2.0-0.dll" + "${GLIB2_DLL_DIR_RELEASE}/gmodule-2.0-0.dll" + # "${GLIB2_DLL_DIR_RELEASE}/gobject-2.0-0.dll" + "${GLIB2_DLL_DIR_RELEASE}/gthread-2.0-0.dll" + "${GLIB2_DLL_DIR_RELEASE}/charset-1.dll" # gnutls-3.6.3-1-win64ws ships with libffi-6.dll # "${GLIB2_DLL_DIR_RELEASE}/libffi.dll" - "${GLIB2_DLL_DIR_RELEASE}/libiconv.dll" - "${GLIB2_DLL_DIR_RELEASE}/libintl.dll" + "${GLIB2_DLL_DIR_RELEASE}/iconv-2.dll" + "${GLIB2_DLL_DIR_RELEASE}/intl-8.dll" "${GLIB2_DLL_DIR_RELEASE}/pcre.dll" # "${GLIB2_DLL_DIR_RELEASE}/pcre16.dll" # "${GLIB2_DLL_DIR_RELEASE}/pcre32.dll" @@ -149,16 +149,16 @@ if( GLIB2_FOUND ) CACHE FILEPATH "GLib 2 release DLL list" ) file( GLOB _glib2_dlls_debug RELATIVE "${GLIB2_DLL_DIR_DEBUG}" - # "${GLIB2_DLL_DIR_DEBUG}/gio-2.dll" - "${GLIB2_DLL_DIR_DEBUG}/glib-2.dll" - "${GLIB2_DLL_DIR_DEBUG}/gmodule-2.dll" - # "${GLIB2_DLL_DIR_DEBUG}/gobject-2.dll" - "${GLIB2_DLL_DIR_DEBUG}/gthread-2.dll" - "${GLIB2_DLL_DIR_DEBUG}/libcharset.dll" + # "${GLIB2_DLL_DIR_DEBUG}/gio-2.0-0.dll" + "${GLIB2_DLL_DIR_DEBUG}/glib-2.0-0.dll" + "${GLIB2_DLL_DIR_DEBUG}/gmodule-2.0-0.dll" + # "${GLIB2_DLL_DIR_DEBUG}/gobject-2.0-0.dll" + "${GLIB2_DLL_DIR_DEBUG}/gthread-2.0-0.dll" + "${GLIB2_DLL_DIR_DEBUG}/charset-1.dll" # gnutls-3.6.3-1-win64ws ships with libffi-6.dll # "${GLIB2_DLL_DIR_DEBUG}/libffi.dll" - "${GLIB2_DLL_DIR_DEBUG}/libiconv.dll" - "${GLIB2_DLL_DIR_DEBUG}/libintl.dll" + "${GLIB2_DLL_DIR_DEBUG}/iconv-2.dll" + "${GLIB2_DLL_DIR_DEBUG}/intl-8.dll" "${GLIB2_DLL_DIR_DEBUG}/pcred.dll" # "${GLIB2_DLL_DIR_DEBUG}/pcre16d.dll" # "${GLIB2_DLL_DIR_DEBUG}/pcre32d.dll" @@ -171,25 +171,25 @@ if( GLIB2_FOUND ) ) file( GLOB _glib2_pdbs_release RELATIVE "${GLIB2_DLL_DIR_RELEASE}" - "${GLIB2_DLL_DIR_RELEASE}/glib-2.pdb" - "${GLIB2_DLL_DIR_RELEASE}/gmodule-2.pdb" - "${GLIB2_DLL_DIR_RELEASE}/gthread-2.pdb" - "${GLIB2_DLL_DIR_RELEASE}/libcharset.pdb" - "${GLIB2_DLL_DIR_RELEASE}/libiconv.pdb" - "${GLIB2_DLL_DIR_RELEASE}/libintl.pdb" + "${GLIB2_DLL_DIR_RELEASE}/glib-2.0-0.pdb" + "${GLIB2_DLL_DIR_RELEASE}/gmodule-2.0-0.pdb" + "${GLIB2_DLL_DIR_RELEASE}/gthread-2.0-0.pdb" + # "${GLIB2_DLL_DIR_RELEASE}/libcharset.pdb" + # "${GLIB2_DLL_DIR_RELEASE}/libiconv.pdb" + # "${GLIB2_DLL_DIR_RELEASE}/libintl.pdb" "${GLIB2_DLL_DIR_RELEASE}/pcre.pdb" ) set ( GLIB2_PDBS_RELEASE ${_glib2_pdbs_release} CACHE FILEPATH "GLib2 debug release PDB list" ) file( GLOB _glib2_pdbs_debug RELATIVE "${GLIB2_DLL_DIR_DEBUG}" - "${GLIB2_DLL_DIR_DEBUG}/glib-2.pdb" - "${GLIB2_DLL_DIR_DEBUG}/gmodule-2.pdb" - "${GLIB2_DLL_DIR_DEBUG}/gthread-2.pdb" - "${GLIB2_DLL_DIR_DEBUG}/libcharset.pdb" - "${GLIB2_DLL_DIR_DEBUG}/libiconv.pdb" - "${GLIB2_DLL_DIR_DEBUG}/libintl.pdb" - "${GLIB2_DLL_DIR_DEBUG}/pcred.pdb" + "${GLIB2_DLL_DIR_DEBUG}/glib-2.0-0.pdb" + "${GLIB2_DLL_DIR_DEBUG}/gmodule-2.0-0.pdb" + "${GLIB2_DLL_DIR_DEBUG}/gthread-2.0-0.pdb" + # "${GLIB2_DLL_DIR_DEBUG}/libcharset.pdb" + # "${GLIB2_DLL_DIR_DEBUG}/libiconv.pdb" + # "${GLIB2_DLL_DIR_DEBUG}/libintl.pdb" + "${GLIB2_DLL_DIR_DEBUG}/pcre.pdb" ) set ( GLIB2_PDBS_DEBUG ${_glib2_pdbs_debug} CACHE FILEPATH "GLib2 debug debug PDB list" diff --git a/cmake/modules/FindLibXml2.cmake b/cmake/modules/FindLibXml2.cmake index 34121ef01b..29ea779f2e 100644 --- a/cmake/modules/FindLibXml2.cmake +++ b/cmake/modules/FindLibXml2.cmake @@ -50,11 +50,13 @@ The following cache variables may also be set: include(FindWSWinLibs) FindWSWinLibs("vcpkg-export-.*" LIBXML2_HINTS) -# use pkg-config to get the directories and then use these values -# in the find_path() and find_library() calls -find_package(PkgConfig QUIET) -PKG_CHECK_MODULES(PC_LIBXML QUIET libxml-2.0) -set(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS_OTHER}) +if (NOT WIN32) # else we'll find Strawberry Perl's pkgconfig + # use pkg-config to get the directories and then use these values + # in the find_path() and find_library() calls + find_package(PkgConfig QUIET) + PKG_CHECK_MODULES(PC_LIBXML QUIET libxml-2.0) + set(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS_OTHER}) +endif() find_path(LIBXML2_INCLUDE_DIR NAMES libxml/xpath.h HINTS diff --git a/cmake/modules/FindZLIB.cmake b/cmake/modules/FindZLIB.cmake index d0bfb1a455..09c740597c 100644 --- a/cmake/modules/FindZLIB.cmake +++ b/cmake/modules/FindZLIB.cmake @@ -40,8 +40,10 @@ include( FindWSWinLibs ) FindWSWinLibs( "vcpkg-export-*" "ZLIB_HINTS" ) if (NOT ZLIB_INCLUDE_DIR OR NOT ZLIB_LIBRARY) - find_package(PkgConfig) - pkg_search_module(ZLIB zlib) + if (NOT WIN32) # else we'll find Strawberry Perl's pkgconfig + find_package(PkgConfig) + pkg_search_module(ZLIB zlib) + endif() FIND_PATH(ZLIB_INCLUDE_DIR NAMES diff --git a/tools/win-setup.ps1 b/tools/win-setup.ps1 index b658baa699..833ea66e8b 100644 --- a/tools/win-setup.ps1 +++ b/tools/win-setup.ps1 @@ -69,8 +69,8 @@ Param( # trouble instead of trying to catch exceptions everywhere. $ErrorActionPreference = "Stop" -$Win64CurrentTag = "2021-04-25" -$Win32CurrentTag = "2021-04-25" +$Win64CurrentTag = "2021-06-09" +$Win32CurrentTag = "2021-06-09" # Archive file / SHA256 $Win64Archives = @{ @@ -94,7 +94,7 @@ $Win64Archives = @{ "sbc-1.3-1-win64ws.zip" = "08cef6898c421277a6582ef3225d8820f74a037cbd5b6e673a4d8f4593ce80a1"; "snappy-1.1.8-1-win64ws.zip" = "45d496ac98ffd365f2b86707a077498f4ab59cca33f65dcca1f89669a85ee92a"; "spandsp-0.0.6-2-win64ws.zip" = "2eb8278633037f60f44815ea1606486ab5dcdf3bddc500b20c9fe356856236b2"; - "vcpkg-export-20190318-win64ws.zip" = "72c2c43594b0581de2bc86517870a561cc40df294662502536b2a6c06cace87e"; + "vcpkg-export-20210609-1-win64ws.zip" = "2207112ecae2d93e64405cb33e625d37c85f9b9db90b440a4d0f0362346564e4"; "WinSparkle-0.5.7.zip" = "56d396ef0c4e8b0589ea74134e484376ca6459d972cd1ab1da6b9624d82e6d04"; "zstd-1.4.0-win64ws.zip" = "154199227bdfdfa608972bcdcea38e20768937085e5a59a8fa06c72d07b00d6b"; } @@ -120,7 +120,7 @@ $Win32Archives = @{ "sbc-1.3-1-win32ws.zip" = "ad37825e9ace4b849a5442c08f1ed7e30634e6b774bba4307fb86f35f82e71ba"; "snappy-1.1.8-1-win32ws.zip" = "058c12605d747e805e0fcb310b8fe6efdde5b36d68664bbf54f7ee8fa5fd5adb"; "spandsp-0.0.6-2-win32ws.zip" = "31a4b5ca228c719ab4190e1b46801f1483efb8756f1e33d10ecc915244612fca"; - "vcpkg-export-20190318-win32ws.zip" = "5f9eb78b1ea9e6762c2a4104e0126f1f5453919dc9df66fef2b1e0be8d8c5829"; + "vcpkg-export-20210609-1-win32ws.zip" = "da544758352e31aed6cf9e62a6670df218b3d369cd113a462e94010b0ef8e472"; "WinSparkle-0.5.7.zip" = "56d396ef0c4e8b0589ea74134e484376ca6459d972cd1ab1da6b9624d82e6d04"; "zstd-1.4.0-win32ws.zip" = "9141716d4d749e67dad40d4aab6bbb3206085bf68e5acb03baf1e5667aa0b6f5"; }