commit:     31a1c5ab6e93476aa0aed9e034df924d30c748e7
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Tue Oct  7 04:07:33 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Oct  8 05:50:08 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31a1c5ab

app-text/fbpdf: add 0_p20250124

update EAPI 7 -> 8

useflags :
add alternative support for rendering PDF w/ poppler
add djvu

update blocker to fix collision with meda-gfx/fbida since
useflags was reworked with media-gfx/fbida-2.14_p20241216{,-r1}

add manpage

Bug: https://bugs.gentoo.org/963841
Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/44078
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-text/fbpdf/Manifest                            |  1 +
 app-text/fbpdf/fbpdf-0_p20250124.ebuild            | 61 ++++++++++++++++++++++
 .../files/fbpdf-0_p20250124-use-pkg-config.patch   | 32 ++++++++++++
 app-text/fbpdf/metadata.xml                        |  3 ++
 4 files changed, 97 insertions(+)

diff --git a/app-text/fbpdf/Manifest b/app-text/fbpdf/Manifest
index ab7e2ce1d18b..c4add3e3e2b5 100644
--- a/app-text/fbpdf/Manifest
+++ b/app-text/fbpdf/Manifest
@@ -1 +1,2 @@
 DIST fbpdf-0_p20200614-27c9e28e9199a2491d0ee0a885760bedb1d4547b.tar.gz 8432 
BLAKE2B 
0004f8558b86c349744a37099ef86963d368ee9dedeefca861761f88adc3c94a3db9f46c9e1a6f6026357512a8320b956cd7c48108aa6c6657b84193fd5d4b49
 SHA512 
e037cd536e3a26b6d2364eb52803de67606bac418db8691c7530a889c95dd1f8661985021237ce7fea95f56ab5a308caf8d470c6c036b51b17211f9c200aba51
+DIST fbpdf-0_p20250124-6a0d77f06f6f03085a5b786d1feb8a041318b30a.tar.gz 8987 
BLAKE2B 
84b702cee1717aead5fc74f5b780113464f0c9dc7e295fa2b2e1a0506eb81277163f41374d4794390ff4ab2daf84d2ee0f6d381d2421d5284f12e72189de4242
 SHA512 
993847de2dbf874fd7d4c37bd2ba320de9d9f2977cb770a83ffb82d7b5b602f6ac1e1b4ffb5a90573df2d4eeb4c2bcbbd93a79100e5af934f296cedfe158a378

diff --git a/app-text/fbpdf/fbpdf-0_p20250124.ebuild 
b/app-text/fbpdf/fbpdf-0_p20250124.ebuild
new file mode 100644
index 000000000000..fb930525fea6
--- /dev/null
+++ b/app-text/fbpdf/fbpdf-0_p20250124.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+COMMIT_HASH="6a0d77f06f6f03085a5b786d1feb8a041318b30a"
+DESCRIPTION="Framebuffer pdf and djvu viewer"
+HOMEPAGE="https://github.com/aligrudi/fbpdf";
+SRC_URI="https://github.com/aligrudi/fbpdf/archive/${COMMIT_HASH}.tar.gz -> 
${P}-${COMMIT_HASH}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT_HASH}"
+
+LICENSE="BSD ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="djvu poppler"
+
+RDEPEND="
+       djvu? ( app-text/djvu )
+       !poppler? ( app-text/mupdf:= )
+       poppler? ( app-text/poppler:=[cxx] )
+       !>=media-gfx/fbida-2.14_p20241216[pdf]
+       !<media-gfx/fbida-2.14_p20241216[fbcon]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0_p20250124-use-pkg-config.patch
+)
+
+src_compile() {
+       local targets=(
+               $(usev djvu fbdjvu)
+               $(usex poppler fbpdf2 fbpdf)
+       )
+       local myemakeargs=(
+               CC="$(tc-getCC)"
+               CXX="$(tc-getCXX)"
+               CFLAGS="${CFLAGS}"
+               CXXFLAGS="${CXXFLAGS}"
+               LDFLAGS="${LDFLAGS}"
+               PKG_CONFIG="$(tc-getPKG_CONFIG)"
+       )
+       emake "${myemakeargs[@]}" "${targets[@]}"
+}
+
+src_install() {
+       use djvu && dobin fbdjvu
+
+       if use poppler; then
+               dobin fbpdf2
+               dosym fbpdf2 /usr/bin/fbpdf
+       else
+               dobin fbpdf
+       fi
+
+       dodoc README
+       doman fbpdf.1
+}

diff --git a/app-text/fbpdf/files/fbpdf-0_p20250124-use-pkg-config.patch 
b/app-text/fbpdf/files/fbpdf-0_p20250124-use-pkg-config.patch
new file mode 100644
index 000000000000..bc8a3ed62fb9
--- /dev/null
+++ b/app-text/fbpdf/files/fbpdf-0_p20250124-use-pkg-config.patch
@@ -0,0 +1,32 @@
+remove hardcoded pkg-config
+use pkg-config for mupdf and libjpeg
+use CXXFLAGS for poppler-cpp
+--- a/Makefile
++++ b/Makefile
+@@ -2,6 +2,7 @@ PREFIX = .
+ CC = cc
+ CFLAGS = -Wall -O2 -I$(PREFIX)/include
+ LDFLAGS = -L$(PREFIX)/lib
++PKG_CONFIG ?= pkg-config
+ 
+ all: fbpdf
+ 
+@@ -12,14 +13,14 @@ clean:
+ 
+ # PDF support using mupdf
+ fbpdf: fbpdf.o mupdf.o draw.o
+-      $(CC) -o $@ $^ $(LDFLAGS) -lmupdf -lmupdf-third -lmupdf-pkcs7 
-lmupdf-threads -lm
++      $(CC) -o $@ $^ $(LDFLAGS) $(shell $(PKG_CONFIG) --libs mupdf) -lm
+ 
+ # DjVu support
+ fbdjvu: fbpdf.o djvulibre.o draw.o
+-      $(CXX) -o $@ $^ $(LDFLAGS) -ldjvulibre -ljpeg -lm -lpthread
++      $(CXX) -o $@ $^ $(LDFLAGS) $(shell $(PKG_CONFIG) --libs ddjvuapi 
libjpeg) -lm -lpthread
+ 
+ # PDF support using poppler
+ poppler.o: poppler.c
+-      $(CXX) -c $(CFLAGS) `pkg-config --cflags poppler-cpp` $<
++      $(CXX) -c $(CXXFLAGS) $(shell $(PKG_CONFIG) --cflags poppler-cpp) $<
+ fbpdf2: fbpdf.o poppler.o draw.o
+-      $(CXX) -o $@ $^ $(LDFLAGS) `pkg-config --libs poppler-cpp`
++      $(CXX) -o $@ $^ $(LDFLAGS) $(shell $(PKG_CONFIG) --libs poppler-cpp)

diff --git a/app-text/fbpdf/metadata.xml b/app-text/fbpdf/metadata.xml
index 61d3aa230a8b..19b4b2020f1e 100644
--- a/app-text/fbpdf/metadata.xml
+++ b/app-text/fbpdf/metadata.xml
@@ -5,4 +5,7 @@
        <upstream>
                <remote-id type="github">aligrudi/fbpdf</remote-id>
        </upstream>
+       <use>
+               <flag name="poppler">Use <pkg>app-text/poppler</pkg> instead of 
<pkg>app-text/mupdf</pkg> for rendering PDF files</flag>
+       </use>
 </pkgmetadata>

Reply via email to