Created attachment 173568 [details] net/py-mpi4py-openmpi This package provides Python bindings for the Message Passing Interface (MPI) standard. It is implemented on top of the MPI-1/MPI-2 specification and exposes an API which grounds on the standard MPI-2 C++ bindings WWW: https://bitbucket.org/mpi4py/mpi4py/
Created attachment 173569 [details] net/py-mpi4py-mpich2
Created attachment 173570 [details] net/py-mpi4py-openmpi: portlint -AC
Created attachment 173571 [details] net/py-mpi4py-mpich2: portlint -AC
Created attachment 173572 [details] net/py-mpi4py-openmpi: poudriere testport
Created attachment 173573 [details] net/py-mpi4py-mpich2: poudriere testport
Created attachment 173574 [details] net/py-mpi4py-openmpi unnecessary depends
Created attachment 173575 [details] net/py-mpi4py-mpich2
Created attachment 173576 [details] net/py-mpi4py-openmpi: portlint -AC
Created attachment 173577 [details] net/py-mpi4py-mpich2: portlint -AC
Created attachment 173578 [details] net/py-mpi4py-openmpi: poudriere testport
Created attachment 173579 [details] net/py-mpi4py-mpich2: poudriere testport
Thank you Michael: A few initial review items: Apart from the MASTER port portlint warning, the other portlint warnings should be addressed, in particular the two FATAL's. PYSETUP in do-test should be PYDISTUTILS_SETUP I don't entirely understand why there are two separate ports (thus packages) here, given: - Upstream provides instructions to just pip install mpi4py - Ports should be named according and only to the upstream (PyPI) name unless there's a compelling case to do otherwise. - The two ports conflict If it because there are two 'versions' depending on the MPI library that is available, then the port should be: - PORTNAME=mpi4py - With multiple (two) mutually exclusive "MPI Backend" OPTIONS - With a suitable (matching upstream) OPTIONS_DEFAULT on one of them
Evening, Kubilay, I believe the FATALs in the slave port, as far as my understanding goes, originate from portlint confusing somethinig, because similar ones appear in "www/vimb-gtk3" that was accepted for commit some time ago. Would CONFLICTS_INSTALL be better than CONFLICTS? According to README.rst, the package needs cython -- in fact, it looks for MPI header files and compiles something. I have tried testing without, but configure fails. Additionally, there is no generic MPI .mk like in NetBSD so far (perhaps it still needs to pick MPI implementation globally?) and OpenMPI and MPICH2 install files in different locations (/usr/local/mpi/openmpi vs. /usr/local). With options it will be impossible to have packages using all MPI implementations in the same binary repo, and should the user need different MPI, they are left with ports?
Created attachment 174186 [details] net/py-mpi4py-openmpi
Created attachment 174187 [details] net/py-mpi4py-mpich2
Created attachment 174189 [details] net/py-mpi4py-openmpi: portlint -AC
Created attachment 174190 [details] net/py-mpi4py-mpich2: portlint -AC
Created attachment 174191 [details] net/py-mpi4py-openmpi: poudriere testport
Created attachment 174192 [details] net/py-mpi4py-mpich2: poudriere testport
Ping?
What is the progress on getting this committed? I think everything is ready now?
That's it, I'm done. I will just maintain this locally, for myself.
Take.
.
The build of net/py-mpi4py-openmpi fails: > /usr/local/bin/ld: cannot find -lvt.mpi > cc: error: linker command failed with exit code 1 (use -v to see invocation) > /usr/local/bin/ld: cannot find -lvt-mpi > cc: error: linker command failed with exit code 1 (use -v to see invocation) > /usr/local/bin/ld: cannot find -ldl > cc: error: linker command failed with exit code 1 (use -v to see invocation)
Created attachment 188153 [details] net/py-mpi4py-{openmpi2,openmpi,mpich} Hello, I have updated it a bit due to complaints from poudriere. Does the new one fail too? Are you trying to compile directly from ports or in poudriere? Greetings, Mike
Created attachment 188154 [details] net/py-mpi4py-mpich: portlint -AC
Created attachment 188155 [details] net/py-mpi4py-openmpi: portlint -AC
Created attachment 188156 [details] net/py-mpi4py-openmpi2: portlint -AC
Created attachment 188157 [details] net/py-mpi4py-mpich: poudriere testport
Created attachment 188158 [details] net/py-mpi4py-openmpi: poudriere testport
Created attachment 188160 [details] net/py-mpi4py-openmpi2: poudriere testport
Also I found out they have released version 3.0.0. Going to update.
Created attachment 188164 [details] net/py-mpi4py-{openmpi2,openmpi,mpich} 3.0.0
Created attachment 188165 [details] net/py-mpi4py-mpich: portlint -AC
Created attachment 188166 [details] net/py-mpi4py-openmpi: portlint -AC
Created attachment 188167 [details] net/py-mpi4py-openmpi2: portlint -AC
Created attachment 188168 [details] net/py-mpi4py-mpich: poudriere testport
Created attachment 188169 [details] net/py-mpi4py-openmpi: poudriere testport
Created attachment 188170 [details] net/py-mpi4py-openmpi2: poudriere testport
You don't need to include poudriere and portlint reports. Just saying that they pass is enough.
I am getting this error: > unable to execute u'/usr/local/mpi/openmpi2/bin/mpicc': No such file or directory > failure. > removing: _configtest.c _configtest.o > error: Cannot compile MPI programs. Check your configuration!!! > *** Error code 1
Sorry about the delay, I thought I had replied. Do you get this error on ports or poudriere?
(In reply to Michael Danilov from comment #43) Hm, this doesn't happen any more. Before this happened during local build,
Committed with changes as net/py-mpi4py. Thank you for your submission.
A commit references this bug: Author: yuri Date: Fri Sep 21 03:48:59 UTC 2018 New revision: 480224 URL: https://svnweb.freebsd.org/changeset/ports/480224 Log: New port: net/py-mpi4py: Python bindings for MPI PR: 211768 Submitted by: Michael Danilov <mike.d.ft402@gmail.com> Changes: head/net/Makefile head/net/py-mpi4py/ head/net/py-mpi4py/Makefile head/net/py-mpi4py/distinfo head/net/py-mpi4py/files/ head/net/py-mpi4py/files/mpi.cfg head/net/py-mpi4py/files/mpi2.cfg head/net/py-mpi4py/files/patch-setup.py head/net/py-mpi4py/pkg-descr