Update to 2.66.1

Resolves: #1965881

(cherry picked from Fedora commit ba5fa9ee0c4dd6d9ebef39e9f4cc363e31442f10)
This commit is contained in:
Kalev Lember 2021-05-26 13:13:49 +02:00
parent 4b079c30a7
commit 038b9a4bdb
3 changed files with 6 additions and 594 deletions

View File

@ -1,588 +0,0 @@
From f40371dae96ae340b752a985621598439f09ad40 Mon Sep 17 00:00:00 2001
From: Magne Oestlyngen <magne@spacetec.no>
Date: Tue, 6 Apr 2021 14:59:16 +0200
Subject: [PATCH] Variant: Fix so it works with C++20
C++20 changed some aspects of templates that broke variant.h on
some compilers (GCC 11).
Ref: https://wg21.cmeerw.net/cwg/issue2237
template<class T>
struct A {
A<T>(); // ok pre-C++20, now incorrect
// A(); // correct for all versions
};
This commit removes the "simple-template-id" from both the default
constructor (no args) and the explicit constructor (has args), even
though only the default constructor currently gives error on GCC 11.
Since both versions are wrong according to the issue referred to above
it is expected that GCC (and possibly other compilers) will be updated
to fail on both cases in the future.
---
glib/src/variant.hg | 40 ++++++++++++++++----------------
glib/src/variant_basictypes.h.m4 | 4 ++--
2 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/glib/src/variant.hg b/glib/src/variant.hg
index 807e52ef..011aa994 100644
--- a/glib/src/variant.hg
+++ b/glib/src/variant.hg
@@ -470,7 +470,7 @@ public:
using CppContainerType = Variant<VariantBase>;
/// Default constructor.
- Variant<VariantBase>();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -478,7 +478,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<VariantBase>(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -521,7 +521,7 @@ public:
using CppContainerType = Variant<CppType>;
/// Default constructor.
- Variant< Variant<T> >();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -530,7 +530,7 @@ public:
* wrapper).
* @newin{2,36}
*/
- explicit Variant< Variant<T> >(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -567,7 +567,7 @@ public:
using CppType = Glib::ustring;
/// Default constructor.
- Variant<Glib::ustring>();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -575,7 +575,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<Glib::ustring>(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -711,7 +711,7 @@ public:
using CppType = std::string;
/// Default constructor.
- Variant<std::string>();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -719,7 +719,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<std::string>(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -756,7 +756,7 @@ public:
using CppContainerType = Variant<CppType>;
/// Default constructor.
- Variant< std::pair<K, V> >()
+ Variant()
: VariantContainerBase()
{}
@@ -766,7 +766,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::pair<K, V> >(GVariant* castitem,
+ explicit Variant(GVariant* castitem,
bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
@@ -805,7 +805,7 @@ public:
using CppContainerType = std::vector<T>;
/// Default constructor.
- Variant< std::vector<T> >()
+ Variant()
: VariantContainerBase()
{}
@@ -815,7 +815,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::vector<T> >(GVariant* castitem,
+ explicit Variant(GVariant* castitem,
bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
@@ -874,7 +874,7 @@ public:
using CppContainerType = std::vector<Glib::ustring>;
/// Default constructor.
- Variant< std::vector<Glib::ustring> >();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -882,7 +882,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::vector<Glib::ustring> >(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1000,7 +1000,7 @@ public:
using CppContainerType = std::vector<std::string>;
/// Default constructor.
- Variant< std::vector<std::string> >();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -1008,7 +1008,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::vector<std::string> >(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1076,7 +1076,7 @@ public:
using CppContainerType = std::map<K, V>;
/// Default constructor.
- Variant< std::map<K, V> >()
+ Variant()
: VariantContainerBase()
{}
@@ -1086,7 +1086,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::map<K, V> >(GVariant* castitem,
+ explicit Variant(GVariant* castitem,
bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
@@ -1149,7 +1149,7 @@ public:
using CppContainerType = std::tuple<Types...>;
/// Default constructor
- Variant<std::tuple<Types...>>()
+ Variant()
: VariantContainerBase()
{}
@@ -1158,7 +1158,7 @@ public:
* @param take_a_reference Whether to take an extra reference of the GVariant
* or not (not taking one could destroy the GVariant with the wrapper).
*/
- explicit Variant<std::tuple<Types...>>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
diff --git a/glib/src/variant_basictypes.h.m4 b/glib/src/variant_basictypes.h.m4
index 199295b9..f73992fd 100644
--- a/glib/src/variant_basictypes.h.m4
+++ b/glib/src/variant_basictypes.h.m4
@@ -45,7 +45,7 @@ public:
using CType = $2;
/// Default constructor.
- Variant<$1>()
+ Variant()
: VariantBase()
{}
@@ -55,7 +55,7 @@ public:
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<$1>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
--
2.30.2
--- glibmm-2.66.0.orig/untracked/glib/glibmm/variant.h 2021-01-27 10:56:33.969063300 +0100
+++ glibmm-2.66.0/untracked/glib/glibmm/variant.h 2021-04-14 13:48:33.792287859 +0200
@@ -959,7 +959,7 @@
using CppContainerType = Variant<VariantBase>;
/// Default constructor.
- Variant<VariantBase>();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -967,7 +967,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<VariantBase>(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1020,7 +1020,7 @@
using CppContainerType = Variant<CppType>;
/// Default constructor.
- Variant< Variant<T> >();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -1029,7 +1029,7 @@
* wrapper).
* @newin{2,36}
*/
- explicit Variant< Variant<T> >(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1073,7 +1073,7 @@
using CppType = Glib::ustring;
/// Default constructor.
- Variant<Glib::ustring>();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -1081,7 +1081,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<Glib::ustring>(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1243,7 +1243,7 @@
using CppType = std::string;
/// Default constructor.
- Variant<std::string>();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -1251,7 +1251,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<std::string>(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1289,7 +1289,7 @@
using CppContainerType = Variant<CppType>;
/// Default constructor.
- Variant< std::pair<K, V> >()
+ Variant()
: VariantContainerBase()
{}
@@ -1299,7 +1299,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::pair<K, V> >(GVariant* castitem,
+ explicit Variant(GVariant* castitem,
bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
@@ -1338,7 +1338,7 @@
using CppContainerType = std::vector<T>;
/// Default constructor.
- Variant< std::vector<T> >()
+ Variant()
: VariantContainerBase()
{}
@@ -1348,7 +1348,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::vector<T> >(GVariant* castitem,
+ explicit Variant(GVariant* castitem,
bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
@@ -1407,7 +1407,7 @@
using CppContainerType = std::vector<Glib::ustring>;
/// Default constructor.
- Variant< std::vector<Glib::ustring> >();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -1415,7 +1415,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::vector<Glib::ustring> >(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1533,7 +1533,7 @@
using CppContainerType = std::vector<std::string>;
/// Default constructor.
- Variant< std::vector<std::string> >();
+ Variant();
/** GVariant constructor.
* @param castitem The GVariant to wrap.
@@ -1541,7 +1541,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::vector<std::string> >(GVariant* castitem, bool take_a_reference = false);
+ explicit Variant(GVariant* castitem, bool take_a_reference = false);
/** Gets the VariantType.
* @return The VariantType.
@@ -1609,7 +1609,7 @@
using CppContainerType = std::map<K, V>;
/// Default constructor.
- Variant< std::map<K, V> >()
+ Variant()
: VariantContainerBase()
{}
@@ -1619,7 +1619,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant< std::map<K, V> >(GVariant* castitem,
+ explicit Variant(GVariant* castitem,
bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
@@ -1682,7 +1682,7 @@
using CppContainerType = std::tuple<Types...>;
/// Default constructor
- Variant<std::tuple<Types...>>()
+ Variant()
: VariantContainerBase()
{}
@@ -1691,7 +1691,7 @@
* @param take_a_reference Whether to take an extra reference of the GVariant
* or not (not taking one could destroy the GVariant with the wrapper).
*/
- explicit Variant<std::tuple<Types...>>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantContainerBase(castitem, take_a_reference)
{}
--- glibmm-2.66.0.orig/untracked/glib/glibmm/variant_basictypes.h 2021-01-27 10:56:34.057059800 +0100
+++ glibmm-2.66.0/untracked/glib/glibmm/variant_basictypes.h 2021-04-14 13:48:33.563288223 +0200
@@ -1,4 +1,4 @@
-// This is a generated file. Do not edit it. Generated from ../../gnome/glibmm-2.4/glib/glibmm/../src/variant_basictypes.h.m4
+// This is a generated file. Do not edit it. Generated from ../glib/glibmm/../src/variant_basictypes.h.m4
#ifndef DOXYGEN_SHOULD_SKIP_THIS
#ifndef _GLIBMM_VARIANT_H_INCLUDE_VARIANT_BASICTYPES_H
@@ -20,7 +20,7 @@
using CType = gboolean;
/// Default constructor.
- Variant<bool>()
+ Variant()
: VariantBase()
{}
@@ -30,7 +30,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<bool>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -63,7 +63,7 @@
using CType = guchar;
/// Default constructor.
- Variant<unsigned char>()
+ Variant()
: VariantBase()
{}
@@ -73,7 +73,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<unsigned char>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -106,7 +106,7 @@
using CType = gint16;
/// Default constructor.
- Variant<gint16>()
+ Variant()
: VariantBase()
{}
@@ -116,7 +116,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<gint16>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -149,7 +149,7 @@
using CType = guint16;
/// Default constructor.
- Variant<guint16>()
+ Variant()
: VariantBase()
{}
@@ -159,7 +159,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<guint16>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -192,7 +192,7 @@
using CType = gint32;
/// Default constructor.
- Variant<gint32>()
+ Variant()
: VariantBase()
{}
@@ -202,7 +202,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<gint32>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -241,7 +241,7 @@
using CType = guint32;
/// Default constructor.
- Variant<guint32>()
+ Variant()
: VariantBase()
{}
@@ -251,7 +251,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<guint32>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -284,7 +284,7 @@
using CType = gint64;
/// Default constructor.
- Variant<gint64>()
+ Variant()
: VariantBase()
{}
@@ -294,7 +294,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<gint64>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -327,7 +327,7 @@
using CType = guint64;
/// Default constructor.
- Variant<guint64>()
+ Variant()
: VariantBase()
{}
@@ -337,7 +337,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<guint64>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}
@@ -370,7 +370,7 @@
using CType = gdouble;
/// Default constructor.
- Variant<double>()
+ Variant()
: VariantBase()
{}
@@ -380,7 +380,7 @@
* GVariant or not (not taking one could destroy the GVariant with the
* wrapper).
*/
- explicit Variant<double>(GVariant* castitem, bool take_a_reference = false)
+ explicit Variant(GVariant* castitem, bool take_a_reference = false)
: VariantBase(castitem, take_a_reference)
{}

View File

@ -5,8 +5,8 @@
%global libsigc_version 2.9.1
Name: glibmm24
Version: 2.66.0
Release: 3%{?dist}
Version: 2.66.1
Release: 1%{?dist}
Summary: C++ interface for the GLib library
License: LGPLv2+
@ -14,9 +14,6 @@ URL: http://www.gtkmm.org/
Source0: http://ftp.gnome.org/pub/GNOME/sources/glibmm/%{release_version}/glibmm-%{version}.tar.xz
Patch0: %{name}-gcc11.patch
# Backported from upstream
# https://gitlab.gnome.org/GNOME/glibmm/-/merge_requests/50
Patch1: 0001-Variant-Fix-so-it-works-with-C-20.patch
BuildRequires: doxygen
BuildRequires: gcc-c++
@ -99,6 +96,9 @@ chmod +x $RPM_BUILD_ROOT%{_libdir}/glibmm-2.4/proc/gmmproc
%changelog
* Tue Aug 24 2021 Kalev Lember <klember@redhat.com> - 2.66.1-1
- Update to 2.66.1
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.66.0-3
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688

View File

@ -1 +1 @@
SHA512 (glibmm-2.66.0.tar.xz) = e6b38847a70d61412e7013a04fae2db1163cf746c1b8cb6bc43bd6985d66c1859ceb74dc2ca070ca88e5e4cd443325ccf8200c14fad9af47e33b5b49a0bb854f
SHA512 (glibmm-2.66.1.tar.xz) = caf57c2c9d163fff45041c33ed70d2692040d7bea44660d68e8c16a76be2609e0f857a5e16ad5220a0ec681a560c864dc86c2988a2c40741b4f29c9fe5b7d8b9