commit:     e0ee3cac9c0b0877408500d99f349cc88242c579
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan  5 01:25:18 2026 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jan  5 01:25:18 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0ee3cac

dev-libs/gmime: fix buggy headers

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/gmime/files/gmime-3.2.15-headers.patch | 75 ++++++++++++++++++++++
 dev-libs/gmime/gmime-3.2.15-r2.ebuild           | 83 +++++++++++++++++++++++++
 2 files changed, 158 insertions(+)

diff --git a/dev-libs/gmime/files/gmime-3.2.15-headers.patch 
b/dev-libs/gmime/files/gmime-3.2.15-headers.patch
new file mode 100644
index 000000000000..9673fdcf9db6
--- /dev/null
+++ b/dev-libs/gmime/files/gmime-3.2.15-headers.patch
@@ -0,0 +1,75 @@
+https://github.com/jstedfast/gmime/commit/2413846d8d3447b711192687c8087ae10d04a7b5
+https://github.com/jstedfast/gmime/commit/df535cd503aaa3f590aac36a3462576a1c9ec320
+https://github.com/jstedfast/gmime/commit/5bccdea2a2f8e7188f14a12a5e9bae42c898aebc
+
+From 2413846d8d3447b711192687c8087ae10d04a7b5 Mon Sep 17 00:00:00 2001
+From: Jeffrey Stedfast <[email protected]>
+Date: Thu, 18 Sep 2025 15:00:55 -0400
+Subject: [PATCH] Fix macro definition for GMIME_TYPE_PARSER_OPTIONS
+
+Fixes issue #178
+---
+ gmime/gmime-parser-options.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gmime/gmime-parser-options.h b/gmime/gmime-parser-options.h
+index b26160cf..9a84416b 100644
+--- a/gmime/gmime-parser-options.h
++++ b/gmime/gmime-parser-options.h
+@@ -27,7 +27,7 @@
+ 
+ G_BEGIN_DECLS
+ 
+-#define GMIME_TYPE_PARSER_OPTIONS (gmime_parser_options_get_type ())
++#define GMIME_TYPE_PARSER_OPTIONS (g_mime_parser_options_get_type ())
+ 
+ /**
+  * GMimeRfcComplianceMode:
+
+From df535cd503aaa3f590aac36a3462576a1c9ec320 Mon Sep 17 00:00:00 2001
+From: Jeffrey Stedfast <[email protected]>
+Date: Sat, 20 Sep 2025 15:50:36 -0400
+Subject: [PATCH] Fix macro definition for GMIME_TYPE_FORMAT_OPTIONS
+
+Fixes issue #179
+---
+ gmime/gmime-format-options.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gmime/gmime-format-options.h b/gmime/gmime-format-options.h
+index d21eb149..b9288fad 100644
+--- a/gmime/gmime-format-options.h
++++ b/gmime/gmime-format-options.h
+@@ -26,7 +26,7 @@
+ 
+ G_BEGIN_DECLS
+ 
+-#define GMIME_TYPE_FORMAT_OPTIONS (gmime_format_options_get_type ())
++#define GMIME_TYPE_FORMAT_OPTIONS (g_mime_format_options_get_type ())
+ 
+ /**
+  * GMimeNewLineFormat:
+
+From 5bccdea2a2f8e7188f14a12a5e9bae42c898aebc Mon Sep 17 00:00:00 2001
+From: Jeffrey Stedfast <[email protected]>
+Date: Sat, 20 Sep 2025 15:51:45 -0400
+Subject: [PATCH] Fix macro definition for GMIME_TYPE_REFERENCES
+
+Fixes issue #179
+---
+ gmime/gmime-references.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gmime/gmime-references.h b/gmime/gmime-references.h
+index 0f789ce9..2ebfc8f4 100644
+--- a/gmime/gmime-references.h
++++ b/gmime/gmime-references.h
+@@ -26,7 +26,7 @@
+ 
+ G_BEGIN_DECLS
+ 
+-#define GMIME_TYPE_REFERENCES (gmime_references_get_type ())
++#define GMIME_TYPE_REFERENCES (g_mime_references_get_type ())
+ 
+ typedef struct _GMimeReferences GMimeReferences;
+ 

diff --git a/dev-libs/gmime/gmime-3.2.15-r2.ebuild 
b/dev-libs/gmime/gmime-3.2.15-r2.ebuild
new file mode 100644
index 000000000000..1655d97c1fb8
--- /dev/null
+++ b/dev-libs/gmime/gmime-3.2.15-r2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic gnome2 vala
+
+DESCRIPTION="Library for creating and parsing MIME messages"
+HOMEPAGE="https://github.com/jstedfast/gmime 
https://spruce.sourceforge.net/gmime/";
+SRC_URI="https://github.com/jstedfast/${PN}/releases/download/${PV}/${P}.tar.xz";
+
+LICENSE="LGPL-2.1+"
+SLOT="3.0"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 
~x64-macos ~x64-solaris"
+IUSE="crypt doc idn test +vala"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       >=dev-libs/glib-2.68.0:2
+       virtual/zlib:=
+       crypt? ( >=app-crypt/gpgme-1.8.0:= )
+       idn? ( net-dns/libidn2:= )
+       vala? (
+               $(vala_depend)
+               >=dev-libs/gobject-introspection-1.82.0-r2:=
+       )
+"
+DEPEND="${RDEPEND}
+       virtual/libiconv
+"
+BDEPEND="
+       >=dev-build/gtk-doc-am-1.8
+       virtual/pkgconfig
+       doc? ( app-text/docbook-sgml-utils )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-32-bit.patch
+       "${FILESDIR}"/${P}-warning.patch
+       "${FILESDIR}"/${P}-ub-fix.patch
+       "${FILESDIR}"/${P}-headers.patch
+)
+
+src_prepare() {
+       gnome2_src_prepare
+       use vala && vala_setup
+}
+
+src_configure() {
+       if [[ ${CHOST} == *-solaris* ]]; then
+               # bug #???, why not use --with-libiconv
+               append-libs iconv
+       fi
+
+       gnome2_src_configure \
+               --enable-largefile \
+               $(use_enable crypt crypto) \
+               $(use_enable vala) \
+               $(use_with idn libidn) \
+               $(usex doc "" DB2HTML=)
+}
+
+src_compile() {
+       gnome2_src_compile
+       if use doc; then
+               emake -C docs/tutorial html
+       fi
+}
+
+src_test() {
+       # -j1: https://github.com/jstedfast/gmime/issues/177
+       emake -j1 check
+}
+
+src_install() {
+       gnome2_src_install
+
+       if use doc ; then
+               docinto tutorial
+               dodoc -r docs/tutorial/html/
+       fi
+}

Reply via email to