Update to 2.79.0

- Rebase gnutls-hmac.patch
- Add gir and typelib files that moved here from gobject-introspection
- Explicitly conflict with older gobject-introspection
- Switch to building docs with gi-docgen instead of gtk-doc
This commit is contained in:
Kalev Lember 2024-01-10 23:57:33 +01:00
parent 2659d45c54
commit f7008d223e
3 changed files with 57 additions and 37 deletions

View File

@ -1,11 +1,11 @@
Name: glib2
Version: 2.78.3
Version: 2.79.0
Release: %autorelease
Summary: A library of handy utility functions
License: LGPL-2.1-or-later
URL: https://www.gtk.org
Source: https://download.gnome.org/sources/glib/2.78/glib-%{version}.tar.xz
Source: https://download.gnome.org/sources/glib/2.79/glib-%{version}.tar.xz
# Required for RHEL core crypto components policy. Good for Fedora too.
# https://bugzilla.redhat.com/show_bug.cgi?id=1630260
@ -19,7 +19,6 @@ Patch: gspawn-eperm.patch
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: gettext
BuildRequires: gtk-doc
BuildRequires: perl-interpreter
# for sys/inotify.h
BuildRequires: glibc-devel
@ -28,6 +27,7 @@ BuildRequires: libselinux-devel
BuildRequires: meson
# for sys/sdt.h
BuildRequires: systemtap-sdt-devel
BuildRequires: pkgconfig(gi-docgen)
BuildRequires: pkgconfig(libelf)
BuildRequires: pkgconfig(libffi)
BuildRequires: pkgconfig(libpcre2-8)
@ -35,7 +35,9 @@ BuildRequires: pkgconfig(mount)
BuildRequires: pkgconfig(sysprof-capture-4)
BuildRequires: pkgconfig(zlib)
BuildRequires: python3-devel
BuildRequires: /usr/bin/g-ir-scanner
BuildRequires: /usr/bin/marshalparser
BuildRequires: /usr/bin/rst2man
# For gnutls-hmac.patch. We now dlopen libgnutls.so.30 so that we can build a
# static glib2 without depending on a static build of GnuTLS as well. This will
@ -53,6 +55,9 @@ Provides: bundled(gvdb)
Provides: bundled(libcharset)
Provides: bundled(xdgmime)
# glib typelib files moved from gobject-introspection to glib2 in F40
Conflicts: gobject-introspection < 1.79.1
%description
GLib is the low-level core library that forms the basis for projects
such as GTK+ and GNOME. It provides data structure handling for C,
@ -67,6 +72,8 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
# Python 3.12+ standard library.
# https://bugzilla.redhat.com/show_bug.cgi?id=2137442
Requires: (python3-setuptools if python3 >= 3.12)
# glib gir files moved from gobject-introspection-devel to glib2-devel in F40
Conflicts: gobject-introspection-devel < 1.79.1
%description devel
The glib2-devel package includes the header files for the GLib library.
@ -162,6 +169,13 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
%{_libdir}/libgmodule-2.0.so.0*
%{_libdir}/libgobject-2.0.so.0*
%{_libdir}/libgio-2.0.so.0*
%{_libdir}/libgirepository-2.0.so.0*
%dir %{_libdir}/girepository-1.0
%{_libdir}/girepository-1.0/GIRepository-3.0.typelib
%{_libdir}/girepository-1.0/GLib-2.0.typelib
%{_libdir}/girepository-1.0/GModule-2.0.typelib
%{_libdir}/girepository-1.0/GObject-2.0.typelib
%{_libdir}/girepository-1.0/Gio-2.0.typelib
%dir %{_datadir}/bash-completion
%dir %{_datadir}/bash-completion/completions
%{_datadir}/bash-completion/completions/gapplication
@ -219,11 +233,17 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
%{_mandir}/man1/glib-compile-resources.1*
%{_mandir}/man1/gresource.1*
%{_datadir}/gdb/
%dir %{_datadir}/gir-1.0
%{_datadir}/gir-1.0/GIRepository-3.0.gir
%{_datadir}/gir-1.0/GLib-2.0.gir
%{_datadir}/gir-1.0/GModule-2.0.gir
%{_datadir}/gir-1.0/GObject-2.0.gir
%{_datadir}/gir-1.0/Gio-2.0.gir
%{_datadir}/gettext/
%{_datadir}/systemtap/
%files doc
%{_datadir}/gtk-doc/
%{_datadir}/doc/glib-2.0/
%files static
%{_libdir}/libgio-2.0.a

View File

