summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-02-23New splice method in class Spec. (#20262)Nathan Hanford6-0/+232
* Spec.splice feature Construct a new spec with a dependency swapped out. Currently can only swap dependencies of the same name, and can only apply to concrete specs. This feature is not yet attached to any install functionality, but will eventually allow us to "rewire" a package to depend on a different set of dependencies. Docstring is reformatted for git below Splices dependency "other" into this ("target") Spec, and return the result as a concrete Spec. If transitive, then other and its dependencies will be extrapolated to a list of Specs and spliced in accordingly. For example, let there exist a dependency graph as follows: T | \ Z<-H In this example, Spec T depends on H and Z, and H also depends on Z. Suppose, however, that we wish to use a differently-built H, known as H'. This function will splice in the new H' in one of two ways: 1. transitively, where H' depends on the Z' it was built with, and the new T* also directly depends on this new Z', or 2. intransitively, where the new T* and H' both depend on the original Z. Since the Spec returned by this splicing function is no longer deployed the same way it was built, any such changes are tracked by setting the build_spec to point to the corresponding dependency from the original Spec. Co-authored-by: Nathan Hanford <hanford1@llnl.gov>
2021-02-23redland bindings: new package at v1.0.17.1 (#21838)ketsubouchi1-0/+34
2021-02-23"spack build-env" searches env for relevant spec (#21642)Peter Scheibel5-4/+117
If you install packages using spack install in an environment with complex spec constraints, and the install fails, you may want to test out the build using spack build-env; one issue (particularly if you use concretize: together) is that it may be hard to pass the appropriate spec that matches what the environment is attempting to install. This updates the build-env command to default to pulling a matching spec from the environment rather than concretizing what the user provides on the command line independently. This makes a similar change to spack cd. If the user-provided spec matches multiple specs in the environment, then these commands will now report an error and display all matching specs (to help the user specify). Co-authored-by: Gregory Becker <becker33@llnl.gov>
2021-02-23reduce strictness of directory layout spec-equality check (#21869)Peter Scheibel1-1/+7
2021-02-23lbann: updated python dependencies and new variants (#21863)Brian Van Essen2-18/+31
* Made DiHydrogen a required dependencies on newer versions of LBANN. Added an explicit variant for enabling Boost-dependent callbacks. Updated the separation for embedded Python and the Python front end code and associated dependencies. * Bugfix on ROCm include in DiHydrogen
2021-02-23octave-arduino: new package at v0.2.0 (#21874)Olivier Cessenat1-0/+19
2021-02-23Drop compiler variables from spack load (#21699)Harmen Stoppels2-11/+0
Drops: * C_INCLUDE_PATH * CPLUS_INCLUDE_PATH * LIBRARY_PATH * INCLUDE We already decided to use C_INCLUDE_PATH, CPLUS_INCLUDE_PATH, INCLUDE over CPATH here: https://github.com/spack/spack/pull/14749 However, none of these flags apply to Fortran on Linux. So for consistency it seems better to make the user use -I and -L flags by hand or through pkgconfig.
2021-02-23margo is now mochi-margo (#21851)eugeneswalker1-1/+1
unifyfs dependency margo is now mochi-margo following deprecation commit c55406a
2021-02-23octave-instrctl: new package at v0.3.1 (#21845)Olivier Cessenat1-0/+18
2021-02-23octave-optim: add v1.6.1 (#21844)Olivier Cessenat1-0/+1
2021-02-23octave-struct: add v1.0.17 (#21846)Olivier Cessenat1-0/+1
2021-02-23octave-splines: new version 1.3.3 (#21847)Olivier Cessenat1-0/+1
2021-02-23xsdk: update build to follow strumpack change (#21871)Satish Balay1-4/+4
Change happened in 671f0ff32b3ee2fdf7cae71864073e974b804c23
2021-02-23octave-signal: new package at v1.4.1 (#21872)Olivier Cessenat1-0/+18
2021-02-23octave-statistics: new package at v1.4.2 (#21873)Olivier Cessenat1-0/+18
2021-02-23openblas: add "locking" variant, updated blaspp (#21770)Axel Huebl2-1/+15
BlasPP by ECP SLATE will fail to install by default (`spack install blaspp`) because: - the default BLAS installation in Spack is OpenBLAS - BlasPP conflicts with `threads=none` for all recent OpenBLAS releases OpenBLAS introduced a threadsafe compile option with 0.3.7+ aka `USE_LOCKING`: ``` 61 # If you want to build a single-threaded OpenBLAS, but expect to call this 62 # from several concurrent threads in some other program, comment this in for 63 # thread safety. (This is done automatically for USE_THREAD=1 , and should not 64 # be necessary when USE_OPENMP=1) 65 # USE_LOCKING = 1 ``` According to tests, with `spack install --test root blaspp`, this exactly addresses the issues in BlasPP tests. It also seems to be a good option to set by default for OpenBLAS and users that do not need this safety net can always disable it. Solve issues with newer OpenBLAS by requiring `+locking` over none-default threading options.
2021-02-22Improve error message for inconsistencies in package.py (#21811)Massimiliano Culpo4-5/+66
* Improve error message for inconsistencies in package.py Sometimes directives refer to variants that do not exist. Make it such that: 1. The name of the variant 2. The name of the package which is supposed to have such variant 3. The name of the package making this assumption are all printed in the error message for easier debugging. * Add unit tests
2021-02-22Merge tag 'v0.16.1' into developTodd Gamblin2-2/+31
2021-02-22Adding support for ROCm for the LBANN software stack. (#21716)Brian Van Essen4-8/+92
* Also removed LBANN CUDA CMake flags that are set by the version of Hydrogen that is compiled against. * Updated recipes to use HWLOC 2.3 with ROCm to enable topology awareness. Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2021-02-22respect -k/verify-ssl-false in _existing_url method (#21864)Greg Becker1-0/+2
2021-02-22py-fenics-ffc: new package to support fenics (#21862)emai-imcs1-0/+39
* new Python FFC package to support FEniCS 2018 onwards * added py-dijitso dependency * added fenics python ffc package
2021-02-22py-torch: ensure libtorch_global_deps is linked with the c++ library (#21860)Andrew W Elble1-0/+7
* py-torch: ensure libtorch_global_deps is linked with the c++ library * add comment with upstream issue
2021-02-22amrex: add +pic variant (#21849)eugeneswalker1-0/+3
2021-02-22STRUMPACK: Add e4s testsuite-inspired smoke test (#21705)Sergei Shudler1-2/+62
2021-02-22New Package: octave-quaternion (#21855)Olivier Cessenat1-0/+20
2021-02-22New Package: octave-io (#21850)Olivier Cessenat1-0/+22
2021-02-22New Package: octave-gsl (#21854)Olivier Cessenat1-0/+21
2021-02-22New Package: octave-quaternion (#21856)Olivier Cessenat1-0/+18
2021-02-22New Package: octave-symbolic (#21857)Olivier Cessenat1-0/+21
2021-02-22Fix typo (#21859)Harmen Stoppels1-1/+1
2021-02-22New package: py-dask-xgboost (#21583)a-saitoh-fj1-0/+25
* New package: py-dask-xgboost * py-dask-xgboost: Fixed what was pointed out
2021-02-22py-dask-ml: add new package. (#21831)Tomoki, Karatsu2-0/+88
* py-dask-ml: add new package. * Modified to PythonPackage. * Remove test-related dependencies. * Changed to execute docs build after install.
2021-02-22redland: new package at v 1.0.17 (#21837)ketsubouchi1-0/+21
2021-02-22rasqal: add new package at v0.9.33 (#21836)ketsubouchi1-0/+22
2021-02-22harfbuzz: allows compilation standard being set properly for gcc (#21810)Olivier Cessenat1-1/+10
2021-02-22mapnik: now compiles smoothly on recent gcc thanks to harfbuzz package ↵Olivier Cessenat1-2/+0
altered (#21812)
2021-02-22eigenexa: fix build error and add test method (#21692)takanori-ihara4-1/+90
2021-02-22yoda: add v1.8.5, tighten cython dependency (#21832)iarspider1-1/+6
2021-02-22qrupdate: use the requested compiler from Spack (#21841)Olivier Cessenat1-3/+19
qrupdate did hard set FC=gfortran Parallel compilation is now allowed calling $(MAKE) instead of make for subprocess see: https://stackoverflow.com/questions/24818095/warning-forced-in-submake-in-parallel-execution-of-make The build phase is split since the process always requires a target.
2021-02-22octave: add v6.2.0 (#21833)Olivier Cessenat1-0/+1
2021-02-22pfapack: forbid building in parallel (#21826)kuramoto-fj1-0/+2
There are cases where parallel build fails.
2021-02-22raptor2: new package at v2.0.15 (#21835)ketsubouchi1-0/+17
2021-02-22nim: add v1.4.2, deprecated old versions (#21790)Tomoyasu Nojiri1-3/+5
2021-02-22genesis: New package. (#21183)takanori-ihara3-0/+740
* genesis: New package. * fujitsu-ssl2: fix unit test error * genesis: Fix for comments and add test method * genesis: Fix for comments * genesis: Fix for comments
2021-02-22py-dask-glm: Add new package. (#21828)Tomoki, Karatsu1-0/+24
2021-02-21py-nbconvert: add function 'setup_dependent_build_environment'. (#21827)Tomoki, Karatsu1-0/+9
* py-nbconvert: add function 'setup_dependent_build_environment'. * add 'setup_dependent_run_environment' * add 'setup_run_environment'.
2021-02-20libblastrampoline: new package (#21825)Mosè Giordano1-0/+21
* libblastrampoline: new package * Apply suggestions from code review Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com> Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2021-02-20Add checksum for form 4.1 (#21808)iarspider1-0/+1
2021-02-20masurca: add version 4.0.1 (#21816)downloadico1-1/+7
Now using the install.sh script to install into the prefix.
2021-02-20openmpi: add variant for using internal hwloc (#19109)Howard Pritchard1-4/+6
It turns out there are certain cases where having Open MPI use an external hwloc messes up other applications that also rely on hwloc, but a different version. Signed-off-by: Howard Pritchard <howardp@lanl.gov>