net-mail/pfqueue: update EAPI 7 -> 8, fix build with gcc15

Closes: https://bugs.gentoo.org/945067
Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org>
Part-of: https://github.com/gentoo/gentoo/pull/45023
Closes: https://github.com/gentoo/gentoo/pull/45023
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Alexey Sokolov
2025-12-14 11:57:36 +00:00
committed by Sam James
parent d7db65e97d
commit f5db95df6a
2 changed files with 76 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
Fix build with GCC 15
https://bugs.gentoo.org/945067
--- a/fe_ncurses.h
+++ b/fe_ncurses.h
@@ -53,6 +53,6 @@ int fe_init();
void fe_close();
const char* fe_current_id();
-void msg_show_body();
+void msg_show_body(int force_own);
#endif
--- a/libpfq/pfqlib.c
+++ b/libpfq/pfqlib.c
@@ -713,7 +713,7 @@ int pfql_start(struct pfql_context_t *ctx) {
int pfql_context_destroy(struct pfql_context_t *ctx) {
pthread_mutex_destroy ( &ctx->qfill_mutex );
- queue_fill_stop(ctx);
+ queue_fill_stop();
if (ctx->beptr) {
ctx->pfqbe_close(ctx);
--- a/pfqlib.h
+++ b/pfqlib.h
@@ -69,7 +69,7 @@ struct pfql_context_t {
int (*pfqbe_apiversion)();
int (*pfqbe_init)();
int (*pfqbe_setup)(struct msg_t*,struct be_msg_t*);
- int (*pfqbe_close)();
+ int (*pfqbe_close)(struct pfql_context_t*);
int (*pfqbe_fill_queue)();
int (*pfqbe_retr_headers)(const char*);
int (*pfqbe_retr_status)(const char*);

View File

@@ -0,0 +1,41 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="pfqueue is an ncurses console-based tool for managing Postfix queued messages"
HOMEPAGE="https://pfqueue.sourceforge.net/"
SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
BDEPEND="dev-build/libtool"
RDEPEND="sys-libs/ncurses:="
DEPEND="${RDEPEND}"
DOCS=( README ChangeLog NEWS TODO AUTHORS )
PATCHES=(
"${FILESDIR}"/${P}-tinfo.patch
"${FILESDIR}"/${PN}-0.5.6-clang16-build-fix.patch
"${FILESDIR}"/${P}-gcc15.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
econf --disable-static
}
src_install() {
default
find "${ED}" -name '*.la' -delete || die
}