gasnet: add 1.30.0 (#6167)
* gasnet: add 1.30.0 * gasnet: expose more options as variants * gasnet: change defaults
This commit is contained in:
		
				
					committed by
					
						
						GitHub
					
				
			
			
				
	
			
			
			
						parent
						
							877bee3cb5
						
					
				
				
					commit
					b3f678c1c0
				
			@@ -35,12 +35,21 @@ class Gasnet(AutotoolsPackage):
 | 
				
			|||||||
    homepage = "http://gasnet.lbl.gov"
 | 
					    homepage = "http://gasnet.lbl.gov"
 | 
				
			||||||
    url      = "http://gasnet.lbl.gov/GASNet-1.24.0.tar.gz"
 | 
					    url      = "http://gasnet.lbl.gov/GASNet-1.24.0.tar.gz"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    version('1.30.0', '2ddb1d8397d62acfd389095ca8da72f6')
 | 
				
			||||||
    version('1.28.2', '6ca0463dc2430570e40646c4d1e97b36')
 | 
					    version('1.28.2', '6ca0463dc2430570e40646c4d1e97b36')
 | 
				
			||||||
    version('1.28.0', 'b44446d951d3d8954aa1570e3556ba61')
 | 
					    version('1.28.0', 'b44446d951d3d8954aa1570e3556ba61')
 | 
				
			||||||
    version('1.24.0', 'c8afdf48381e8b5a7340bdb32ca0f41a')
 | 
					    version('1.24.0', 'c8afdf48381e8b5a7340bdb32ca0f41a')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    variant('ibv', default=False, description="Support InfiniBand")
 | 
					    variant('ibv', default=False, description="Support InfiniBand")
 | 
				
			||||||
    variant('mpi', default=True, description="Support MPI")
 | 
					    variant('mpi', default=True, description="Support MPI")
 | 
				
			||||||
 | 
					    variant('aligned-segments', default=False,
 | 
				
			||||||
 | 
					            description="Requirement to achieve aligned VM segments")
 | 
				
			||||||
 | 
					    variant('pshm', default=True, 
 | 
				
			||||||
 | 
					            description="Support inter-process shared memory support")
 | 
				
			||||||
 | 
					    variant('segment-mmap-max', default='16GB',
 | 
				
			||||||
 | 
					            description="Upper bound for mmap-based GASNet segments")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    conflicts('+aligned-segments', when='+pshm')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    depends_on('mpi', when='+mpi')
 | 
					    depends_on('mpi', when='+mpi')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -53,15 +62,19 @@ def configure_args(self):
 | 
				
			|||||||
            "--enable-udp",
 | 
					            "--enable-udp",
 | 
				
			||||||
            "--enable-smp-safe",
 | 
					            "--enable-smp-safe",
 | 
				
			||||||
            "--enable-segment-fast",
 | 
					            "--enable-segment-fast",
 | 
				
			||||||
            "--disable-aligned-segments",
 | 
					            "--enable-pshm" if '+pshm' in self.spec else "--disable-pshm",
 | 
				
			||||||
            # TODO: make option so Legion can request builds with/without this.
 | 
					            "--with-segment-mmap-max={0}".format(
 | 
				
			||||||
            # See the Legion webpage for details on when to/not to use.
 | 
					                self.spec.variants['segment-mmap-max'].value),
 | 
				
			||||||
            "--disable-pshm",
 | 
					 | 
				
			||||||
            "--with-segment-mmap-max=64MB",
 | 
					 | 
				
			||||||
            # for consumers with shared libs
 | 
					            # for consumers with shared libs
 | 
				
			||||||
            "CC=%s %s" % (spack_cc, self.compiler.pic_flag),
 | 
					            "CC=%s %s" % (spack_cc, self.compiler.pic_flag),
 | 
				
			||||||
            "CXX=%s %s" % (spack_cxx, self.compiler.pic_flag),
 | 
					            "CXX=%s %s" % (spack_cxx, self.compiler.pic_flag),
 | 
				
			||||||
        ]
 | 
					        ]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if '+aligned-segments' in self.spec:
 | 
				
			||||||
 | 
					            args.append('--enable-aligned-segments')
 | 
				
			||||||
 | 
					        else:
 | 
				
			||||||
 | 
					            args.append('--disable-aligned-segments')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if '+mpi' in self.spec:
 | 
					        if '+mpi' in self.spec:
 | 
				
			||||||
            args.extend(['--enable-mpi', '--enable-mpi-compat', "MPI_CC=%s %s"
 | 
					            args.extend(['--enable-mpi', '--enable-mpi-compat', "MPI_CC=%s %s"
 | 
				
			||||||
                        % (self.spec['mpi'].mpicc, self.compiler.pic_flag)])
 | 
					                        % (self.spec['mpi'].mpicc, self.compiler.pic_flag)])
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -53,8 +53,8 @@ class Legion(CMakePackage):
 | 
				
			|||||||
    variant('shared', default=True, description='Build shared libraries')
 | 
					    variant('shared', default=True, description='Build shared libraries')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    depends_on("cmake@3.1:", type='build')
 | 
					    depends_on("cmake@3.1:", type='build')
 | 
				
			||||||
    depends_on("gasnet", when='~mpi')
 | 
					    depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB'", when='~mpi')
 | 
				
			||||||
    depends_on("gasnet+mpi", when='+mpi')
 | 
					    depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB' +mpi", when='+mpi')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def cmake_args(self):
 | 
					    def cmake_args(self):
 | 
				
			||||||
        options = [
 | 
					        options = [
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user