diff options
author | Satish Balay <balay@mcs.anl.gov> | 2018-06-24 21:22:14 +0530 |
---|---|---|
committer | Adam J. Stewart <ajstewart426@gmail.com> | 2018-06-24 10:52:14 -0500 |
commit | df45b6f56db3dde44b80ee433bfdb1de7e921b31 (patch) | |
tree | 555db3546446bb75d852d5bdd3719fa675a45726 /var | |
parent | f6140375e9433cd4a5bf53d8efec6ac5eee658f3 (diff) | |
download | spack-df45b6f56db3dde44b80ee433bfdb1de7e921b31.tar.gz spack-df45b6f56db3dde44b80ee433bfdb1de7e921b31.tar.bz2 spack-df45b6f56db3dde44b80ee433bfdb1de7e921b31.tar.xz spack-df45b6f56db3dde44b80ee433bfdb1de7e921b31.zip |
Balay/petsc remove boost dependency (#8508)
* petsc: remove dependency on boost - its required only as a dependency on trilinos
Also set COPTFLAGS='' etc - this way CFLAGS is the primary way optimization flags are set by spack
* petsc: update pkgs with petsc~boost dependency
* fix flake8
* boost is optional for trilinos - so adjust petsc dependency on boost [via trilinos] accordingly
* do not add boost dependency on petsc [due to trilinos requirement]. Trilinos adds this dependency anyway.
Diffstat (limited to 'var')
4 files changed, 16 insertions, 13 deletions
diff --git a/var/spack/repos/builtin/packages/ceed/package.py b/var/spack/repos/builtin/packages/ceed/package.py index f6569a324c..a5e2c73da3 100644 --- a/var/spack/repos/builtin/packages/ceed/package.py +++ b/var/spack/repos/builtin/packages/ceed/package.py @@ -73,10 +73,10 @@ class Ceed(Package): depends_on('nekcem@0b8bedd', when='@1.0.0+nek') # PETSc, HPGMG - # For a +quickbuild we disable boost, hdf5, and superlu-dist in PETSc. + # For a +quickbuild we disable hdf5, and superlu-dist in PETSc. # Ideally, these can be turned into recommendations to Spack for # concretizing the PETSc spec, if Spack ever supports recommendations. - depends_on('petsc@3.8.3~boost~hdf5~superlu-dist', + depends_on('petsc@3.8.3~hdf5~superlu-dist', when='@1.0.0+petsc+quickbuild') depends_on('petsc@3.8.3+mpi+double~int64', when='@1.0.0+petsc~mfem') # The mfem petsc examples need the petsc variants +hypre, +suite-sparse, diff --git a/var/spack/repos/builtin/packages/mfem/test_builds.sh b/var/spack/repos/builtin/packages/mfem/test_builds.sh index b7d3d881b3..125fa0055c 100755 --- a/var/spack/repos/builtin/packages/mfem/test_builds.sh +++ b/var/spack/repos/builtin/packages/mfem/test_builds.sh @@ -6,7 +6,7 @@ builds=( 'mfem~mpi~metis~gzstream' 'mfem+mpi+superlu-dist+suite-sparse+petsc \ +sundials+pumi+mpfr+netcdf+gzstream+gnutls+libunwind \ - ^hypre~internal-superlu ^petsc~boost+suite-sparse+mumps' + ^hypre~internal-superlu ^petsc+suite-sparse+mumps' 'mfem~mpi+suite-sparse+sundials+mpfr+netcdf \ +gzstream+gnutls+libunwind' # develop version: @@ -18,7 +18,7 @@ builds=( 'mfem@develop+shared~static+mpi \ +superlu-dist+suite-sparse+petsc+sundials+mpfr+netcdf+gzstream \ +gnutls+libunwind+conduit ^hypre~internal-superlu \ - ^petsc~boost+suite-sparse+mumps ^conduit~python~hdf5' + ^petsc+suite-sparse+mumps ^conduit~python~hdf5' # TODO: The options '^netcdf~mpi ^hdf5@1.8.19~mpi' are added just to make # conduit happy. 'mfem@develop+shared~static~mpi \ @@ -38,7 +38,7 @@ builds2=( 'mfem+netcdf' 'mfem+mpfr' 'mfem+gnutls' - 'mfem+petsc+mpi ^hypre~internal-superlu ^petsc~boost+suite-sparse+mumps' + 'mfem+petsc+mpi ^hypre~internal-superlu ^petsc+suite-sparse+mumps' # develop version 'mfem@develop+superlu-dist' 'mfem@develop+suite-sparse~mpi' @@ -53,7 +53,7 @@ builds2=( 'mfem@develop+conduit~mpi ^conduit~python' 'mfem@develop+conduit ^conduit~python' 'mfem@develop+petsc+mpi ^hypre~internal-superlu \ - ^petsc~boost+suite-sparse+mumps' + ^petsc+suite-sparse+mumps' ) trap 'printf "\nScript interrupted.\n"; exit 33' INT diff --git a/var/spack/repos/builtin/packages/petsc/package.py b/var/spack/repos/builtin/packages/petsc/package.py index 80dbdbfc84..552baa4ad6 100644 --- a/var/spack/repos/builtin/packages/petsc/package.py +++ b/var/spack/repos/builtin/packages/petsc/package.py @@ -74,7 +74,6 @@ class Petsc(Package): description='Activates support for metis and parmetis') variant('hdf5', default=True, description='Activates support for HDF5 (only parallel)') - variant('boost', default=True, description='Activates support for Boost') variant('hypre', default=True, description='Activates support for Hypre (only parallel)') # Mumps is disabled by default, because it depends on Scalapack @@ -121,7 +120,6 @@ class Petsc(Package): depends_on('python@2.6:2.8', type='build') # Other dependencies - depends_on('boost', when='@:3.5+boost') depends_on('metis@5:~int64+real64', when='@:3.7.99+metis~int64+double') depends_on('metis@5:~int64', when='@:3.7.99+metis~int64~double') depends_on('metis@5:+int64+real64', when='@:3.7.99+metis+int64+double') @@ -197,7 +195,10 @@ class Petsc(Package): '--with-x=0', '--download-c2html=0', '--download-sowing=0', - '--download-hwloc=0'] + '--download-hwloc=0', + 'COPTFLAGS=', + 'FOPTFLAGS=', + 'CXXOPTFLAGS='] options.extend(self.mpi_dependent_options()) options.extend([ '--with-precision=%s' % ( @@ -217,6 +218,8 @@ class Petsc(Package): if 'trilinos' in spec: options.append('--with-cxx-dialect=C++11') + if spec.satisfies('^trilinos+boost'): + options.append('--with-boost=1') if self.spec.satisfies('clanguage=C++'): options.append('--with-clanguage=C++') @@ -236,7 +239,7 @@ class Petsc(Package): ]) # Activates library support if needed - for library in ('metis', 'boost', 'hdf5', 'hypre', 'parmetis', + for library in ('metis', 'hdf5', 'hypre', 'parmetis', 'mumps', 'trilinos'): options.append( '--with-{library}={value}'.format( diff --git a/var/spack/repos/builtin/packages/xsdk/package.py b/var/spack/repos/builtin/packages/xsdk/package.py index 7414c12c49..9b20a7e374 100644 --- a/var/spack/repos/builtin/packages/xsdk/package.py +++ b/var/spack/repos/builtin/packages/xsdk/package.py @@ -64,11 +64,11 @@ class Xsdk(Package): depends_on('trilinos@12.12.1+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra+nox~ifpack2~zoltan2~amesos2~exodus', when='@develop') - depends_on('petsc@3.8.2+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64', + depends_on('petsc@3.8.2+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64', when='@0.3.0') - depends_on('petsc@xsdk-0.2.0+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64', + depends_on('petsc@xsdk-0.2.0+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64', when='@xsdk-0.2.0') - depends_on('petsc@develop+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64', + depends_on('petsc@develop+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64', when='@develop') depends_on('pflotran@xsdk-0.3.0', when='@0.3.0') |