@ -1,4 +1,4 @@
From a2d4c9a46a9955b9fdf63d1ed9355a46d1bab4f4 Mon Sep 17 00:00:00 2001
From 222f00db202c7856e02a49bb28631eb397e247ed Mon Sep 17 00:00:00 2001
From: Colin Walters <walters@verbum.org>
Date: Fri, 7 Jun 2019 18:44:43 +0000
Subject: [PATCH 1/4] ghmac: Split off wrapper functions into ghmac-utils.c
@ -164,10 +164,10 @@ index 000000000..a17359ff1
+ (const guchar *) str, length);
+}
diff --git a/glib/ghmac.c b/glib/ghmac.c
index 7ad28d6f0..516b01b24 100644
index 97e2fff90..de89d826d 100644
--- a/glib/ghmac.c
+++ b/glib/ghmac.c
@@ -353,115 +353,3 @@ g_hmac_get_digest (GHmac *hmac,
@@ -356,115 +356,3 @@ g_hmac_get_digest (GHmac *hmac,
g_checksum_update (hmac->digesto, buffer, len_signed);
g_checksum_get_digest (hmac->digesto, buffer, digest_len);
}
@ -284,10 +284,10 @@ index 7ad28d6f0..516b01b24 100644
- (const guchar *) str, length);
-}
diff --git a/glib/meson.build b/glib/meson.build
index b623983e3..46e3391e4 100644
index 95e863e46..ec9926cec 100644
--- a/glib/meson.build
+++ b/glib/meson.build
@@ -279,6 +279,7 @@ glib_sources += files(
@@ -285,6 +285,7 @@ glib_sources += files(
'ggettext.c',
'ghash.c',
'ghmac.c',
@ -296,10 +296,10 @@ index b623983e3..46e3391e4 100644
'ghostutils.c',
'giochannel.c',
--
2.39.1
2.43.0
From 2932ee3dffd6f48f1855881b39e3c6bfed67a3f7 Mon Sep 17 00:00:00 2001
From 15e2d90e52ad45fe6dccb62e73a43ec512da2246 Mon Sep 17 00:00:00 2001
From: Colin Walters <walters@verbum.org>
Date: Fri, 7 Jun 2019 19:36:54 +0000
Subject: [PATCH 2/4] Add a gnutls backend for GHmac
@ -361,7 +361,7 @@ https://gitlab.gnome.org/GNOME/glib/-/merge_requests/903
create mode 100644 glib/ghmac-gnutls.c
diff --git a/glib/gchecksum.c b/glib/gchecksum.c
index fea7803cd..3c443840e 100644
index 28de99d68..d38c6b069 100644
--- a/glib/gchecksum.c
+++ b/glib/gchecksum.c
@@ -22,7 +22,7 @@
@ -373,7 +373,7 @@ index fea7803cd..3c443840e 100644
#include "gslice.h"
#include "gmem.h"
@@ -175,9 +175,9 @@ sha_byte_reverse (guint32 *buffer,
@@ -176,9 +176,9 @@ sha_byte_reverse (guint32 *buffer,
}
#endif /* G_BYTE_ORDER == G_BIG_ENDIAN */
@ -386,7 +386,7 @@ index fea7803cd..3c443840e 100644
{
gsize i, len = digest_len * 2;
gchar *retval;
@@ -196,6 +196,7 @@ digest_to_string (guint8 *digest,
@@ -197,6 +197,7 @@ digest_to_string (guint8 *digest,
return retval;
}
@ -627,7 +627,7 @@ index 000000000..9fb775f89
+ *digest_len = g_checksum_type_get_length (hmac->digest_type);
+}
diff --git a/glib/ghmac.c b/glib/ghmac.c
index 516b01b24..a4851cc64 100644
index de89d826d..616e167e7 100644
--- a/glib/ghmac.c
+++ b/glib/ghmac.c
@@ -35,6 +35,9 @@
@ -639,8 +639,8 @@ index 516b01b24..a4851cc64 100644
+#endif
/**
* SECTION:hmac
@@ -86,6 +89,18 @@ struct _GHmac
* GHmac:
@@ -89,6 +92,18 @@ struct _GHmac
* Support for digests of type %G_CHECKSUM_SHA512 has been added in GLib 2.42.
* Support for %G_CHECKSUM_SHA384 was added in GLib 2.52.
*
@ -656,14 +656,14 @@ index 516b01b24..a4851cc64 100644
+ * running in FIPS mode. #GHmac creation may also fail if GLib is unable
+ * to load GnuTLS.
+ *
* Returns: the newly created #GHmac, or %NULL.
* Returns: (nullable) (transfer full): the newly created #GHmac, or %NULL.
* Use g_hmac_unref() to free the memory allocated by it.
*
diff --git a/glib/meson.build b/glib/meson.build
index 46e3391e4..9c15e64c1 100644
index ec9926cec..d2f8b2855 100644
--- a/glib/meson.build
+++ b/glib/meson.build
@@ -278,7 +278,6 @@ glib_sources += files(
@@ -284,7 +284,6 @@ glib_sources += files(
'gfileutils.c',
'ggettext.c',
'ghash.c',
@ -671,7 +671,7 @@ index 46e3391e4..9c15e64c1 100644
'ghmac-utils.c',
'ghook.c',
'ghostutils.c',
@@ -334,6 +333,7 @@ glib_sources += files(
@@ -341,6 +340,7 @@ glib_sources += files(
'guriprivate.h',
'gutils.c',
'gutilsprivate.h',
@ -679,7 +679,7 @@ index 46e3391e4..9c15e64c1 100644
'guuid.c',
'gvariant.c',
'gvariant-core.c',
@@ -393,6 +393,12 @@ else
@@ -400,6 +400,12 @@ else
glib_dtrace_hdr = []
endif
@ -692,7 +692,7 @@ index 46e3391e4..9c15e64c1 100644
pcre2_static_args = []
if use_pcre2_static_flag
@@ -413,6 +419,7 @@ libglib = library('glib-2.0',
@@ -420,6 +426,7 @@ libglib = library('glib-2.0',
link_with: [charset_lib, gnulib_lib],
dependencies : [
gnulib_libm_dependency,
@ -701,10 +701,10 @@ index 46e3391e4..9c15e64c1 100644
libintl_deps,
libm,
diff --git a/meson.build b/meson.build
index 334b208b6..40bcd5544 100644
index 471e3eaba..f0c6311d6 100644
--- a/meson.build
+++ b/meson.build
@@ -2139,6 +2139,13 @@ if host_system == 'linux'
@@ -2246,6 +2246,13 @@ if host_system == 'linux'
glib_conf.set('HAVE_LIBMOUNT', libmount_dep.found())
endif
@ -719,7 +719,7 @@ index 334b208b6..40bcd5544 100644
winsock2 = cc.find_library('ws2_32')
else
diff --git a/meson_options.txt b/meson_options.txt
index 517d5757c..2380a60ba 100644
index 69a2135bc..e8599abaa 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -37,6 +37,11 @@ option('libmount',
@ -735,10 +735,10 @@ index 517d5757c..2380a60ba 100644
type : 'boolean',
value : false,
--
2.39.1
2.43.0
From d6620c9371f219959e6bc235e0d344ce9812a194 Mon Sep 17 00:00:00 2001
From d7fe40a832b36d1d12bcdb988bfedd35e19cd796 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@redhat.com>
Date: Wed, 16 Jun 2021 20:35:00 -0500
Subject: [PATCH 3/4] dlopen GnuTLS instead of linking directly
@ -907,7 +907,7 @@ index 9fb775f89..1800fc2e0 100644
hmac->digest_type = digest_type;
diff --git a/glib/ghmac.c b/glib/ghmac.c
index a4851cc64..20e64fd00 100644
index 616e167e7..ddb163557 100644
--- a/glib/ghmac.c
+++ b/glib/ghmac.c
@@ -35,7 +35,7 @@
@ -920,10 +920,10 @@ index a4851cc64..20e64fd00 100644
#endif
diff --git a/glib/meson.build b/glib/meson.build
index 9c15e64c1..c41f110ae 100644
index d2f8b2855..20d2fbebf 100644
--- a/glib/meson.build
+++ b/glib/meson.build
@@ -419,7 +419,6 @@ libglib = library('glib-2.0',
@@ -426,7 +426,6 @@ libglib = library('glib-2.0',
link_with: [charset_lib, gnulib_lib],
dependencies : [
gnulib_libm_dependency,
@ -932,10 +932,10 @@ index 9c15e64c1..c41f110ae 100644
libintl_deps,
libm,
diff --git a/meson.build b/meson.build
index 40bcd5544..1c1f5750b 100644
index f0c6311d6..ef124bab0 100644
--- a/meson.build
+++ b/meson.build
@@ -2139,11 +2139,9 @@ if host_system == 'linux'
@@ -2246,11 +2246,9 @@ if host_system == 'linux'
glib_conf.set('HAVE_LIBMOUNT', libmount_dep.found())
endif
@ -950,10 +950,10 @@ index 40bcd5544..1c1f5750b 100644
if host_system == 'windows'
--
2.39.1
2.43.0
From 69f5c7b41e55c14beaeff32cea289be841d4ee1d Mon Sep 17 00:00:00 2001
From 7477a302f16c40774f35fed33e722373625d7d33 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@redhat.com>
Date: Wed, 16 Jun 2021 20:46:24 -0500
Subject: [PATCH 4/4] Add test for GHmac in FIPS mode
@ -1084,5 +1084,5 @@ index 3ac3206df..79c91d19c 100644
return g_test_run ();
}
--
2.39.1
2.43.0

View File

@ -1 +1 @@
SHA512 (glib-2.78.3.tar.xz) = 9c1af75fb973d23ce0286d5b7836eea45f9628c148ced5ac10e10abceda05024ae4c57f01439824d3287d986527500b7b959828b630b6e4a3314b5224f4d7246
SHA512 (glib-2.79.0.tar.xz) = 31eb387c4ece6d60388716548b703c7f9133a1e9920a4ea2ecb3a8f00196020d39f1a6e6ef2281d9c70187a0ed5954e852316976625e0c662b9a72b292862a71