Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
the install tree has not changed. (#17455)
|
|
still exist after running patchelf/otool (#17418)
|
|
* add tutorial setup script to share/spack
* Add check for Ubuntu 18, fix xvda check, fix apt-get errors
- now works on t2.micro, t2.small, and m instances
- apt-get needs retries around it to work
Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
|
|
A bug was introduced in #13100 where ChildErrors would be redundantly
printed when raised during a build. We should eventually revisit error
handling in builds and figure out what the right separation of
responsibilities is for distributed builds, but for now just skip
printing.
- [x] SpackErrors were designed to be printed by the forked process, not
by the parent, so check if they've already been printed.
- [x] update tests
|
|
|
|
|
|
|
|
Fixes #17299
Cray Shasta systems appear to use an unmodified Sles or other Linux operating system on the backend (like Cray "Cluster" systems and unlike Cray "XC40" systems that use CNL).
This updates the CNL version detection to properly note that this is the underlying OS instead of CNL and delegate to LinuxDistro.
|
|
(#17608)
* environment-views: fix bug where missing recipe/repo breaks env commands
When a recipe or a repo has been removed from Spack and an environment
is active, it causes the view activation to crash Spack before any
commands can be executed. Further, the error message it not at all clear
in explaining the issue.
This forces view regeneration to always start from scratch to avoid the
missing package recipes, and defaults add_view=False in main for views activated
by the `spack -e` option.
* add messages to env status and deactivate
Warn users that a view may be corrupt when deactivating an environment
or checking its status while active. Updated message for activate.
* tests for view checking
Co-authored-by: Gregory Becker <becker33@llnl.gov>
|
|
|
|
* switch from bool to int debug levels
* Added debug options and changed lock logging to use more detailed values
* Limit installer and timestamp PIDs to standard debug output
* Reduced verbosity of fetch/stage/install output, changing most to debug level 1
* Combine lock log methods; change build process install to debug
* Changed binary cache install messages to extraction messages
|
|
|
|
* bugfix: make compiler preferences slightly saner
This fixes two issues with the way we currently select compilers.
If multiple compilers have the same "id" (os/arch/compiler/version), we
currently prefer them by picking this one with the most supported
languages. This can have some surprising effects:
* If you have no `gfortran` but you have `gfortran-8`, you can detect
`clang` that has no configured C compiler -- just `f77` and `f90`. This
happens frequently on macOS with homebrew. The bug is due to some
kludginess about the way we detect mixed `clang`/`gfortran`.
* We can prefer suffixed versions of compilers to non-suffixed versions,
which means we may select `clang-gpu` over `clang` at LLNL. But,
`clang-gpu` is not actually clang, and it can break builds. We should
prefer `clang` if it's available.
- [x] prefer compilers that have C compilers and prefer no name variation
to variation.
* tests: add test for which()
|
|
|
|
Apple's gcc is really clang. We previously ignored it by default but
there was a regression in #17110.
Originally we checked for all clang versions with this, but I know of
none other than `gcc` on macos that actually do this, so limiting to
`apple-clang` should be ok.
- [x] Fix check for `apple-clang` in `gcc.py` to use version detection
from `spack.compilers.apple_clang`
|
|
|
|
Ensure compilers installed from buildcache are registered.
|
|
|
|
The `spack-build-env.txt` file may contains many secrets, but the obvious one is the private signing key in `SPACK_SIGNING_KEY`. This file is nonetheless uploaded as a build artifact to gitlab. For anyone running CI on a public version of Gitlab this is a major security problem. Even for private Gitlab instances it can be very problematic.
Co-authored-by: Scott Wittenburg <scott.wittenburg@kitware.com>
|
|
* llvm-flang Only build offload code if cuda enabled
The current version executes `cmake(*args)` always as part of the post install. If device offload is not part of the build, this results in referencing `args` without it being set and the error:
```
==> Error: UnboundLocalError: local variable 'args' referenced before assignment
```
Looking at prevoous version of `llvm-package.py` this whole routine appears to be only required for offload, some indent `cmake/make/install` to be under the `if`.
* Update package.py
Add comment
|
|
* clear mpi env vars
|
|
|
|
The error message was not updated when the behavior of Spack environments
was changed to not automatically activate the local environment in #17258.
The previous error message no longer makes sense.
|
|
When Spack installs a package, it stores repository package.py files
for it and all of its dependencies - any package with a Spack metadata
directory in its installation prefix.
It turns out this was too broad: this ends up including external
packages installed by Spack (e.g. installed by another Spack instance).
Currently Spack doesn't store the namespace properly for such packages,
so even though the package file could be fetched from the external,
Spack is unable to locate it.
This commit avoids the issue by skipping any attempt to locate and copy
from the package repository of externals, regardless of whether they
have a Spack repo directory.
|
|
|
|
On Cray platforms, we rely heavily on the module system to figure out
what targets, compilers, etc. are available. This unfortunately means
that we shell out to the `module` command as part of platform
initialization.
Because we run subcommands in a shell, we can get infinite recursion if
`setup-env.sh` and friends are in some init script like `.bashrc`.
This fixes the infinite loop by adding guards around `setup-env.sh`,
`setup-env.csh`, and `setup-env.fish`, to prevent recursive
initializations of Spack. This is safe because Spack never shells out to
itself, so we do not need it to be initialized in subshells.
- [x] add recursion guard around `setup-env.sh`
- [x] add recursion guard around `setup-env.csh`
- [x] add recursion guard around `setup-env.fish`
|
|
* fix binutils deptype for gcc
binutils needs to be a run dependency of gcc
* Fix gcc+binutils build on RHEL7+
static-libstdc++ is not available with system gcc.
Anyway, as it is for bootstraping, we do not really care depending on
a shared libstdc++.
Co-authored-by: Michael Kuhn <michael@ikkoku.de>
|
|
Spack was attempting to calculate abspath on the located config.guess
path even when it was not found (None); this commit skips the abspath
calculation when config.guess is not found.
|
|
it's mpi_compiler_wrappers
and not mpi_compiler._wrappers
fixes 2nd part of #17371
|
|
|
|
The previous fix from #17149 contained a thinko that produced errors for
packages that overwrite configure_directory.
|
|
|
|
|
|
* Activate environment in container file
This PR will ensure that the container recipes will build the spack
environment by first activating the environment.
* Deactivate environment before environment collection
For Singularity, the environment must be deactivated before running the
command to collect the environment variables. This is because the
environment collection uses `spack env activate`.
|
|
|
|
* Don't detect "classic" on Cray to avoid a compiler bug
* add tests
Co-authored-by: Gregory Becker <becker33@llnl.gov>
|
|
* share/spack/setup-env.fish file to setup environment in fish shell
* setup-env.fish testing script
* Update share/spack/setup-env.fish
Co-Authored-By: Elsa Gonsiorowski, PhD <gonsie@me.com>
* Update share/spack/qa/setup-env-test.fish
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* updates completions using `spack commands --update-completion`
* added stderr-nocaret warning
* added fish shell tests to CI system
Co-authored-by: becker33 <becker33@llnl.gov>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Co-authored-by: Elsa Gonsiorowski, PhD <gonsie@me.com>
|
|
* check link dirs for existence
|
|
|
|
Small fix so that immintrin.h gets included properly when the
compiler sets __F16C__. Upstream has been notified.
|
|
|
|
https://github.com/STEllAR-GROUP/hpx/issues/4728#issuecomment-640685308
|
|
|
|
Co-authored-by: Mark Olesen <Mark.Olesen@esi-group.com>
|
|
Added master branch, too
|
|
* [whizard] fix runtime compilers
fix
* [whizard] flake8
* [whizard] add master branch
|
|
* [py-mdanalysis] new version and added dependencies
Original commit message:
Author: Andrew Elble <aweits@rit.edu>
Date: Thu Nov 14 08:35:14 2019 -0500
mdanalysis
* [py-mdanalysis] python is type build/run
* [py-mdanalysis] updated numpy version requirement for all listed versions of py-mdanalysis
* [py-mdanalysis] updated biopython version requirement for all listed versions of py-mdanalysis
* [py-mdanalysis] updated py-griddataformats version requirement for all listed versions of py-mdanalysis
* [py-mdanalysis] gsd only required after version 1.17.0 and requires gsd@1.4.0
* [py-mdanalysis] only requires mmtf-python after version 0.16.0 and requires version 1.0.0
* [py-mdanalysis] has required py-joblib since version 0.16
* [py-mdanalysis] updated py-scipy version requirement for all listed versions of py-mdanalysis
* [py-mdanalysis] updated py-matplotlib version requirement for all listed versions of py-mdanalysis
* [py-mdanalysis] has required py-mock since version 0.18.0
* [py-mdanalysis] py-scikit-learn only required after version 0.16.0 and only for +analysis variant
* [py-mdanalysis] Reordered and reformatted for readability
* [py-mdanalysis] flake8 fixes
* [py-mdanalysis] proactively adding version 1.0.0 while I'm here since major release
* [py-mdanalysis] fixing some forgotten colons
|
|
* [py-crossmap] added version 0.3.9
* [py-crossmap] py-numpy not required
* [py-crossmap] py-cython must be >= 0.17
|
|
(#17141)
* [ruby] fixing path to gcc such that users can use gem to install native gems to their home directory
* [ruby] working on making flake8 happier
* [ruby] Line can't really be split cleanly. Enhancing flake8's calm.
ya learn something new every day...
* [ruby] line break where requested
* [ruby] make raw string
* [ruby] only running for x86_64-linux everything else is untested
* [ruby] finding rbconfig.rb in a cross platform manner
|