summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2014-12-04 10:53:52 -0800
committerTodd Gamblin <tgamblin@llnl.gov>2014-12-04 10:53:52 -0800
commit7dc90c709712bf364b2b0b26686cf07cc038f5ab (patch)
tree2f710c16189d6f837681a630f282fd26e9ab18dd /var
parentba53ccb6b3d6506f83d2ecc426f3d22736440a1a (diff)
downloadspack-7dc90c709712bf364b2b0b26686cf07cc038f5ab.tar.gz
spack-7dc90c709712bf364b2b0b26686cf07cc038f5ab.tar.bz2
spack-7dc90c709712bf364b2b0b26686cf07cc038f5ab.tar.xz
spack-7dc90c709712bf364b2b0b26686cf07cc038f5ab.zip
Add experimental gasnet package for legion.
Diffstat (limited to 'var')
-rw-r--r--var/spack/packages/gasnet/package.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/var/spack/packages/gasnet/package.py b/var/spack/packages/gasnet/package.py
new file mode 100644
index 0000000000..705961d1de
--- /dev/null
+++ b/var/spack/packages/gasnet/package.py
@@ -0,0 +1,35 @@
+from spack import *
+
+class Gasnet(Package):
+ """GASNet is a language-independent, low-level networking layer
+ that provides network-independent, high-performance communication
+ primitives tailored for implementing parallel global address space
+ SPMD languages and libraries such as UPC, Co-Array Fortran, SHMEM,
+ Cray Chapel, and Titanium.
+ """
+ homepage = "http://gasnet.lbl.gov"
+ url = "http://gasnet.lbl.gov/GASNet-1.24.0.tar.gz"
+
+ version('1.24.0', 'c8afdf48381e8b5a7340bdb32ca0f41a')
+
+
+ def install(self, spec, prefix):
+ # TODO: don't use paths with @ in them.
+ change_sed_delimiter('@', ';', 'configure')
+
+ configure("--prefix=%s" % prefix,
+ # TODO: factor IB suport out into architecture description.
+ "--enable-ibv",
+ "--enable-udp",
+ "--disable-mpi",
+ "--enable-par",
+ "--enable-mpi-compat",
+ "--enable-segment-fast",
+ "--disable-aligned-segments",
+ # TODO: make an option so that Legion can request builds with/without this.
+ # See the Legion webpage for details on when to/not to use.
+ "--disable-pshm",
+ "--with-segment-mmap-max=64MB")
+
+ make()
+ make("install")