portage: added v3.0.0, deleted old versions (#21293)

old versions won't build with the new recipe and the url 
specification doesn't work for them

Co-authored-by: Rao Garimella <rao@abyzou.lanl.gov>
This commit is contained in:
Rao Garimella 2021-01-27 12:13:22 -07:00 committed by GitHub
parent 5667759bf5
commit f2c98a8537
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 77 additions and 36 deletions

View File

@ -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

View File

@ -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')