Rene Ladan 3d9a815d9c all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.

Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.

finance/quickfix: mark BROKEN with PYTHON

libtool: compile:  c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++ -DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable -Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi -Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings -Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x -MT _quickfix_la-QuickfixPython.lo -MD -MP -MF .deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp  -fPIC -DPIC -o .libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
          ^~~~~~~~~~
1 warning and 1 error generated.

Reviewed by:	portmgr, vishwin, yuri
Differential Revision:	<https://reviews.freebsd.org/D40568>
2023-06-27 21:34:34 +02:00

50 lines
1.7 KiB
Makefile

PORTNAME= pytesseract
PORTVERSION= 0.3.10
DISTVERSIONPREFIX= v
CATEGORIES= graphics python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= mandree@FreeBSD.org
COMMENT= wrapper for Google's Tesseract OCR engine
WWW= https://github.com/madmaze/pytesseract
PATCH_STRIP= -p1
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= tesseract:graphics/tesseract \
${PYTHON_PKGNAMEPREFIX}pillow>0:graphics/py-pillow@${PY_FLAVOR}
TEST_DEPENDS= ${RUN_DEPENDS} \
${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}tox>0:devel/py-tox@${PY_FLAVOR}
# if py-tox cannot detect py-filelock, be sure to have version 3.4.2_1 of the latter
USES= localbase python
USE_GITHUB= yes
GH_ACCOUNT= madmaze
USE_PYTHON= autoplist concurrent distutils
NO_ARCH= yes
do-test:
# FIXME hack alert. graphics/leptonica by default does not include
# jpeg2000 (openjpeg) support, and the pytesseract self-test is not
# smart enough to detect that and skip the test, so let us check
# and punch out the jpeg2000 test if it is pointless running it.
# https://github.com/madmaze/pytesseract/issues/419
@if ${READELF} -d ${LOCALBASE}/lib/liblept.so | ${EGREP} -q '\<NEEDED\>.+\<libopenjp2\.so\.[[:digit:]]' ; then : ; else \
if [ $$? -ne 1 ] ; then exit 1 ; fi ; \
${ECHO_MSG} >&2 '===> liblept.so (graphics/leptonica) is linked without libopenjp2, disabling JPEG2000 test' ; \
${REINPLACE_CMD} '/jpeg2000/d' ${WRKSRC}/tests/pytesseract_test.py ; \
fi
cd ${WRKSRC} && ${SETENV} ${TEST_ENV} tox-${PYTHON_VER} -e ${PY_FLAVOR} --sitepackages
.include <bsd.port.pre.mk>
.if ${PYTHON_REL} >= 30800
TEST_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}pandas>0:math/py-pandas@${PY_FLAVOR}
.endif
.include <bsd.port.post.mk>