aboutsummaryrefslogtreecommitdiff
path: root/graphics/py-mayavi
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2021-01-22 20:43:02 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2021-01-22 20:43:02 +0000
commit54b2066008405458a17ccfe1b95c961adfe00e21 (patch)
treec81a63178a727459b9582c7598d25aa2736a3647 /graphics/py-mayavi
parentbd88bbe42bfefae7fe8b036a3fda030b1e841f37 (diff)
downloadports-54b2066008405458a17ccfe1b95c961adfe00e21.tar.gz
ports-54b2066008405458a17ccfe1b95c961adfe00e21.zip
Re-add port: graphics/py-mayavi: Application and library for 3D visualization and plotting in Python
Notes
Notes: svn path=/head/; revision=562338
Diffstat (limited to 'graphics/py-mayavi')
-rw-r--r--graphics/py-mayavi/Makefile53
-rw-r--r--graphics/py-mayavi/distinfo3
-rw-r--r--graphics/py-mayavi/files/patch-setup.py17
-rw-r--r--graphics/py-mayavi/files/patch-tvtk_setup.py11
-rw-r--r--graphics/py-mayavi/pkg-descr17
5 files changed, 101 insertions, 0 deletions
diff --git a/graphics/py-mayavi/Makefile b/graphics/py-mayavi/Makefile
new file mode 100644
index 000000000000..8f7f9cae11c5
--- /dev/null
+++ b/graphics/py-mayavi/Makefile
@@ -0,0 +1,53 @@
+# Created by: Vladimir Chukharev
+# $FreeBSD$
+
+PORTNAME= mayavi
+DISTVERSION= 4.7.2
+CATEGORIES= graphics science python
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Application and library for 3D visualization and plotting in Python
+
+LICENSE= BSD3CLAUSE LGPL21 LGPL20 EPL LGPL3 BSD2CLAUSE APACHE11 # see ${WRKSRC}/image_LICENSE.txt
+LICENSE_COMB= multi
+LICENSE_FILE_BSD3CLAUSE= ${WRKSRC}/LICENSE.txt
+LICENSE_FILE_LGPL21= ${WRKSRC}/image_LICENSE_Nuvola.txt
+LICENSE_FILE_LGPL20= ${WRKSRC}/image_LICENSE_CP.txt
+LICENSE_FILE_EPL= ${WRKSRC}/image_LICENSE_Eclipse.txt
+LICENSE_FILE_LGPL3= ${WRKSRC}/image_LICENSE_OOo.txt
+LICENSE_FILE_BSD2CLAUSE= ${WRKSRC}/LICENSE_YORICK.txt
+LICENSE_FILE_APACHE11= ${WRKSRC}/LICENSE_COLORBREWER.txt
+
+BUILD_DEPENDS= vtk9>0:math/vtk9 \
+ ${PYNUMPY} \
+ ${PY_SPHINX}
+RUN_DEPENDS= vtk9>0:math/vtk9 \
+ ${PYNUMPY} \
+ ${PYTHON_PKGNAMEPREFIX}apptools>0:devel/py-apptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}envisage>0:devel/py-envisage@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pyface>=6.0.0:devel/py-pyface@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}traits>=4.6.0:devel/py-traits@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}traitsui>=6.0.0:graphics/py-traitsui@${PY_FLAVOR}
+
+USES= python shebangfix
+USE_PYTHON= noflavors distutils concurrent autoplist # noflavors to force python to be of the same version as in vtk9, which always has default python version
+
+USE_WX= 3.0+
+WX_COMPS= python:run
+
+SHEBANG_FILES= mayavi/tests/csv_files/csv_2_py
+
+POST_PLIST= fix-plist
+
+post-install:
+ ${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/tvtk/array_ext.so
+
+fix-plist:
+ @${REINPLACE_CMD} -e "s|${PYTHONPREFIX_SITELIBDIR:S/${PREFIX}\///}/mayavi/preferences/__pycache__$$||" ${TMPPLIST}
+ @${REINPLACE_CMD} -e "s|${PYTHONPREFIX_SITELIBDIR:S/${PREFIX}\///}/tvtk/plugins/scene/__pycache__$$||" ${TMPPLIST}
+
+.include <bsd.port.mk>
diff --git a/graphics/py-mayavi/distinfo b/graphics/py-mayavi/distinfo
new file mode 100644
index 000000000000..f78c414b471b
--- /dev/null
+++ b/graphics/py-mayavi/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1611297644
+SHA256 (mayavi-4.7.2.tar.gz) = a207290757495c0eccab7f451d75b87792481cd417498ec4d2c49eb1593cb373
+SIZE (mayavi-4.7.2.tar.gz) = 7119909
diff --git a/graphics/py-mayavi/files/patch-setup.py b/graphics/py-mayavi/files/patch-setup.py
new file mode 100644
index 000000000000..310be4df1bed
--- /dev/null
+++ b/graphics/py-mayavi/files/patch-setup.py
@@ -0,0 +1,17 @@
+--- setup.py.orig 2016-08-01 19:02:36 UTC
++++ setup.py
+@@ -403,12 +403,12 @@ def configuration(parent_package=None, t
+ config.add_data_dir('mayavi/core/lut')
+ config.add_data_dir('mayavi/tests/data')
+ config.add_data_dir('mayavi/tests/csv_files')
+- config.add_data_dir('mayavi/tools/static')
++ config.add_data_dir('mayavi/tools/static/x3d')
+
+ # Image files.
+ for pkgdir in ('mayavi', 'tvtk'):
+ for root, dirs, files in os.walk(pkgdir):
+- if split(root)[-1] == 'images':
++ if (split(root)[-1] == 'images') and files:
+ config.add_data_dir(root)
+
+ # *.ini files.
diff --git a/graphics/py-mayavi/files/patch-tvtk_setup.py b/graphics/py-mayavi/files/patch-tvtk_setup.py
new file mode 100644
index 000000000000..0be4fc50cc0c
--- /dev/null
+++ b/graphics/py-mayavi/files/patch-tvtk_setup.py
@@ -0,0 +1,11 @@
+--- tvtk/setup.py.orig 2016-08-01 19:02:36 UTC
++++ tvtk/setup.py
+@@ -20,7 +20,7 @@ def configuration(parent_package=None, t
+ config.add_subpackage('custom')
+ config.add_subpackage('pipeline')
+ config.add_data_dir('pipeline/images')
+- config.add_data_dir('pyface/images')
++# config.add_data_dir('pyface/images')
+ config.add_data_dir('tools/images')
+
+ config.add_subpackage('plugins')
diff --git a/graphics/py-mayavi/pkg-descr b/graphics/py-mayavi/pkg-descr
new file mode 100644
index 000000000000..024358a4e2c3
--- /dev/null
+++ b/graphics/py-mayavi/pkg-descr
@@ -0,0 +1,17 @@
+3D Scientific Data Visualization and Plotting.
+
+The Mayavi project includes two related packages for 3-dimensional
+visualization:
+ Mayavi: A tool for easy and interactive visualization of data, with
+ seamless integration with Python scientific libraries.
+ TVTK: A Traits-based wrapper for the Visualization Toolkit, a popular
+ open-source visualization library.
+
+These libraries operate at different levels of abstraction. TVTK
+manipulates visualization objects, while Mayavi lets you operate
+on your data, and then see the results. Most users either use the
+Mayavi user interface or program to its scripting interface; you
+probably don't need to interact with TVTK unless you want to create
+a new Mayavi module.
+
+WWW: http://code.enthought.com/pages/mayavi-project.html