From b78025345bf748f6973e5543af3bb6a1edc309cc Mon Sep 17 00:00:00 2001 From: Abhik Sarkar <62109745+asarkar-parsys@users.noreply.github.com> Date: Sat, 21 May 2022 15:57:59 -0700 Subject: Feature/composed boost pkg deps p3 (#28961) * This commit removes the Boost.with_default_variants to variants that packages are precisely dependant upon. This is the third batch of 16 packages with modified boost dependencies. * style fix * Update var/spack/repos/builtin/packages/sympol/package.py Co-authored-by: Tim Haines * fix style * Apply suggestions from code review Co-authored-by: Tim Haines * Fix Trilinos boost deps * Fix style Co-authored-by: Tim Haines Co-authored-by: Tom Scogland --- var/spack/repos/builtin/packages/salmon/package.py | 12 ++---------- var/spack/repos/builtin/packages/scallop/package.py | 7 +------ var/spack/repos/builtin/packages/seqan/package.py | 8 +------- var/spack/repos/builtin/packages/shapeit4/package.py | 7 +------ var/spack/repos/builtin/packages/simgrid/package.py | 7 +------ var/spack/repos/builtin/packages/source-highlight/package.py | 6 +----- var/spack/repos/builtin/packages/strelka/package.py | 8 +------- var/spack/repos/builtin/packages/sympol/package.py | 5 +---- var/spack/repos/builtin/packages/templight-tools/package.py | 8 +------- var/spack/repos/builtin/packages/tfel/package.py | 8 +------- var/spack/repos/builtin/packages/tophat/package.py | 8 +------- var/spack/repos/builtin/packages/trilinos/package.py | 9 ++------- var/spack/repos/builtin/packages/valgrind/package.py | 8 +------- var/spack/repos/builtin/packages/votca-csg/package.py | 6 +----- var/spack/repos/builtin/packages/votca-csgapps/package.py | 7 +------ var/spack/repos/builtin/packages/votca-tools/package.py | 6 +----- 16 files changed, 18 insertions(+), 102 deletions(-) diff --git a/var/spack/repos/builtin/packages/salmon/package.py b/var/spack/repos/builtin/packages/salmon/package.py index 92ab7aab49..63aac9d5f6 100644 --- a/var/spack/repos/builtin/packages/salmon/package.py +++ b/var/spack/repos/builtin/packages/salmon/package.py @@ -3,8 +3,6 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -from spack.pkg.builtin.boost import Boost - class Salmon(CMakePackage): """Salmon is a tool for quantifying the expression of transcripts using @@ -24,14 +22,8 @@ class Salmon(CMakePackage): values=('DEBUG', 'RELEASE')) depends_on('tbb') - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) - depends_on('boost@:1.66.0', when='@:0.14.1') - depends_on('boost@1.72.0:', when='@1.4.0:') - + depends_on('boost@1.66.0:+program_options+exception+filesystem+system+chrono+serialization+random+graph+timer+iostreams+math+thread+container', when='@:0.14.1') + depends_on('boost@1.72.0:+program_options+exception+filesystem+system+chrono+serialization+random+graph+timer+iostreams+math+thread+container', when='@1.4.0:') depends_on('cereal') depends_on('jemalloc') depends_on('xz') diff --git a/var/spack/repos/builtin/packages/scallop/package.py b/var/spack/repos/builtin/packages/scallop/package.py index 8df4e79437..31588a88b7 100644 --- a/var/spack/repos/builtin/packages/scallop/package.py +++ b/var/spack/repos/builtin/packages/scallop/package.py @@ -4,7 +4,6 @@ # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack import * -from spack.pkg.builtin.boost import Boost class Scallop(AutotoolsPackage): @@ -17,11 +16,7 @@ class Scallop(AutotoolsPackage): version('0.10.3', sha256='04eb3ab27ed8c7ae38e1780d6b2af16b6a2c01807ffafd59e819d33bfeff58a0') depends_on('clp') - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on('boost') depends_on('htslib@1.5:') def configure_args(self): diff --git a/var/spack/repos/builtin/packages/seqan/package.py b/var/spack/repos/builtin/packages/seqan/package.py index f305475935..ec4f617a7c 100644 --- a/var/spack/repos/builtin/packages/seqan/package.py +++ b/var/spack/repos/builtin/packages/seqan/package.py @@ -5,7 +5,6 @@ from spack import * -from spack.pkg.builtin.boost import Boost class Seqan(CMakePackage): @@ -25,12 +24,7 @@ class Seqan(CMakePackage): depends_on('python@2.7.0:', type='build') depends_on('py-nose', type='build') depends_on('py-sphinx', type='build') - depends_on('boost', type=('build', 'link')) - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on('boost+exception+math+serialization+container', type=('build', 'link')) depends_on('zlib', type=('build', 'link')) depends_on('bzip2', type=('build', 'link')) diff --git a/var/spack/repos/builtin/packages/shapeit4/package.py b/var/spack/repos/builtin/packages/shapeit4/package.py index 8d0dbc608b..f4fde917ff 100644 --- a/var/spack/repos/builtin/packages/shapeit4/package.py +++ b/var/spack/repos/builtin/packages/shapeit4/package.py @@ -4,7 +4,6 @@ # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack import * -from spack.pkg.builtin.boost import Boost class Shapeit4(MakefilePackage): @@ -19,11 +18,7 @@ class Shapeit4(MakefilePackage): maintainers = ['ilbiondo'] depends_on('htslib') - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on('boost+exception+container+iostreams+program_options') depends_on('bzip2') depends_on('xz') diff --git a/var/spack/repos/builtin/packages/simgrid/package.py b/var/spack/repos/builtin/packages/simgrid/package.py index 63f886f02e..5b3b44b534 100644 --- a/var/spack/repos/builtin/packages/simgrid/package.py +++ b/var/spack/repos/builtin/packages/simgrid/package.py @@ -4,7 +4,6 @@ # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack import * -from spack.pkg.builtin.boost import Boost class Simgrid(CMakePackage): @@ -74,12 +73,8 @@ class Simgrid(CMakePackage): variant('mc', default=False, description='Model checker') # does not build correctly with some old compilers -> rely on packages - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants, when='@:3.21') depends_on('boost@:1.69.0', when='@:3.21') + depends_on('boost+exception') conflicts('%gcc@10:', when='@:3.23', msg='simgrid <= v3.23 cannot be built with gcc >= 10,' diff --git a/var/spack/repos/builtin/packages/source-highlight/package.py b/var/spack/repos/builtin/packages/source-highlight/package.py index b6a21ff0d4..774f6f35af 100644 --- a/var/spack/repos/builtin/packages/source-highlight/package.py +++ b/var/spack/repos/builtin/packages/source-highlight/package.py @@ -5,7 +5,6 @@ from spack import * -from spack.pkg.builtin.boost import Boost class SourceHighlight(AutotoolsPackage, GNUMirrorPackage): @@ -26,10 +25,7 @@ class SourceHighlight(AutotoolsPackage, GNUMirrorPackage): sha256='45087b174b2b128a8dc81b0728f8ae63213d255ceef6dabfcba27c94e2a75ce9', when='%gcc@11:') - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on('boost+exception+regex') # git version needs autotools depends_on('m4', when='@master') diff --git a/var/spack/repos/builtin/packages/strelka/package.py b/var/spack/repos/builtin/packages/strelka/package.py index 1bdc31a688..f3314eb0cc 100644 --- a/var/spack/repos/builtin/packages/strelka/package.py +++ b/var/spack/repos/builtin/packages/strelka/package.py @@ -4,7 +4,6 @@ # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack import * -from spack.pkg.builtin.boost import Boost class Strelka(CMakePackage): @@ -33,9 +32,4 @@ class Strelka(CMakePackage): depends_on('zlib') depends_on('bzip2') depends_on('cmake@2.8.5:', type='build') - depends_on('boost@1.56.0:') - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on('boost@1.56.0: +program_options+exception+filesystem+system+chrono+serialization+timer+container+test+math') diff --git a/var/spack/repos/builtin/packages/sympol/package.py b/var/spack/repos/builtin/packages/sympol/package.py index e9748a07d2..4362d3225f 100644 --- a/var/spack/repos/builtin/packages/sympol/package.py +++ b/var/spack/repos/builtin/packages/sympol/package.py @@ -18,10 +18,7 @@ class Sympol(CMakePackage): depends_on("cmake@2.6:", type="build") depends_on("bliss") - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference + depends_on('boost+math+program_options+test') depends_on(Boost.with_default_variants) depends_on("gmp") depends_on("lrslib") diff --git a/var/spack/repos/builtin/packages/templight-tools/package.py b/var/spack/repos/builtin/packages/templight-tools/package.py index 662a1b57be..2d637137f8 100644 --- a/var/spack/repos/builtin/packages/templight-tools/package.py +++ b/var/spack/repos/builtin/packages/templight-tools/package.py @@ -4,7 +4,6 @@ # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack import * -from spack.pkg.builtin.boost import Boost class TemplightTools(CMakePackage): @@ -16,9 +15,4 @@ class TemplightTools(CMakePackage): version('develop', branch='master') depends_on('cmake @2.8.7:', type='build') - depends_on('boost @1.48.1: +filesystem +graph +program_options +test') - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on('boost @1.48.1: +exception+filesystem+system+graph+program_options+test+container') diff --git a/var/spack/repos/builtin/packages/tfel/package.py b/var/spack/repos/builtin/packages/tfel/package.py index 8b0959f97f..b1ec11edfb 100644 --- a/var/spack/repos/builtin/packages/tfel/package.py +++ b/var/spack/repos/builtin/packages/tfel/package.py @@ -7,7 +7,6 @@ # 18/12/2018: fix python detection from spack import * -from spack.pkg.builtin.boost import Boost class Tfel(CMakePackage): @@ -132,14 +131,9 @@ class Tfel(CMakePackage): depends_on('py-numpy', when='+python_bindings', type=('build', 'link', 'run')) # As boost+py has py runtime dependency, boost+py needs types link and run as well: - depends_on('boost+python+numpy', when='+python_bindings', + depends_on('boost+python+numpy+exception+container', when='+python_bindings', type=('build', 'link', 'run')) - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants, when='+python_bindings') - extends('python', when='+python_bindings') conflicts('%gcc@:7', when='@4:') diff --git a/var/spack/repos/builtin/packages/tophat/package.py b/var/spack/repos/builtin/packages/tophat/package.py index 5d5c3542a5..b36838be61 100644 --- a/var/spack/repos/builtin/packages/tophat/package.py +++ b/var/spack/repos/builtin/packages/tophat/package.py @@ -4,7 +4,6 @@ # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack import * -from spack.pkg.builtin.boost import Boost class Tophat(AutotoolsPackage): @@ -25,12 +24,7 @@ class Tophat(AutotoolsPackage): depends_on('libtool', type='build') depends_on('m4', type='build') - depends_on('boost@1.47:') - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on('boost@1.47:+exception+chrono+system+random+atomic+thread') depends_on('bowtie2', type='run') parallel = False diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py index 1e9778063e..f02d2d0806 100644 --- a/var/spack/repos/builtin/packages/trilinos/package.py +++ b/var/spack/repos/builtin/packages/trilinos/package.py @@ -10,7 +10,6 @@ from spack import * from spack.build_environment import dso_suffix from spack.error import NoHeadersError from spack.operating_systems.mac_os import macos_version -from spack.pkg.builtin.boost import Boost from spack.pkg.builtin.kokkos import Kokkos # Trilinos is complicated to build, as an inspiration a couple of links to @@ -323,16 +322,12 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage): depends_on('adios2', when='+adios2') depends_on('blas') - depends_on('boost', when='+boost') + depends_on('boost+graph+math+exception+stacktrace', when='+boost') # Need to revisit the requirement of STK - depends_on('boost', when='+stk') + depends_on('boost+graph+math+exception+stacktrace', when='+stk') # depends_on('cgns', when='+exodus') - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants, when='+boost') depends_on('hdf5+hl', when='+hdf5') depends_on('hypre~internal-superlu~int64', when='+hypre') depends_on('kokkos-nvcc-wrapper', when='+wrapper') diff --git a/var/spack/repos/builtin/packages/valgrind/package.py b/var/spack/repos/builtin/packages/valgrind/package.py index 4e620214f9..0f28da1867 100644 --- a/var/spack/repos/builtin/packages/valgrind/package.py +++ b/var/spack/repos/builtin/packages/valgrind/package.py @@ -7,7 +7,6 @@ import glob import sys from spack import * -from spack.pkg.builtin.boost import Boost class Valgrind(AutotoolsPackage, SourcewarePackage): @@ -55,12 +54,7 @@ Otherwise with (Apple's) clang there is a linker error: clang: error: unknown argument: '-static-libubsan' """) depends_on('mpi', when='+mpi') - depends_on('boost', when='+boost') - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants, when='+boost') + depends_on('boost+exception+chrono+system+atomic+thread', when='+boost') depends_on("autoconf", type='build', when='@develop') depends_on("automake", type='build', when='@develop') diff --git a/var/spack/repos/builtin/packages/votca-csg/package.py b/var/spack/repos/builtin/packages/votca-csg/package.py index 8e36334b8c..483ef0bf37 100644 --- a/var/spack/repos/builtin/packages/votca-csg/package.py +++ b/var/spack/repos/builtin/packages/votca-csg/package.py @@ -5,7 +5,6 @@ from spack import * -from spack.pkg.builtin.boost import Boost class VotcaCsg(CMakePackage): @@ -39,9 +38,6 @@ class VotcaCsg(CMakePackage): for v in ["1.4", "1.4.1", "1.5", "1.5.1", "1.6", "1.6.1", "1.6.2", "1.6.3", "1.6.4", "2021", "2021.1", "2021.2", "stable"]: depends_on('votca-tools@%s' % v, when="@%s:%s.0" % (v, v)) - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on("boost+exception+filesystem+system+serialization+container+math+regex") depends_on("gromacs~mpi@5.1:2019") depends_on("hdf5~mpi") diff --git a/var/spack/repos/builtin/packages/votca-csgapps/package.py b/var/spack/repos/builtin/packages/votca-csgapps/package.py index 63a5082176..605c83c7c0 100644 --- a/var/spack/repos/builtin/packages/votca-csgapps/package.py +++ b/var/spack/repos/builtin/packages/votca-csgapps/package.py @@ -5,7 +5,6 @@ from spack import * -from spack.pkg.builtin.boost import Boost class VotcaCsgapps(CMakePackage): @@ -34,8 +33,4 @@ class VotcaCsgapps(CMakePackage): for v in ["1.4", "1.4.1", "1.5", "1.5.1", "1.6", "1.6.1", "1.6.2", "1.6.3", "1.6.4"]: depends_on('votca-csg@%s' % v, when="@%s:%s.0" % (v, v)) - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on("boost+exception+math+serialization+container") diff --git a/var/spack/repos/builtin/packages/votca-tools/package.py b/var/spack/repos/builtin/packages/votca-tools/package.py index c195dd8e1b..895a2f9215 100644 --- a/var/spack/repos/builtin/packages/votca-tools/package.py +++ b/var/spack/repos/builtin/packages/votca-tools/package.py @@ -5,7 +5,6 @@ from spack import * -from spack.pkg.builtin.boost import Boost class VotcaTools(CMakePackage): @@ -48,10 +47,7 @@ class VotcaTools(CMakePackage): depends_on("fftw-api@3") depends_on("gsl", when="@1.4:1.4.9999") depends_on("eigen@3.3:", when="@stable,1.5:") - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants) + depends_on("boost+exception+filesystem+system+container+math+program_options") depends_on("sqlite", when="@1.4:1.5") depends_on('mkl', when='+mkl') -- cgit v1.2.3-70-g09d2