summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-11-12macos: update build process to use spawn instead of fork (#18205)Peter Scheibel27-560/+1049
Spack creates a separate process to do package installation. Different operating systems and Python versions use different methods to create it but up until Python 3.8 both Linux and Mac OS used "fork" (which duplicates process memory, file descriptor table, etc.). Python >= 3.8 on Mac OS prefers creating an entirely new process (referred to as the "spawn" start method) because "fork" was found to cause issues (in other words "spawn" is the default start method used by multiprocessing.Process). Spack was dependent on the particular behavior of fork to replicate process memory and transmit file descriptors. This PR refactors the Spack internals to support starting a child process with the "spawn" method. To achieve this, it makes the following changes: - ensure that the package repository and other global state are transmitted to the child process - ensure that file descriptors are transmitted to the child process in a way that works with multiprocessing and spawn - make all the state needed for the build process and tests picklable (package, stage, etc.) - move a number of locally-defined functions into global scope so that they can be pickled - rework tests where needed to avoid using local functions This PR also reworks sbang tests to work on macOS, where temporary directories are deeper than the Linux sbang limit. We make the limit platform-dependent (macOS supports 512-character shebangs) See: #14102
2020-11-12suite-sparse: add deps: mpfr, gmp (#19883)eugeneswalker1-0/+2
2020-11-12py-vermin: add latest version 1.0.3 (#19886)Morten Kristensen1-1/+2
2020-11-12[acts] conflicts with %gcc@:7 since @0.23: due to c++17 <charconv> (#19881)Wouter Deconinck1-0/+1
2020-11-12Pipelines: Compare target family instead of architecture (#19884)Scott Wittenburg2-1/+18
In compiler bootstrapping pipelines, we add an artificial dependency between jobs for packages to be built with a bootstrapped compiler and the job building the compiler. To find the right bootstrapped compiler for each spec, we compared not only the compiler spec to that required by the package spec, but also the architectures of the compiler and package spec. But this prevented us from finding the bootstrapped compiler for a spec in cases where the architecture of the compiler wasn't exactly the same as the spec. For example, a gcc@4.8.5 might have bootstrapped a compiler with haswell as the architecture, while the spec had broadwell. By comparing the families instead of the architecture itself, we know that we can build the zlib for broadwell with the gcc for haswell.
2020-11-12new release: cdo-1.9.9 (#19876)Brian Spilner1-0/+1
2020-11-12elpa: Fix for aarch64 (#19872)t-nojiri1-0/+3
2020-11-12xsdk@0.6.0 (#19846)Satish Balay5-14/+103
Update: hypre@2.20.0 mfem@4.2.0 superlu-dist@6.4.0 trilinos@13.0.1 datatransferkit@3.1-rc2 petsc@3.14.1 dealii@9.2.0 pflotran@xsdk-0.6.0 alquimia@xsdk-0.6.0 sundials@5.5.0 plasma@20.9.20 magma@2.5.4 amrex@20.10 slepc@3.14.0 omega-h@9.32.5 strumpack@5.0.0 pumi@2.2.5 tasmanian@7.3 phist@1.9.3 ginkgo@1.3.0 py-libensemble@0.7.1 precice@2.1.1 butterflypack@1.2.1 New: heffte@2.0.0 slate@2020.10.00 Variants: datatransferkit heffte slate petsc: enable +cuda sundials: enable +cuda +trilinos strumpack: enable +cuda
2020-11-12Package/r bigalgebra (#19826)Desmond3-0/+61
* py-json-get: new package at 1.1.1 * py-json-get: new package at 1.1.1 * r-bigalgebra: new package at 0.8.4 * r-bigalgebra: new package at 0.8.4 with corrections * Added an additional change to tarball and dependencies * removing accidentally added file * Added tarball that uses mirror and removed redundant dependencies * Fixed version and added dep. * Updated checksum * Fixed urls * Added list_url Co-authored-by: las_djorton <las_djorton@build.las.iastate.edu>
2020-11-12SuperLU-Dist: Add CUDA variant (#19847)Pieter Ghysels1-2/+13
* Add CUDA support to superlu-dist * Use spec['cuda'].libs.directories[0] iso spec['cuda'].prefix.lib so it works for both lib and lib64 The suggested: args.append('-DTPL_CUDA_LIBRARIES=' + spec['cuda'].libs.ld_flags) did not work because it does not link with cuBLAS.
2020-11-12Fix scalapack build error (#19824)Jean-Paul Pelteret1-3/+14
2020-11-12kokkos add "graviton" to spack_micro_arch_map (#19869)Satish Balay1-0/+2
* kokkos add "graviton" to spack_micro_arch_map * also add "graviton2"
2020-11-11Keep output machine readable using `spack find --format` in an env (#19698)Greg Becker2-2/+4
Currently, full JSON output is the only machine readable option for `spack find` in an environment. `spack find --format` is also designed to be machine readable, but we print extra headers in environments. -[x] don't print headers in `spack find` output when in an environment
2020-11-11yaml-cpp: Improve shared library building (#19866)Dr. Christian Tacke1-12/+5
* No version of yaml-cpp in spack can build shared AND static libraries at the same time. So drop the "static" variant and let "shared" handle that alone. Or in other words: No version handles the BUILD_STATIC_LIBS flag. * The flag for building shared libraries changed from BUILD_SHARED_LIBS to YAML_BUILD_SHARED_LIBS at some point. So just pass both flags. * Use the newer define_from_variant.
2020-11-11fix typo wrt target=graviton (#19865)Satish Balay2-2/+2
* fix typo wrt target=graviton This fixes spack build on aarch64 box * update archspec hash
2020-11-11spack env deactivate/spack unload: demote warning message to debug message ↵Massimiliano Culpo1-4/+4
(#19864)
2020-11-11msgpack-c: Add Version 3.1.1 (#19863)Dr. Christian Tacke1-0/+1
2020-11-11New package: py-cuml (#19474)Jen Herting1-0/+42
* [py-cuml] created template * [py-cuml] setup phases and added build_directory * [py-cuml] added dependencies * [py-cuml] depends on libcumlprims * [py-cuml] requiring multigpu version * [py-cuml] figuring out the best way to get concretization to happen cleanly * [py-cuml] removed singlegpu variat from libcuml * [py-cuml] depends on py-cudf * [py-cuml] depends on cupy * [py-cuml] fixed typoo * [py-cuml] depends on py-scipy * [py-cuml] depends on py-treelite * [py-cuml] py-treelite is now a variant of treelite * [py-cuml] depends on joblib * [py-cuml] depends on py-scikit-learn * [py-cuml] flake8 * [py-cuml] added homepage and description. removed fixmes * [py-cuml] updated checksum
2020-11-11Restore `spack checksum` verbosity (#19480)Adam J. Stewart1-6/+6
2020-11-11Adding support to build ucx development branch (#18089)Filippo Spiga1-1/+9
* Enabling build of v1.9.x development branch. * v1.8.1 is the preferred (stable) version. * Fixing code style Co-authored-by: Filippo Spiga <fspiga@nvidia.com> Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2020-11-11New package: libcuml (#19471)Jen Herting1-0/+45
* [libcuml] created template * [libcuml] set cmake list dir * [libcuml] added some dependencies * [libcuml] adding some default cmake args * [libcuml] depends on nccl * [libcuml] temporarily disabling cuml prims building * [libcuml] building internal faiss? * [libcuml] added dependency treelite * [libcuml] depends on google_test * [libcuml] forcing single gpu per: https://github.com/rapidsai/cuml/issues/2528#issuecomment-657675957 * [libcuml] added prims? * [libcuml] adding libcumlcomms ? * Revert "[libcuml] adding libcumlcomms ?" This reverts commit 0e0765b7d4d27bdc01d54d24e8c2f9eac1cb4eb2. * Revert "[libcuml] added prims?" This reverts commit d0b1f868ea5e425cc7d1a5ce7adc642258dfc38e. * [libcuml] added varient single gpu * [libcuml] removed variant singlegpu * [libcuml] added homepage and description. removed fixmes * [libcuml] flake8 * [libcuml] cleaning up leftover commented out code * [libcuml] updated checksum added ucx dependency
2020-11-11add spack recipe for rocm version of the tensile (#19669)Sreenivasa Murthy Kolam2-0/+92
* add spack recipe for rocm version of the tensile * fix flake8 error
2020-11-11axom: devtools require llvm clang-format (#19740)Greg Becker1-16/+4
* follow-up to previous PR * build type
2020-11-11[podio] set pythonpath correctly (#19779)vvolkl1-0/+3
* [podio] put python dir in python path * Update var/spack/repos/builtin/packages/podio/package.py Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com> Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2020-11-11suite-sparse: add versions 5.8.0 and 5.8.1 (#19812)Kai Torben Ohlhus1-1/+3
Update homepage URL and see release notes: - https://github.com/DrTimothyAldenDavis/SuiteSparse/releases/tag/v5.8.1 - https://github.com/DrTimothyAldenDavis/SuiteSparse/releases/tag/v5.8.0
2020-11-11arbor: Add version 0.4 (#19839)t-nojiri1-0/+3
2020-11-11Add optional deps mpmath and deap to py-libensemble (#19852)Stephen Hudson1-0/+4
2020-11-11Metall package: add v0.6 (#19854)Keita Iwabuchi1-0/+1
* Metall: add version 0.2 * Add Metall v0.3 * Update Metall package to v0.4 and v0.5. * Metall package: add v0.6
2020-11-11ace: Add version 6.5.12 (#19856)t-nojiri1-0/+1
2020-11-11openfoam: remove mplibUSER provisioning (#19861)Mark Olesen3-16/+16
- has never been used by the spack package or by the upstream package Co-authored-by: Mark Olesen <Mark.Olesen@esi-group.com>
2020-11-11ROCm3.9 recipe for rocblas, hipblas & rocsolver (#19841)Ganesh Kumar3-6/+14
* ROCm3.9 recipe for rocblas, hipblas & rocsolver * review comments * review comments Co-authored-by: root <root@mlseqa-hyd-virt-srv-07.amd.com>
2020-11-10Binary caching: fix buildcache list (multiple invocations) (#19848)Peter Scheibel1-12/+7
When invoking "buildcache list" multiple times, the command was reporting no specs in the cache the second time around. The presence of an up-to-date index was causing the internal representation to be left un-initialized.
2020-11-10soapdenovo2: add 242 (#19849)Justin S1-0/+1
2020-11-10votca-xtp: update deps (#19850)Christoph Junghans1-0/+1
2020-11-10abi-dumper: Add phases (#19807)t-nojiri1-0/+2
2020-11-10py-torchvision: gather correct cuda_arch setting from py-torch (#19845)Phil Tooley1-0/+5
* py-torchvision: gather correct cuda_arch setting from py-torch dependency * py-torchvision: remove unneeded variant
2020-11-10py-scipy: set F90 for all compilers (#19818)Daryl W. Grunau1-0/+3
* set F90 when compiling with Intel * set F90 for all compilers Co-authored-by: Daryl W. Grunau <dwg@lanl.gov>
2020-11-10[geant4] depends_on glu when +opengl (#19821)Wouter Deconinck1-0/+1
2020-11-09tutorial cmd: fix gpg invocation (#19829)Greg Becker1-1/+1
2020-11-09Fix minor typo in function comment (#19804)Adam J. Stewart1-1/+1
2020-11-09py-gpytorch: add v1.2.1 (#19796)Adam J. Stewart1-1/+6
2020-11-09saga-gis: add "depends_on('libsm', type='link')" (#19805)h-denpo1-0/+1
2020-11-09openblas: Add versions 0.3.11 and 0.3.12 (#19811)Kai Torben Ohlhus1-0/+2
[OpenBLAS 0.3.11](https://github.com/xianyi/OpenBLAS/releases/tag/v0.3.11) and [OpenBLAS 0.3.12](https://github.com/xianyi/OpenBLAS/releases/tag/v0.3.12) were released.
2020-11-09[docs] getting_started.rst: fix typo (#19815)Emir İşman1-1/+1
2020-11-09[opencascade] depends_on libxext, libxmu, libxt, libxi (#19823)Wouter Deconinck1-0/+4
* [opencascade] depends_on libxmu and libxi * [opencascade] depends_on libxext and libxt
2020-11-09Trilinos: add 13.0.1 (#19822)Satish Balay1-1/+3
2020-11-09spiral: new version 8.2.0 (#19794)Erik Schnetter1-0/+1
* spiral: new version 8.2.0 * spiral: Sort versions anti-chronologically
2020-11-09py-pygps: new package. (#19774)Toyohisa Kameyama1-0/+22
* py-pygps: new package. * fixed url.
2020-11-09py-vermin: add latest version 1.0.2 (#19820)Morten Kristensen1-1/+2
2020-11-09add sundials 5.5.0 (#19819)Satish Balay2-2/+84
(with xsdk build fixes, including mkl, superlu-dist) Co-authored-by: Cody J. Balos <balos1@llnl.gov>