summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/gasnet/package.py
blob: 705961d1de3fd46c761a425780a9c034122c5df4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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")