103146dda2
Backport a workaround for JPEG encoding issues with Ghostscript 10.6.0. There's already release 16.12.0, but it requires py-pikepdf 10.0.1 as a minimum which isn't present in the ports tree, yet. Changelog: https://github.com/ocrmypdf/OCRmyPDF/blob/v16.11.1/docs/release_notes.md MFH: 2025Q4
65 lines
2.7 KiB
Makefile
65 lines
2.7 KiB
Makefile
PORTNAME= ocrmypdf
|
|
DISTVERSION= 16.11.1
|
|
CATEGORIES= textproc python
|
|
MASTER_SITES= PYPI
|
|
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
|
|
|
MAINTAINER= kai@FreeBSD.org
|
|
COMMENT= Adds an OCR text layer to scanned PDF files
|
|
WWW= https://github.com/ocrmypdf/OCRmyPDF
|
|
|
|
LICENSE= MPL20
|
|
LICENSE_FILE= ${WRKSRC}/LICENSE
|
|
|
|
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}hatch-vcs>0:devel/py-hatch-vcs@${PY_FLAVOR}
|
|
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}deprecation>=2.1.0:devel/py-deprecation@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}img2pdf>=0.5:graphics/py-img2pdf@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}packaging>=20:devel/py-packaging@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}pillow>=10.0.1:graphics/py-pillow@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}pillow-heif>0:graphics/py-pillow-heif@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}rich>=13:textproc/py-rich@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}pdfminer.six>=20220319:textproc/py-pdfminer.six@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}pikepdf>=8.10.1:textproc/py-pikepdf@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}pluggy>=1:devel/py-pluggy@${PY_FLAVOR} \
|
|
tesseract:graphics/tesseract
|
|
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hypothesis>=6.36.0:devel/py-hypothesis@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}pytest-xdist>=2.5.0:devel/py-pytest-xdist@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}python-xmp-toolkit>=2.0.1:textproc/py-python-xmp-toolkit@${PY_FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}reportlab>=3.6.8:print/py-reportlab@${PY_FLAVOR}
|
|
|
|
USES= ghostscript:run python shebangfix
|
|
USE_PYTHON= autoplist concurrent pep517 pytest
|
|
# Skip some checks as they yield wrong results if run with the root account
|
|
# "test_watcher" requires additional deps used by the "watcher" feature
|
|
PYTEST_IGNORED_TESTS= test_chmod \
|
|
test_input_file_not_readable \
|
|
test_watcher
|
|
|
|
SHEBANG_FILES= src/ocrmypdf/__main__.py \
|
|
src/ocrmypdf/pdfinfo/__init__.py
|
|
|
|
TEST_ARGS= -n ${MAKE_JOBS_NUMBER}
|
|
TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
|
|
|
|
NO_ARCH= yes
|
|
|
|
PLIST_FILES= etc/bash_completion.d/ocrmypdf.bash share/fish/vendor_completions.d/ocrmypdf.fish
|
|
|
|
OPTIONS_DEFINE= PNGQUANT UNPAPER
|
|
OPTIONS_DEFAULT=PNGQUANT UNPAPER
|
|
|
|
PNGQUANT_DESC= Optimizes the encoding of PNG-style images in PDFs
|
|
UNPAPER_DESC= Deskew and clean up pages before OCR processing
|
|
|
|
PNGQUANT_RUN_DEPENDS= pngquant:graphics/pngquant
|
|
UNPAPER_RUN_DEPENDS= unpaper:graphics/unpaper
|
|
|
|
post-install:
|
|
# Install shell completion files
|
|
@${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d ${STAGEDIR}${PREFIX}/share/fish/vendor_completions.d/
|
|
${INSTALL_DATA} ${WRKSRC}/misc/completion/ocrmypdf.bash ${STAGEDIR}${PREFIX}/etc/bash_completion.d/
|
|
${INSTALL_DATA} ${WRKSRC}/misc/completion/ocrmypdf.fish ${STAGEDIR}${PREFIX}/share/fish/vendor_completions.d/
|
|
|
|
.include <bsd.port.mk>
|