Xsdk 0.3.0 (#6277)
* xsdk: Added MFEM rc package. * xsdk: add version entry for xsdk-0.3.0-rc1 - and set it as preferred version * xsdk: remove 'xsdk' from version - recommended by Todd. Now the usage is: 'spack install xsdk@0.3.0-rc1' instead of the previous usage: 'spack install xsdk@xsdk-0.2.0' * xsdk: add petsc@3.8.0 as a dependency for xsdk-0.3.0-rc1 * mfem: fix dependency to use the corrected xsdk version * Updated the mfem version tags. * mfem: fix merge * fix flake8 warning * Modified xSDK scripts * fixing the default package.yaml * fix bad revert * revert changes to superlu-dist so that the 5.2.1 update can be merged * update xsdk to use superlu-dist-5.2.1 * update alquimia for xsdk * fix whitespace * update hypre for xsdk * update sundials for xsdk * update sundials for xsdk * Fix checking for MKL and extend range of GCC versions * pflotran: update to release branch * plasma: fix spec -> self.spec * Changes to enable mfem hooks into hypre, superlu-dist, and petsc. Sundials hooks may come in the future. * adding plasma with comment * Bumped the version of mfem up to handle integration with sundials3.0.0. Also enabled hypre in sundials. * Turn on the plasma package definition for testing * Fix conflict declaration to obey ordering rules * xsdk: udate superlu-dist dependency to v5.2.2 * plasma: change gcc dependency to workarround potential spack bug #5778 * trilinos: update hdf5 dependency to use 'hdf5+hl' Without this change - I get the following error [triggered by161dca6d5
c9810f808
changes] $ ./bin/spack install trilinos+hdf5 ==> Error: An unsatisfiable variant constraint has been detected for spec: hdf5@1.10.1%gcc@7~cxx~debug~fortran~hl+mpi+pic+shared~szip~threadsafe arch=linux-fedora27-x86_64 while trying to concretize the partial spec: netcdf+mpi ^m4 ^mpich@3.3a2%gcc@7 device=ch3 +hydra netmod=tcp +pmi+romio~verbs arch=linux-fedora27-x86_64 ^zlib@1.2.11%gcc@7+optimize+pic+shared arch=linux-fedora27-x86_64 netcdf requires hdf5 variant +hl, but spec asked for ~hl * plasma: add in -lm dependency per #6046 * update sundials version to 3.0.0 * Add fixes to support Netlib LAPACK * mfem does not use cmake for builds [anymore] - so remove code corresponding to this dependency. This enables mfem build on OSX [with xcode/clang compilers] * mfem: update to v3.3.2-rc4 * add patch for building sundials on mac * xsdk: enable plasma for gcc-4.9+ - same as what plasma/package.py does. * magma: Fix for cuda-9.0 as it does not support sm20 nvcc fatal : Unsupported gpu architecture 'compute_20' * add in code for 'spack install xsdk+cuda' - which installs magma * fix flake8 warning * fix flake8 warnings * Updated to the latest MFEM RC. * alquimia: fix to use petsc-3.8.0+ versions * petsc: update to version 3.8.1 * petsc: add in conflict between petsc-3.8.0 & mkl * xsdk: update petsc to 3.8.1 to get MKL build fix * petsc: fix superlu_dist dependency * petsc: when hdf5 depends on zlib - petsc+hdf5 should also be configured with zlib * petsc: fix dependency [of zlib to be on hdf5 - and not on petsc] * petsc: fix pkgconfig error - with incorrect library link order that can break mfem examples with static build * petsc: use the fact that hdf5/package.py has a hard dependency on zlib [so no need to check for this dependency in code] recommended-by: @davydden * petsc: change hdf5 dependency to 'hdf5+hl' as petsc configure is looing for -lhdf5_hl https://github.com/spack/spack/issues/5846 * plasma: also detect -lgfortran * update sundials version to 3.1.0 * alquimia: xsdk-0.3.0-rc -> xsdk-0.3.0 * petsc: update to version 3.8.2 Includes pkgconfig fix [for mfem static build failure] * Revert "petsc: fix pkgconfig error - with incorrect library link order that can break mfem examples with static build" This reverts commit d1afa8c20d4313fdc42a27e5380573b035b32998. * xsdk: update to use petsc-3.8.2 * Fixed a problem with MFEM trying to use mpicxx instead of the spack defined compiler. * Minor changes to the mfem build and pointing at mfem's release branch that is currently undergoing internal testing. * Enabling shared build for Plasma * plasma: do not look for libgfortran on cray - spack finds the wrong one from the frontend '-L/usr/lib64/gcc/x86_64-suse-linux/4.3 -L/usr/lib64 -lgfortran' * Some changes to the mfem package that are in the process of being pulled into spack/develop. * xsdk: switch from 0.3.0-rc1 to 0.3.0 * fix flake8 warnings * plasma: extract plasma changes from xsdk-0.3.0 * plasma: cleanup per review - netlib-lapack: add support for spec['lapack:c'].libs, spec['blas:c'].libs - add getblaslapacklibs() to eliminate duplicate code in edit() and build_targets() - eliminate string manipulation of ld_flags - remove gfortran check (will check later) - remove build() (will check later) * netlib-lapack: fix tuple per review * netlib-lapack: use spec[lapack:c,fortran]
This commit is contained in:
parent
52f46d2bee
commit
cd8da5a441
3 changed files with 24 additions and 2 deletions
|
@ -31,6 +31,7 @@ class Alquimia(CMakePackage):
|
||||||
|
|
||||||
homepage = "https://github.com/LBL-EESA/alquimia-dev"
|
homepage = "https://github.com/LBL-EESA/alquimia-dev"
|
||||||
|
|
||||||
|
version('xsdk-0.3.0', git='https://github.com/LBL-EESA/alquimia-dev.git', tag='xsdk-0.3.0')
|
||||||
version('xsdk-0.2.0', git='https://github.com/LBL-EESA/alquimia-dev.git', tag='xsdk-0.2.0')
|
version('xsdk-0.2.0', git='https://github.com/LBL-EESA/alquimia-dev.git', tag='xsdk-0.2.0')
|
||||||
version('develop', git='https://github.com/LBL-EESA/alquimia-dev.git')
|
version('develop', git='https://github.com/LBL-EESA/alquimia-dev.git')
|
||||||
|
|
||||||
|
@ -39,8 +40,10 @@ class Alquimia(CMakePackage):
|
||||||
|
|
||||||
depends_on('mpi')
|
depends_on('mpi')
|
||||||
depends_on('hdf5')
|
depends_on('hdf5')
|
||||||
|
depends_on('pflotran@xsdk-0.3.0', when='@xsdk-0.3.0')
|
||||||
depends_on('pflotran@xsdk-0.2.0', when='@xsdk-0.2.0')
|
depends_on('pflotran@xsdk-0.2.0', when='@xsdk-0.2.0')
|
||||||
depends_on('pflotran@develop', when='@develop')
|
depends_on('pflotran@develop', when='@develop')
|
||||||
|
depends_on('petsc@3.8.0:', when='@xsdk-0.3.0')
|
||||||
depends_on('petsc@xsdk-0.2.0', when='@xsdk-0.2.0')
|
depends_on('petsc@xsdk-0.2.0', when='@xsdk-0.2.0')
|
||||||
depends_on('petsc@develop', when='@develop')
|
depends_on('petsc@develop', when='@develop')
|
||||||
|
|
||||||
|
|
|
@ -35,10 +35,12 @@ class Pflotran(AutotoolsPackage):
|
||||||
|
|
||||||
version('develop', git='https://bitbucket.org/pflotran/pflotran')
|
version('develop', git='https://bitbucket.org/pflotran/pflotran')
|
||||||
version('xsdk-0.2.0', git='https://bitbucket.org/pflotran/pflotran', tag='master')
|
version('xsdk-0.2.0', git='https://bitbucket.org/pflotran/pflotran', tag='master')
|
||||||
|
version('xsdk-0.3.0', git='https://bitbucket.org/pflotran/pflotran', branch='release/xsdk-0.3.0')
|
||||||
|
|
||||||
depends_on('mpi')
|
depends_on('mpi')
|
||||||
depends_on('hdf5@1.8.12:+mpi+fortran')
|
depends_on('hdf5@1.8.12:+mpi+fortran')
|
||||||
depends_on('petsc@develop+hdf5+metis', when='@develop')
|
depends_on('petsc@develop+hdf5+metis', when='@develop')
|
||||||
depends_on('petsc@xsdk-0.2.0+hdf5+metis', when='@xsdk-0.2.0')
|
depends_on('petsc@xsdk-0.2.0+hdf5+metis', when='@xsdk-0.2.0')
|
||||||
|
depends_on('petsc@3.8.0:+hdf5+metis', when='@xsdk-0.3.0')
|
||||||
|
|
||||||
parallel = False
|
parallel = False
|
||||||
|
|
|
@ -40,37 +40,54 @@ class Xsdk(Package):
|
||||||
url = 'https://bitbucket.org/saws/saws/get/master.tar.gz'
|
url = 'https://bitbucket.org/saws/saws/get/master.tar.gz'
|
||||||
|
|
||||||
version('develop', 'a52dc710c744afa0b71429b8ec9425bc')
|
version('develop', 'a52dc710c744afa0b71429b8ec9425bc')
|
||||||
|
version('0.3.0', 'a52dc710c744afa0b71429b8ec9425bc', preferred=True)
|
||||||
version('xsdk-0.2.0', 'a52dc710c744afa0b71429b8ec9425bc')
|
version('xsdk-0.2.0', 'a52dc710c744afa0b71429b8ec9425bc')
|
||||||
|
|
||||||
|
variant('debug', default=False, description='Compile in debug mode')
|
||||||
|
variant('cuda', default=False, description='Enable CUDA dependent packages')
|
||||||
|
|
||||||
|
depends_on('hypre@2.12.1~internal-superlu', when='@0.3.0')
|
||||||
depends_on('hypre@xsdk-0.2.0~internal-superlu', when='@xsdk-0.2.0')
|
depends_on('hypre@xsdk-0.2.0~internal-superlu', when='@xsdk-0.2.0')
|
||||||
depends_on('hypre@develop~internal-superlu', when='@develop')
|
depends_on('hypre@develop~internal-superlu', when='@develop')
|
||||||
|
|
||||||
|
depends_on('mfem@3.3.2+mpi+hypre+superlu-dist+petsc+sundials+examples+miniapps', when='@0.3.0')
|
||||||
|
depends_on('mfem@3.3.2+mpi+hypre+superlu-dist+petsc+sundials+examples+miniapps', when='@develop')
|
||||||
|
|
||||||
|
depends_on('superlu-dist@5.2.2', when='@0.3.0')
|
||||||
depends_on('superlu-dist@xsdk-0.2.0', when='@xsdk-0.2.0')
|
depends_on('superlu-dist@xsdk-0.2.0', when='@xsdk-0.2.0')
|
||||||
depends_on('superlu-dist@develop', when='@develop')
|
depends_on('superlu-dist@develop', when='@develop')
|
||||||
|
|
||||||
|
depends_on('trilinos@12.12.1+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
|
||||||
|
when='@0.3.0')
|
||||||
depends_on('trilinos@xsdk-0.2.0+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
|
depends_on('trilinos@xsdk-0.2.0+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
|
||||||
when='@xsdk-0.2.0')
|
when='@xsdk-0.2.0')
|
||||||
depends_on('trilinos@develop+xsdkflags+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
|
depends_on('trilinos@develop+xsdkflags+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
|
||||||
when='@develop')
|
when='@develop')
|
||||||
|
|
||||||
|
depends_on('petsc@3.8.2+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+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~boost+double~int64',
|
||||||
when='@xsdk-0.2.0')
|
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~boost+double~int64',
|
||||||
when='@develop')
|
when='@develop')
|
||||||
|
|
||||||
|
depends_on('pflotran@xsdk-0.3.0', when='@0.3.0')
|
||||||
depends_on('pflotran@xsdk-0.2.0', when='@xsdk-0.2.0')
|
depends_on('pflotran@xsdk-0.2.0', when='@xsdk-0.2.0')
|
||||||
depends_on('pflotran@develop', when='@develop')
|
depends_on('pflotran@develop', when='@develop')
|
||||||
|
|
||||||
|
depends_on('alquimia@xsdk-0.3.0', when='@0.3.0')
|
||||||
depends_on('alquimia@xsdk-0.2.0', when='@xsdk-0.2.0')
|
depends_on('alquimia@xsdk-0.2.0', when='@xsdk-0.2.0')
|
||||||
depends_on('alquimia@develop', when='@develop')
|
depends_on('alquimia@develop', when='@develop')
|
||||||
|
|
||||||
|
depends_on('sundials@3.1.0~int64+hypre', when='@0.3.0')
|
||||||
|
depends_on('plasma', when='@0.3.0 %gcc@4.9:')
|
||||||
|
depends_on('magma', when='@0.3.0 +cuda')
|
||||||
|
|
||||||
# xSDKTrilinos depends on the version of Trilinos built with
|
# xSDKTrilinos depends on the version of Trilinos built with
|
||||||
# +tpetra which is turned off for faster xSDK
|
# +tpetra which is turned off for faster xSDK
|
||||||
# depends_on('xsdktrilinos@xsdk-0.2.0', when='@xsdk-0.2.0')
|
# depends_on('xsdktrilinos@xsdk-0.2.0', when='@xsdk-0.2.0')
|
||||||
# depends_on('xsdktrilinos@develop', when='@develop')
|
# depends_on('xsdktrilinos@develop', when='@develop')
|
||||||
|
|
||||||
variant('debug', default=False, description='Compile in debug mode')
|
|
||||||
|
|
||||||
# How do we propagate debug flag to all depends on packages ?
|
# How do we propagate debug flag to all depends on packages ?
|
||||||
# If I just do spack install xsdk+debug will that propogate it down?
|
# If I just do spack install xsdk+debug will that propogate it down?
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue