diff options
-rw-r--r-- | var/spack/repos/builtin/packages/portage/package.py | 108 | ||||
-rw-r--r-- | var/spack/repos/builtin/packages/wonton/package.py | 5 |
2 files changed, 77 insertions, 36 deletions
diff --git a/var/spack/repos/builtin/packages/portage/package.py b/var/spack/repos/builtin/packages/portage/package.py index 0bc7d2b8f3..29df97cbdb 100644 --- a/var/spack/repos/builtin/packages/portage/package.py +++ b/var/spack/repos/builtin/packages/portage/package.py @@ -14,52 +14,92 @@ class Portage(CMakePackage): """ homepage = "http://portage.lanl.gov/" git = "https://github.com/laristra/portage.git" + url = "https://github.com/laristra/portage/releases/download/3.0.0/portage-3.0.0.tar.gz" + + maintainers = ['raovgarimella'] # tarballs don't have submodules, so use git tags - version('develop', branch='master', submodules=True) - version('1.2.2', tag='v1.2.2', submodules=True) - version('1.1.1', tag='v1.1.1', submodules=True) - version('1.1.0', tag='v1.1.0', submodules=True) - - # fabs() needs math.h for gcc-7, got fixed in - # versions above 1.2.2 - patch('gcc-7.patch', when='@:1.2.2 %gcc@7:') - # part of https://github.com/laristra/cinch/commit/f87f848269fac25aa5b8d0bd5d9c9b2d2d6fb0ad - # fixed in version above 1.2.2 - patch('p_lapacke_config.patch', when='@1.2.2') - # don't enable debug prints in RelWithDebInfo build - # fixed in version above 1.2.2 - patch('rel-with-deb-info.patch', when='@1.2.2') - - # intel/19.0.4 got an ICE (internal compiler error) compiling pairs.cc - patch('p_intel_ice.patch', when='@1.2.2') + version('3.0.0', sha256='7a5a21ffbc35fa54a5136d937cfda6f836c7496ff2b5adf54deb4107501333da') + version('master', branch='master', submodules=True) variant('mpi', default=True, description='Support MPI') + variant('tangram', default=False, description='Use Tangram interface reconstruction package') + variant('jali', default=False, description='Include support for Jali mesh framework') + variant('flecsisp', default=False, description='Include support for FleCSI mesh framework') + variant('thrust', default=False, description='Enable on-node parallelism using NVidia Thrust library') + variant('kokkos', default=False, description='Enable on-node or device parallelism with Kokkos') + variant('openmp', default=False, description="Enable on-node parallelism using OpenMP") + variant('cuda', default=False, description="Enable GPU parallelism using CUDA") + + depends_on("cmake@3.13:", type='build') - depends_on("cmake@3.1:", type='build') depends_on('mpi', when='+mpi') - depends_on('lapack') - depends_on('boost') + + depends_on('tangram', when='+tangram') + depends_on('tangram+mpi', when='+tangram+mpi') + depends_on('tangram+jali', when='+tangram+jali') + depends_on('tangram+flecsisp', when='+tangram+flecsisp') + depends_on('tangram+thrust', when='+tangram+thrust') + depends_on('tangram+kokkos', when='+tangram+kokkos') + depends_on('tangram+cuda', when='+tangram+cuda') + + depends_on('wonton') + depends_on('wonton+mpi', when='+mpi') + depends_on('wonton+jali', when='+jali') + depends_on('wonton+flecsisp', when='+flecsisp') + depends_on('wonton+thrust', when='+thrust') + depends_on('wonton+kokkos', when='+kokkos') + depends_on('wonton+openmp', when='+openmp') + depends_on('wonton+cuda', when='+cuda') + + # Jali needs MPI + conflicts('+jali ~mpi') + + # Thrust with CUDA does not work as yet + conflicts('+thrust +cuda') + + # Don't enable Kokkos and Thrust simultaneously + conflicts('+thrust +kokkos') def cmake_args(self): - options = ['-DENABLE_UNIT_TESTS=ON', '-DENABLE_APP_TESTS=ON'] + options = [] if '+mpi' in self.spec: - options.extend([ - '-DENABLE_MPI=ON', - '-DENABLE_MPI_CXX_BINDINGS=ON', - '-DCMAKE_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx, - '-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc, - ]) + options.append('-DPORTAGE_ENABLE_MPI=ON') else: - options.append('-DENABLE_MPI=OFF') + options.append('-DPORTAGE_ENABLE_MPI=OFF') - options.append('-DBLA_VENDOR=' + self.spec['blas'].name.upper()) - options.append('-DBLAS_LIBRARIES=' + self.spec['blas'].libs.joined()) - options.append('-DLAPACK_LIBRARIES=' + - self.spec['lapack'].libs.joined()) + if '+thrust' in self.spec: + options.append('-DPORTAGE_ENABLE_THRUST=ON') + else: + options.append('-DPORTAGE_ENABLE_THRUST=OFF') - options.append("-DLAPACKE_LIBRARY=" + - self.spec["lapack:c"].libs.joined(";")) + if '+kokkos' in self.spec: + options.append('-DPORTAGE_ENABLE_Kokkos=ON') + else: + options.append('-DPORTAGE_ENABLE_Kokkos=OFF') + + if '+jali' in self.spec: + options.append('-DPORTAGE_ENABLE_Jali=ON') + else: + options.append('-DPORTAGE_ENABLE_Jali=OFF') + + if '+flecsi' in self.spec: + options.append('-DPORTAGE_ENABLE_FleCSI=ON') + else: + options.append('-DPORTAGE_ENABLE_FleCSI=OFF') + + if '+tangram' in self.spec: + options.append('-DPORTAGE_ENABLE_TANGRAM=ON') + else: + options.append('-DPORTAGE_ENABLE_TANGRAM=OFF') + + # Unit test variant + if self.run_tests: + options.append('-DENABLE_UNIT_TESTS=ON') + options.append('-DENABLE_APP_TESTS=ON') + else: + options.append('-DENABLE_UNIT_TESTS=OFF') + options.append('-DENABLE_APP_TESTS=OFF') return options diff --git a/var/spack/repos/builtin/packages/wonton/package.py b/var/spack/repos/builtin/packages/wonton/package.py index 13e43c0fd9..9dd5492488 100644 --- a/var/spack/repos/builtin/packages/wonton/package.py +++ b/var/spack/repos/builtin/packages/wonton/package.py @@ -17,11 +17,12 @@ class Wonton(CMakePackage): homepage = "https://portage.lanl.gov" git = "https://github.com/laristra/wonton.git" - url = "https://github.com/laristra/wonton/releases/download/1.2.10/wonton-1.2.10.tar.gz" + url = "https://github.com/laristra/wonton/releases/download/1.2.11/wonton-1.2.11.tar.gz" maintainers = ['raovgarimella'] - version('1.2.10', sha256='1367b9d3294d1c8a15e3cefa2670102de25baf456d5ed0e2fb70863f062e96b0') + version('1.2.11', sha256='613436c799b392a99355db1cbf1062f1da39f3287eed665a5cd43bb65364d926') + version('1.2.10', sha256='c5c2c99f040f1fa5a8da21ac5ccbbc5b226d1fd43ce3eb14c76d211601b65a72') version('1.2.1', sha256='4f00513d1abe86f256214d2b5171b1575b2cd464df8609307c24cbc4c595c305') variant('lapacke', default=True, description='Use LAPACKE solvers') |