-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update from Hackage at 2020-03-27T18:42:28Z
- Loading branch information
1 parent
18b048a
commit e0bc864
Showing
2 changed files
with
392 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,391 @@ | ||
cabal-version: 1.12 | ||
|
||
-- This file has been generated from package.yaml by hpack version 0.31.2. | ||
-- | ||
-- see: https://github.com/sol/hpack | ||
-- | ||
-- hash: 538426701e8b2b17467e84727926d3787dccae19f2208fab5e05afde41654712 | ||
|
||
name: mpi-hs | ||
version: 0.7.0.0 | ||
synopsis: MPI bindings for Haskell | ||
description: MPI (the [Message Passinag Interface](https://www.mpi-forum.org)) is | ||
a widely used standard for distributed-memory programming on HPC | ||
(High Performance Computing) systems. MPI allows exchanging data | ||
(_messages_) between programs running in parallel. There are several | ||
high-quality open source MPI implementations (e.g. MPICH, MVAPICH, | ||
OpenMPI) as well as a variety of closed-source implementations. | ||
These libraries can typically make use of high-bandwidth low-latency | ||
communication hardware such as InfiniBand. | ||
. | ||
This library @mpi-hs@ provides Haskell bindings for MPI. It is based | ||
on ideas taken from | ||
[haskell-mpi](https://github.com/bjpop/haskell-mpi), | ||
[Boost.MPI](https://www.boost.org/doc/libs/1_64_0/doc/html/mpi.html) | ||
for C++, and [MPI for | ||
Python](https://mpi4py.readthedocs.io/en/stable/). | ||
. | ||
@mpi-hs@ provides two API levels: A low-level API gives rather | ||
direct access to the actual MPI API, apart from certain "reasonable" | ||
mappings from C to Haskell (e.g. output arguments that are in C | ||
stored via a pointer are in Haskell regular return values). A | ||
high-level API simplifies exchanging arbitrary values that can be | ||
serialized. | ||
. | ||
Note that the automated builds on | ||
[Hackage](http://hackage.haskell.org) will currently always fail | ||
since no system MPI library is present there. However, builds on | ||
[Stackage](https://www.stackage.org) should succeed -- if not, there | ||
is an error in this package. | ||
category: Distributed Computing | ||
homepage: https://github.com/eschnett/mpi-hs#readme | ||
bug-reports: https://github.com/eschnett/mpi-hs/issues | ||
author: Erik Schnetter <schnetter@gmail.com> | ||
maintainer: Erik Schnetter <schnetter@gmail.com> | ||
copyright: 2018, 2019, 2020 Erik Schnetter <schnetter@gmail.com> | ||
license: Apache-2.0 | ||
license-file: LICENSE | ||
build-type: Simple | ||
extra-source-files: | ||
LICENSE | ||
README.md | ||
package.yaml | ||
stack.yaml | ||
stack.yaml.lock | ||
c/include/mpihs.h | ||
c/src/mpihs.c | ||
|
||
source-repository head | ||
type: git | ||
location: https://github.com/eschnett/mpi-hs | ||
|
||
flag mpich-macports | ||
description: Use MPICH on MacPorts | ||
manual: True | ||
default: False | ||
|
||
flag mpich-ubuntu | ||
description: Use MPICH on Ubuntu | ||
manual: True | ||
default: False | ||
|
||
flag openmpi-debian | ||
description: Use OpenMPI on Debian | ||
manual: True | ||
default: False | ||
|
||
flag openmpi-macports | ||
description: Use OpenMPI on MacPorts | ||
manual: True | ||
default: False | ||
|
||
flag openmpi-ubuntu | ||
description: Use OpenMPI on Ubuntu | ||
manual: True | ||
default: False | ||
|
||
library | ||
exposed-modules: | ||
Control.Distributed.MPI | ||
Control.Distributed.MPI.Storable | ||
other-modules: | ||
Paths_mpi_hs | ||
hs-source-dirs: | ||
lib | ||
ghc-options: -Wall | ||
include-dirs: | ||
c/include | ||
c-sources: | ||
c/src/mpihs.c | ||
build-tools: | ||
c2hs | ||
build-depends: | ||
base >=4 && <5 | ||
, bytestring | ||
, monad-loops | ||
if flag(openmpi-debian) | ||
include-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-macports) | ||
include-dirs: | ||
/opt/local/include/openmpi-mp | ||
extra-lib-dirs: | ||
/opt/local/lib/openmpi-mp | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-ubuntu) | ||
include-dirs: | ||
/usr/lib/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-macports) | ||
include-dirs: | ||
/opt/local/include/mpich-gcc9 | ||
extra-lib-dirs: | ||
/opt/local/lib/mpich-gcc9 | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-ubuntu) | ||
include-dirs: | ||
/usr/lib/mpich/include | ||
/usr/include/x86_64-linux-gnu/mpich | ||
extra-lib-dirs: | ||
/usr/lib/mpich/lib | ||
/usr/lib/x86_64-linux-gnu | ||
extra-libraries: | ||
mpich | ||
default-language: Haskell2010 | ||
|
||
executable example1 | ||
main-is: example1.hs | ||
other-modules: | ||
Paths_mpi_hs | ||
hs-source-dirs: | ||
src | ||
ghc-options: -Wall -rtsopts -threaded -with-rtsopts=-N | ||
build-depends: | ||
base | ||
, mpi-hs | ||
if flag(openmpi-debian) | ||
include-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-macports) | ||
include-dirs: | ||
/opt/local/include/openmpi-mp | ||
extra-lib-dirs: | ||
/opt/local/lib/openmpi-mp | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-ubuntu) | ||
include-dirs: | ||
/usr/lib/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-macports) | ||
include-dirs: | ||
/opt/local/include/mpich-gcc9 | ||
extra-lib-dirs: | ||
/opt/local/lib/mpich-gcc9 | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-ubuntu) | ||
include-dirs: | ||
/usr/lib/mpich/include | ||
/usr/include/x86_64-linux-gnu/mpich | ||
extra-lib-dirs: | ||
/usr/lib/mpich/lib | ||
/usr/lib/x86_64-linux-gnu | ||
extra-libraries: | ||
mpich | ||
default-language: Haskell2010 | ||
|
||
executable example2 | ||
main-is: example2.hs | ||
other-modules: | ||
Paths_mpi_hs | ||
hs-source-dirs: | ||
src | ||
ghc-options: -Wall -rtsopts -threaded -with-rtsopts=-N | ||
build-depends: | ||
base | ||
, mpi-hs | ||
if flag(openmpi-debian) | ||
include-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-macports) | ||
include-dirs: | ||
/opt/local/include/openmpi-mp | ||
extra-lib-dirs: | ||
/opt/local/lib/openmpi-mp | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-ubuntu) | ||
include-dirs: | ||
/usr/lib/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-macports) | ||
include-dirs: | ||
/opt/local/include/mpich-gcc9 | ||
extra-lib-dirs: | ||
/opt/local/lib/mpich-gcc9 | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-ubuntu) | ||
include-dirs: | ||
/usr/lib/mpich/include | ||
/usr/include/x86_64-linux-gnu/mpich | ||
extra-lib-dirs: | ||
/usr/lib/mpich/lib | ||
/usr/lib/x86_64-linux-gnu | ||
extra-libraries: | ||
mpich | ||
default-language: Haskell2010 | ||
|
||
executable version | ||
main-is: version.hs | ||
other-modules: | ||
Paths_mpi_hs | ||
hs-source-dirs: | ||
src | ||
ghc-options: -Wall -rtsopts -threaded -with-rtsopts=-N | ||
build-depends: | ||
base | ||
, mpi-hs | ||
if flag(openmpi-debian) | ||
include-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-macports) | ||
include-dirs: | ||
/opt/local/include/openmpi-mp | ||
extra-lib-dirs: | ||
/opt/local/lib/openmpi-mp | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-ubuntu) | ||
include-dirs: | ||
/usr/lib/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-macports) | ||
include-dirs: | ||
/opt/local/include/mpich-gcc9 | ||
extra-lib-dirs: | ||
/opt/local/lib/mpich-gcc9 | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-ubuntu) | ||
include-dirs: | ||
/usr/lib/mpich/include | ||
/usr/include/x86_64-linux-gnu/mpich | ||
extra-lib-dirs: | ||
/usr/lib/mpich/lib | ||
/usr/lib/x86_64-linux-gnu | ||
extra-libraries: | ||
mpich | ||
default-language: Haskell2010 | ||
|
||
test-suite mpi-test | ||
type: exitcode-stdio-1.0 | ||
main-is: Main.hs | ||
other-modules: | ||
Paths_mpi_hs | ||
hs-source-dirs: | ||
tests/mpi | ||
ghc-options: -Wall -rtsopts -threaded -with-rtsopts=-N | ||
build-depends: | ||
base | ||
, monad-loops | ||
, mpi-hs | ||
if flag(openmpi-debian) | ||
include-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-macports) | ||
include-dirs: | ||
/opt/local/include/openmpi-mp | ||
extra-lib-dirs: | ||
/opt/local/lib/openmpi-mp | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-ubuntu) | ||
include-dirs: | ||
/usr/lib/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-macports) | ||
include-dirs: | ||
/opt/local/include/mpich-gcc9 | ||
extra-lib-dirs: | ||
/opt/local/lib/mpich-gcc9 | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-ubuntu) | ||
include-dirs: | ||
/usr/lib/mpich/include | ||
/usr/include/x86_64-linux-gnu/mpich | ||
extra-lib-dirs: | ||
/usr/lib/mpich/lib | ||
/usr/lib/x86_64-linux-gnu | ||
extra-libraries: | ||
mpich | ||
default-language: Haskell2010 | ||
|
||
test-suite mpi-test-storable | ||
type: exitcode-stdio-1.0 | ||
main-is: Main.hs | ||
other-modules: | ||
Paths_mpi_hs | ||
hs-source-dirs: | ||
tests/storable | ||
ghc-options: -Wall -rtsopts -threaded -with-rtsopts=-N | ||
build-depends: | ||
base | ||
, mpi-hs | ||
if flag(openmpi-debian) | ||
include-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/x86_64-linux-gnu/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-macports) | ||
include-dirs: | ||
/opt/local/include/openmpi-mp | ||
extra-lib-dirs: | ||
/opt/local/lib/openmpi-mp | ||
extra-libraries: | ||
mpi | ||
if flag(openmpi-ubuntu) | ||
include-dirs: | ||
/usr/lib/openmpi/include | ||
extra-lib-dirs: | ||
/usr/lib/openmpi/lib | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-macports) | ||
include-dirs: | ||
/opt/local/include/mpich-gcc9 | ||
extra-lib-dirs: | ||
/opt/local/lib/mpich-gcc9 | ||
extra-libraries: | ||
mpi | ||
if flag(mpich-ubuntu) | ||
include-dirs: | ||
/usr/lib/mpich/include | ||
/usr/include/x86_64-linux-gnu/mpich | ||
extra-lib-dirs: | ||
/usr/lib/mpich/lib | ||
/usr/lib/x86_64-linux-gnu | ||
extra-libraries: | ||
mpich | ||
default-language: Haskell2010 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"package-hashes":{"MD5":"932cb5a2802ed90af0ebde6430a90d33","Skein512_512":"d3d76a192a270d8e4486a7f4d76911812901d8ffe1f9254b470c30cec3e9442f54c773c3f31a868db2004fba0e8457f9f31cf7e931047879425c4f4eef36def0","SHA1":"34cb707abee4aa35da9c0c4f93bd572702b24cb6","SHA512":"914244c3d8e6d46a8d366c21c2d6f60e7ace7956a419dde7038a2c031322fe91b625de5d8b0cc40edfc896d7ddda944c2b85218e14c9c97465ad0b048b5d76b1","SHA256":"a60aaaf940eb64de601152064e07127cdce5457718dd8aa08c0c01defcf98391"},"package-locations":["https://hackage.haskell.org/package/mpi-hs-0.7.0.0/mpi-hs-0.7.0.0.tar.gz","https://s3.amazonaws.com/hackage.fpcomplete.com/package/mpi-hs-0.7.0.0.tar.gz"],"package-size":29368} |