1 # Created by: David Naylor <dbn@FreeBSD.org>
6 CATEGORIES= x11-toolkits python
7 MASTER_SITES= GH LOCAL/dbn/${PORTNAME}
8 PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
10 MAINTAINER= dbn@FreeBSD.org
11 COMMENT= Python NUI library for rapid application development
14 LICENSE_FILE= ${WRKSRC}/LICENSE
16 BUILD_DEPENDS= cython:lang/cython
17 LIB_DEPENDS= libmtdev.so:devel/libmtdev
18 TEST_DEPENDS= nosetests-${PYTHON_VER}:devel/py-nose
20 MAKE_ENV= KIVY_NO_CONFIG=yes KIVY_NO_FILELOG=yes USE_OPENGL_ES2=1 \
24 USES= display:test python:2.7+,concurrent uniquefiles:dirs
28 PYDISTUTILS_BUILD_TARGET= build_ext
29 PYDISTUTILS_BUILDARGS= --inplace
30 PYDISTUTILS_EGGINFO= Kivy-${PORTVERSION}-py${PYTHON_VER}.egg-info
33 OPTIONS_SET= ENCHANT OPENCV PYGAME
35 OPTIONS_GROUP= VIDEO AUDIO IMAGE CAMERA SPELLING CLIPBOARD
36 OPTIONS_MULTI= WINDOW TEXT
37 OPTIONS_MULTI_WINDOW= PYGAME X11 SDL2
38 OPTIONS_MULTI_TEXT= PIL PYGAME SDL2
39 OPTIONS_GROUP_VIDEO= GSTREAMER FFMPEG
40 OPTIONS_GROUP_AUDIO= GSTREAMER PYGAME SDL2
41 OPTIONS_GROUP_IMAGE= PIL PYGAME SDL2
42 OPTIONS_GROUP_CAMERA= OPENCV GSTREAMER
43 OPTIONS_GROUP_SPELLING= ENCHANT
44 OPTIONS_GROUP_CLIPBOARD= PYGAME
46 CAMERA_DESC= Camera support
47 CLIPBOARD_DESC= Clipboard support
48 IMAGE_DESC= Image support
49 SPELLING_DESC= Spell checking support
50 TEXT_DESC= Text rendering support (compulsory)
51 WINDOW_DESC= Window support (compulsory)
53 DOCS_BUILD_DEPENDS= sphinx-build:textproc/py-sphinx
54 ENCHANT_DESC= Spell checking support via Enchant
55 ENCHANT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}enchant>=0:textproc/py-enchant
56 FFMPEG_RUN_DEPENDS= ${PYTHON_SITELIBDIR}/ffmpeg/__init__.py:multimedia/py-ffmpeg
57 GSTREAMER_MAKE_ENV= USE_GSTREAMER=1
58 GSTREAMER_MAKE_ENV_OFF= USE_GSTREAMER=0
59 GSTREAMER_LIB_DEPENDS= libgstreamer-1.0.so:multimedia/gstreamer1
60 GSTREAMER_RUN_DEPENDS= ${PYTHON_SITELIBDIR}/pygst.py:multimedia/py-gstreamer
61 GSTREAMER_USES= pkgconfig
62 OPENCV_RUN_DEPENDS= ${PYTHON_SITELIBDIR}/cv.py:graphics/py-opencv
63 PIL_DESC= Text and window rendering support via Pillow
64 PIL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pillow>0:graphics/py-pillow
65 PYGAME_DESC= Window, text and image rendering support via PyGame
66 PYGAME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}game>0:devel/py-game
67 PYGLET_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyglet>0:graphics/py-pyglet
68 SDL2_DESC= Simple Direct Media Layer v2.0 support
69 SDL2_MAKE_ENV= USE_SDL2=1
70 SDL2_MAKE_ENV_OFF= USE_SDL2=0
71 SDL2_USE= SDL=sdl2,mixer2,image2,ttf2
73 X11_MAKE_ENV= USE_X11=1
74 X11_MAKE_ENV_OFF= USE_X11=0
82 OPTIONS_GROUP_VIDEO+= PYGLET
86 ${MKDIR} ${WRKSRC}/doc/build/doctrees ${WRKSRC}/doc/build/html
88 ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} doc/autobuild.py)
90 ${SETENV} ${MAKE_ENV} sphinx-build -b html \
91 -d ${WRKSRC}/doc/build/doctrees \
92 doc/sources ${WRKSRC}/doc/build/html)
96 ${SETENV} ${MAKE_ENV} nosetests-${PYTHON_VER} ${KIVYPATH}/kivy/tests)
99 ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/kivy -name '*.so' | ${XARGS} ${STRIP_CMD}
101 post-install-DOCS-on:
102 @${MKDIR} ${STAGEDIR}${DOCSDIR}
103 (cd ${WRKSRC}/doc/build/html; ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR})
105 post-install-PDF-on: post-install-DOCS-on
106 ${INSTALL_DATA} ${WRKSRC}/doc/build/latex-a4/Kivy.pdf \
107 ${STAGEDIR}${DOCSDIR}/Kivy-a4.pdf
108 ${INSTALL_DATA} ${WRKSRC}/doc/build/latex-letter/Kivy.pdf \
109 ${STAGEDIR}${DOCSDIR}/Kivy-letter.pdf
111 .include <bsd.port.mk>