diff options
Diffstat (limited to 'dev-cpp/glibmm')
-rw-r--r-- | dev-cpp/glibmm/Manifest | 3 | ||||
-rw-r--r-- | dev-cpp/glibmm/files/glibmm-2.78.1-libcxx-fix.patch | 52 | ||||
-rw-r--r-- | dev-cpp/glibmm/glibmm-2.78.1.ebuild | 2 |
3 files changed, 56 insertions, 1 deletions
diff --git a/dev-cpp/glibmm/Manifest b/dev-cpp/glibmm/Manifest index 89b882e17f2b..2a54914e6bef 100644 --- a/dev-cpp/glibmm/Manifest +++ b/dev-cpp/glibmm/Manifest @@ -1,5 +1,6 @@ +AUX glibmm-2.78.1-libcxx-fix.patch 2218 BLAKE2B 268f8a846e9921b7d282a41821655dc702f84cff799d68eb591ffd4c9212f5ffccc35bbc73a578286bd47713f1adbdb0a57a705a298b10ece484b0e6bafea478 SHA512 93aaf98ab8b6dd7144c7d6890e8cdea0e897384e58a28e13855b086e07910ab4b5e2c662196ec4819758d432d28b1fce0547f26ad1a900bfa2fa6dc350b8eff4 DIST glibmm-2.66.7.tar.xz 8773780 BLAKE2B faef7b6a9ca91aed3ac7ddeddc0413f87daba4b8d1e887431bd7db8b7cae66ec449292bbb0fb9e4e574d1ce680853ab0ffb476abd76c19257c7434389ba3d2cc SHA512 09b99622c051afd264d7a9b23025ee28ec870c6d23a5084ef7192f67b96fb8f16be5dbb2e8a4ff8a1d4ff873d3e73b4e25dee122049266687f471dcd3989b5bb DIST glibmm-2.78.1.tar.xz 9486784 BLAKE2B 2875d93b0cedb6bf84cb463b1c73743c55dc446ee0c1dce36344a8e0ff77cec8d890d1e3b0f1d4a841d293ab123cc60bf5c6b55ed9a0456fe235d928bf28ff05 SHA512 5ace15c492be553e2c6abd8d0699197239261feaa2b45ff77181f59bb98b584dc822bdd46dbdee35691cc5a955a3b88e03f58532459236fd780823354c35d0a6 EBUILD glibmm-2.66.7.ebuild 1281 BLAKE2B 15a7f265fd0ea3ff6894b7eb6a00fc029fb5ae9f3419860473027ed6dfa1986ad39f376912ae84d5423fcc1061ab1cb67dae9d89a5f14b0b690915330c42dbfb SHA512 97d0dc69016368d65c436a38b28a8e9b5f405060fc5a49036e3870a6fb88cfef6269110398b09b1640e978417ec9384f2b407c54e75836459b24825e958da6e2 -EBUILD glibmm-2.78.1.ebuild 1242 BLAKE2B 2467b61c128028662d8bbd8cb6157557c3f37509f3c0a4c79beeff55cda87d287dbde54ea457d1a0c823fc136a52be26efff730cc3e69d102bc93570196074b1 SHA512 e5ea928840227fe71382613a0df8ed1d6d75e167bccad30a29c969404537b79263bfc2b8b65c5a2f367908400c7a20c6f2b542d99dae34b3d2aa1cea2f5420c7 +EBUILD glibmm-2.78.1.ebuild 1291 BLAKE2B 0650364c5b2eb66648c10745e2b95abd21b1113091e231743a35b587e2c378a830f727d1bbd2a1ba68ae79a1229faec171de53727e9f2ccc86a67004c16cfb33 SHA512 97db40dcc45a122e901324c7dd22e56a96a587b7bc60615e751753c4ab99d7ed310acbe5c51ccd4d00432ad17bf776c5edbb00a2ae3d29d5538feceaa248f4e3 MISC metadata.xml 347 BLAKE2B 0f49cb5cb997a9eaaf002de24fc194635c44b9ec75b7ca00dfb7157d6d65750dcdea3ae269fab353e06f80ee3cfd5a316e9ac909e90bbfb348b024ae66f460ce SHA512 6a9c01425d4df29d240bcc8ce91ce042f80ae8bddf78776bc1180beea36ad7657cf3337e7c2cdb0b560f3e146ab20a2ecf9d631f87004421cbfbd8d0dee2d558 diff --git a/dev-cpp/glibmm/files/glibmm-2.78.1-libcxx-fix.patch b/dev-cpp/glibmm/files/glibmm-2.78.1-libcxx-fix.patch new file mode 100644 index 000000000000..0b7cc7ee28d4 --- /dev/null +++ b/dev-cpp/glibmm/files/glibmm-2.78.1-libcxx-fix.patch @@ -0,0 +1,52 @@ +# This patch is fetched from the upstream and dedicated to making compiling with clang-19 possible +# Bug related https://bugs.gentoo.org/945375 +# The patch is added by Denis Pronin <dannftk@yandex.ru> + +From 72c5ad98d858fa4fc0183a5ec1a61bb48ef5bd95 Mon Sep 17 00:00:00 2001 +From: Kjell Ahlstedt <kjellahlstedt@gmail.com> +Date: Fri, 22 Mar 2024 10:32:45 +0100 +Subject: [PATCH] Gio::content_type_guess(): Remove most of an unneccesary + overload + +clang 19.0.0 does not like the overload that takes a +const std::basic_string<guchar>&. This overload should have been removed +16 years ago by commit 84135b93a20e6c9fe652849959d3ff90474c99bb. +It can't be removed completely now, because that would break ABI. +Remove as much as possible. +Fixes #118 +--- + gio/giomm/contenttype.cc | 15 +++++++++------ + 1 file changed, 9 insertions(+), 6 deletions(-) + +diff --git a/gio/giomm/contenttype.cc b/gio/giomm/contenttype.cc +index abe67337..8eb1bd71 100644 +--- a/gio/giomm/contenttype.cc ++++ b/gio/giomm/contenttype.cc +@@ -84,15 +84,18 @@ content_type_from_mime_type(const Glib::ustring& mime_type) + g_content_type_from_mime_type(mime_type.c_str())); + } + ++//TODO: When we can break ABI, remove this content_type_guess() overload. ++// Commit https://gitlab.gnome.org/GNOME/glibmm/-/commit/84135b93a20e6c9fe652849959d3ff90474c99bb ++// removed it from contenttype.h, but not from contenttype.cc. ++// For the time being, it's replaced by a function that does almost nothing. ++// clang 19.0.0 does not like a complete version. ++// See issue https://gitlab.gnome.org/GNOME/glibmm/-/issues/118 + Glib::ustring + content_type_guess( +- const std::string& filename, const std::basic_string<guchar>& data, bool& result_uncertain) ++ const std::string& /*filename*/, const std::basic_string<guchar>& /*data*/, bool& result_uncertain) + { +- gboolean c_result_uncertain = FALSE; +- const gchar* c_filename = filename.empty() ? nullptr : filename.c_str(); +- gchar* cresult = g_content_type_guess(c_filename, data.c_str(), data.size(), &c_result_uncertain); +- result_uncertain = c_result_uncertain; +- return Glib::convert_return_gchar_ptr_to_ustring(cresult); ++ result_uncertain = true; ++ return Glib::ustring(); + } + + Glib::ustring +-- +2.45.2 + diff --git a/dev-cpp/glibmm/glibmm-2.78.1.ebuild b/dev-cpp/glibmm/glibmm-2.78.1.ebuild index a8e3d22a6aa2..b5b3c5c985a0 100644 --- a/dev-cpp/glibmm/glibmm-2.78.1.ebuild +++ b/dev-cpp/glibmm/glibmm-2.78.1.ebuild @@ -29,6 +29,8 @@ BDEPEND=" ) " +PATCHES=( "${FILESDIR}"/${P}-libcxx-fix.patch ) + src_prepare() { default |