summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-misc/bfr/bfr-1.6-r6.ebuild33
-rw-r--r--app-misc/bfr/files/bfr-1.6-bools.patch29
-rw-r--r--app-misc/bfr/files/bfr-1.6-musl-include.patch12
3 files changed, 74 insertions, 0 deletions
diff --git a/app-misc/bfr/bfr-1.6-r6.ebuild b/app-misc/bfr/bfr-1.6-r6.ebuild
new file mode 100644
index 000000000000..dcb4d1e2571d
--- /dev/null
+++ b/app-misc/bfr/bfr-1.6-r6.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="General-purpose command-line pipe buffer"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="http://www.glines.org/bin/pk/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
+
+BDEPEND="dev-lang/perl"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-perl.patch
+ "${FILESDIR}"/${P}-long-types.patch
+ "${FILESDIR}"/${P}-bools.patch
+ "${FILESDIR}"/${P}-musl-include.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf # uses old broken checks for compiler, bug #874519
+}
+
+src_configure() {
+ tc-export CC
+ default
+}
diff --git a/app-misc/bfr/files/bfr-1.6-bools.patch b/app-misc/bfr/files/bfr-1.6-bools.patch
new file mode 100644
index 000000000000..e1d7ed1e34ba
--- /dev/null
+++ b/app-misc/bfr/files/bfr-1.6-bools.patch
@@ -0,0 +1,29 @@
+Uses bools for enabling/disabling debug.
+Switch from self-defined to system version.
+https://bugs.gentoo.org/944302
+--- a/bfr.h
++++ b/bfr.h
+@@ -9,6 +9,7 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <stdbool.h>
+ #ifdef BUFPLAY
+ #include <sys/mman.h>
+ #endif
+@@ -17,14 +18,13 @@
+ # include "config.h"
+ #endif
+
+-typedef enum {false, true} logical;
+ typedef enum { IN, RO, BF, WO, RW } state;
+
+ #ifndef DEBUG
+ # define debug(args...)
+ #else
+ # define debug(args...) if(dodebug==true) { fprintf(stderr, ## args); }
+-logical dodebug;
++bool dodebug;
+ #endif
+ #define verbose(args...) if(verbose >= 1) { fprintf(stderr, ## args); }
+ #define vverbose(args...) if(verbose >= 2) { fprintf(stderr, ## args); }
diff --git a/app-misc/bfr/files/bfr-1.6-musl-include.patch b/app-misc/bfr/files/bfr-1.6-musl-include.patch
new file mode 100644
index 000000000000..fa56a0cc186e
--- /dev/null
+++ b/app-misc/bfr/files/bfr-1.6-musl-include.patch
@@ -0,0 +1,12 @@
+Missing include for strcmp
+https://bugs.gentoo.org/942415
+--- a/getopt.c
++++ b/getopt.c
+@@ -52,6 +52,7 @@
+ #endif
+
+ #include <stdio.h>
++#include <string.h>
+
+ /* Comment out all this code if we are using the GNU C Library, and are not
+ actually compiling the library itself. This code is part of the GNU C