about summary refs log tree commit diff
path: root/pkgs/development/libraries/glib
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2022-07-23 15:44:56 +0000
committerJan Tojnar <jtojnar@gmail.com>2022-10-11 18:52:03 +0200
commit9c64673e4d59c1979cfa891056b05ace91c44eb2 (patch)
tree027f189c4fbd7191c74f7ab9baa397c570000740 /pkgs/development/libraries/glib
parent205e805d51eecde255764e03d329839ea9baacae (diff)
glib: 2.72.3 → 2.73.2
https://gitlab.gnome.org/GNOME/glib/-/compare/2.72.3...2.73.2

Changelog-Reviewed-By: jtojnar
Diffstat (limited to 'pkgs/development/libraries/glib')
-rw-r--r--pkgs/development/libraries/glib/default.nix18
-rw-r--r--pkgs/development/libraries/glib/split-dev-programs.patch62
-rw-r--r--pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch8
3 files changed, 49 insertions, 39 deletions
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index c6da42738c6ae..ca47b8f6bf916 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -1,5 +1,5 @@
 { config, lib, stdenv, fetchurl, gettext, meson, ninja, pkg-config, perl, python3
-, libiconv, zlib, libffi, pcre, libelf, gnome, libselinux, bash, gnum4, gtk-doc, docbook_xsl, docbook_xml_dtd_45, libxslt
+, libiconv, zlib, libffi, pcre2, libelf, gnome, libselinux, bash, gnum4, gtk-doc, docbook_xsl, docbook_xml_dtd_45, libxslt
 # use util-linuxMinimal to avoid circular dependency (util-linux, systemd, glib)
 , util-linuxMinimal ? null
 , buildPackages
@@ -44,11 +44,11 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "glib";
-  version = "2.72.3";
+  version = "2.73.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glib/${lib.versions.majorMinor finalAttrs.version}/glib-${finalAttrs.version}.tar.xz";
-    sha256 = "Sjmi9iS4US1QDVhAFz7af6hfUcEJBS6ugGrOzoXTRfA=";
+    sha256 = "Xz7jbjT0qqs5PD49xG+wGzL36tbIjUHX8g2IpJze8dk=";
   };
 
   patches = optionals stdenv.isDarwin [
@@ -90,6 +90,14 @@ stdenv.mkDerivation (finalAttrs: {
     #    * gio-launch-desktop
     ./split-dev-programs.patch
 
+    # Fix build on Darwin
+    # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2914
+    (fetchpatch {
+      name = "gio-properly-guard-use-of-utimensat.patch";
+      url = "https://gitlab.gnome.org/GNOME/glib/-/commit/7f7171e68a420991b537d3e9e63263a0b2871618.patch";
+      sha256 = "kKEqmBqx/RlvFT3eixu+NnM7JXhHb34b9NLRfAt+9h0=";
+    })
+
     # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2866
     (fetchpatch {
       name = "tests-skip-g-file-info-test-if-atime-unsupported.patch";
@@ -107,7 +115,9 @@ stdenv.mkDerivation (finalAttrs: {
   setupHook = ./setup-hook.sh;
 
   buildInputs = [
-    libelf finalAttrs.setupHook pcre
+    libelf
+    finalAttrs.setupHook
+    pcre2
   ] ++ optionals (!stdenv.hostPlatform.isWindows) [
     bash gnum4 # install glib-gettextize and m4 macros for other apps to use
   ] ++ optionals stdenv.isLinux [
diff --git a/pkgs/development/libraries/glib/split-dev-programs.patch b/pkgs/development/libraries/glib/split-dev-programs.patch
index 9a949ea1226c0..58e1b6d7dfcf3 100644
--- a/pkgs/development/libraries/glib/split-dev-programs.patch
+++ b/pkgs/development/libraries/glib/split-dev-programs.patch
@@ -1,8 +1,8 @@
 diff --git a/gio/gdbus-2.0/codegen/meson.build b/gio/gdbus-2.0/codegen/meson.build
-index 5ea6bae2f..e0b584a86 100644
+index bf25cdaeb..bff7016cc 100644
 --- a/gio/gdbus-2.0/codegen/meson.build
 +++ b/gio/gdbus-2.0/codegen/meson.build
-@@ -16,7 +16,7 @@ gdbus_codegen_conf.set('DATADIR', glib_datadir)
+@@ -19,7 +19,7 @@ gdbus_codegen_conf.set('DATADIR', glib_datadir)
  # Install gdbus-codegen executable
  gdbus_codegen = configure_file(input : 'gdbus-codegen.in',
    output : 'gdbus-codegen',
@@ -12,10 +12,10 @@ index 5ea6bae2f..e0b584a86 100644
  )
    # Provide tools for others when we're a subproject and they use the Meson GNOME module
 diff --git a/gio/meson.build b/gio/meson.build
-index 3535788ab..99c3b48d6 100644
+index ca969309a..68a072714 100644
 --- a/gio/meson.build
 +++ b/gio/meson.build
-@@ -831,14 +831,15 @@ pkg.generate(libgio,
+@@ -844,14 +844,15 @@ pkg.generate(libgio,
    variables : ['datadir=' + join_paths('${prefix}', get_option('datadir')),
                 'schemasdir=' + join_paths('${datadir}', schemas_subdir),
                 'bindir=' + join_paths('${prefix}', get_option('bindir')),
@@ -36,7 +36,7 @@ index 3535788ab..99c3b48d6 100644
                 'gsettings=' + join_paths('${bindir}', 'gsettings')],
    version : glib_version,
    install_dir : glib_pkgconfigreldir,
-@@ -939,12 +940,14 @@ executable('gio', gio_tool_sources,
+@@ -952,12 +953,14 @@ executable('gio', gio_tool_sources,
  
  executable('gresource', 'gresource-tool.c',
    install : true,
@@ -51,27 +51,27 @@ index 3535788ab..99c3b48d6 100644
    c_args : gio_c_args,
    # intl.lib is not compatible with SAFESEH
    link_args : noseh_link_args,
-@@ -953,6 +956,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
+@@ -966,6 +969,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
  glib_compile_schemas = executable('glib-compile-schemas',
-   [gconstructor_as_data_h, 'gvdb/gvdb-builder.c', 'glib-compile-schemas.c'],
+   ['glib-compile-schemas.c'],
    install : true,
 +  install_dir : get_option('devbindir'),
    # intl.lib is not compatible with SAFESEH
    link_args : noseh_link_args,
-   dependencies : [libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
-@@ -960,6 +964,7 @@ glib_compile_schemas = executable('glib-compile-schemas',
+   dependencies : [libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep, gvdb_dep])
+@@ -973,6 +977,7 @@ glib_compile_schemas = executable('glib-compile-schemas',
  glib_compile_resources = executable('glib-compile-resources',
-   [gconstructor_as_data_h, 'gvdb/gvdb-builder.c', 'glib-compile-resources.c'],
+   [gconstructor_as_data_h, 'glib-compile-resources.c'],
    install : true,
 +  install_dir : get_option('devbindir'),
    c_args : gio_c_args,
    # intl.lib is not compatible with SAFESEH
    link_args : noseh_link_args,
 diff --git a/glib/meson.build b/glib/meson.build
-index aaf5f00f5..09edd291a 100644
+index 6062c11a1..ce242629a 100644
 --- a/glib/meson.build
 +++ b/glib/meson.build
-@@ -375,9 +375,10 @@ pkg.generate(libglib,
+@@ -392,9 +392,10 @@ pkg.generate(libglib,
    subdirs : ['glib-2.0'],
    extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags,
    variables : ['bindir=' + join_paths('${prefix}', get_option('bindir')),
@@ -85,7 +85,7 @@ index aaf5f00f5..09edd291a 100644
    version : glib_version,
    install_dir : glib_pkgconfigreldir,
    filebase : 'glib-2.0',
-@@ -413,6 +414,7 @@ if host_system == 'windows'
+@@ -431,6 +432,7 @@ if host_system == 'windows'
  else
    gtester = executable('gtester', 'gtester.c',
      install : true,
@@ -93,7 +93,7 @@ index aaf5f00f5..09edd291a 100644
      c_args : ['-UG_DISABLE_ASSERT'],
      include_directories : configinc,
      dependencies : [libglib_dep])
-@@ -424,7 +426,7 @@ report_conf.set('PYTHON', python_name)
+@@ -442,7 +444,7 @@ report_conf.set('PYTHON', python_name)
  configure_file(
    input: 'gtester-report.in',
    output: 'gtester-report',
@@ -103,10 +103,10 @@ index aaf5f00f5..09edd291a 100644
    install_mode: 'rwxr-xr-x'
  )
 diff --git a/gobject/meson.build b/gobject/meson.build
-index 85e283bab..386ad5e4e 100644
+index 07d096f36..865891e8c 100644
 --- a/gobject/meson.build
 +++ b/gobject/meson.build
-@@ -75,7 +75,7 @@ foreach tool: python_tools
+@@ -79,7 +79,7 @@ foreach tool: python_tools
      input : tool + '.in',
      output : tool,
      configuration : python_tools_conf,
@@ -115,7 +115,7 @@ index 85e283bab..386ad5e4e 100644
    )
  
    # Set variables for later use
-@@ -145,6 +145,7 @@ libgobject_dep = declare_dependency(link_with : libgobject,
+@@ -154,6 +154,7 @@ meson.override_dependency('gobject-2.0', libgobject_dep)
  
  executable('gobject-query', 'gobject-query.c',
    install : true,
@@ -123,21 +123,8 @@ index 85e283bab..386ad5e4e 100644
    dependencies : [libglib_dep, libgobject_dep])
  
  install_data('gobject_gdb.py', install_dir : join_paths(glib_pkgdatadir, 'gdb'))
-diff --git a/meson.build b/meson.build
-index 484f4c750..c7f9327d9 100644
---- a/meson.build
-+++ b/meson.build
-@@ -2122,7 +2122,7 @@ if have_sh
-   gettextize_conf.set('datarootdir', glib_datadir)
-   gettextize_conf.set('datadir', glib_datadir)
-   configure_file(input : 'glib-gettextize.in',
--    install_dir : glib_bindir,
-+    install_dir : get_option('devbindir'),
-     output : 'glib-gettextize',
-     configuration : gettextize_conf)
- endif
 diff --git a/meson_options.txt b/meson_options.txt
-index 2c831e37e..5d8928577 100644
+index a52eed9d2..b70b69e35 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
 @@ -3,6 +3,11 @@ option('runtime_libdir',
@@ -152,3 +139,16 @@ index 2c831e37e..5d8928577 100644
  option('iconv',
         type : 'combo',
         choices : ['auto', 'libc', 'external'],
+diff --git a/tools/meson.build b/tools/meson.build
+index d550a0e37..cff7fdae5 100644
+--- a/tools/meson.build
++++ b/tools/meson.build
+@@ -8,7 +8,7 @@ if have_sh
+   gettextize_conf.set('datarootdir', glib_datadir)
+   gettextize_conf.set('datadir', glib_datadir)
+   configure_file(input : 'glib-gettextize.in',
+-    install_dir : glib_bindir,
++    install_dir : get_option('devbindir'),
+     output : 'glib-gettextize',
+     configuration : gettextize_conf)
+ endif
diff --git a/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch b/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch
index 681e361896e45..106ba4f99a97c 100644
--- a/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch
+++ b/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch
@@ -13,7 +13,7 @@ Part-of: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2867
 ---
  gio/tests/meson.build  | 43 +++++++++++++++++++++++-------------------
  glib/tests/meson.build |  2 +-
- tests/meson.build      | 30 +++++++++++++++--------------
+ gmodule/tests/meson.build      | 30 +++++++++++++++--------------
  3 files changed, 41 insertions(+), 34 deletions(-)
 
 diff --git a/gio/tests/meson.build b/gio/tests/meson.build
@@ -95,10 +95,10 @@ index 301158e0f..6203ff45e 100644
      glib_tests += {
        'gutils-user-database' : {
          'depends' : [
-diff --git a/tests/meson.build b/tests/meson.build
+diff --git a/gmodule/tests/meson.build b/gmodule/tests/meson.build
 index c95fa1d00..25144c941 100644
---- a/tests/meson.build
-+++ b/tests/meson.build
+--- a/gmodule/tests/meson.build
++++ b/gmodule/tests/meson.build
 @@ -72,20 +72,22 @@ if ['darwin', 'ios'].contains(host_machine.system())
    module_suffix = 'so'
  endif