`setup_dependent_build_environment(self, env, dependent_spec)` does not have a variable `spec`.
This causes several issues right now:
```console
==> Installing gaudi-36.6-cjjrpjwpcqrtojyrdqml3jpzkbn55hpb
==> No binary for gaudi-36.6-cjjrpjwpcqrtojyrdqml3jpzkbn55hpb found: installing from source
==> Error: NameError: name 'spec' is not defined
/home/wdconinc/git/spack/var/spack/repos/builtin/packages/root/package.py:614, in setup_dependent_build_environment:
611 env.prepend_path("ROOT_INCLUDE_PATH", dependent_spec.prefix.include)
612 if "+rpath" not in self.spec:
613 env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib.root)
>> 614 if "platform=darwin" in spec:
615 # Newer deployment targets cause fatal errors in rootcling
616 env.unset("MACOSX_DEPLOYMENT_TARGET")
```
On PR pipelines we need to override the buildcache destination to
point to the "spack-binaries-prs" bucket, otherwise, those pipelines
try to push to the default mirror in a bucket for which they don't
have write permission.
This PR fixes the performance regression reported in #31985 and a few
other issues found while refactoring the spack mirror create command.
Modifications:
* (Primary) Do not require concretization for
`spack mirror create --all`
* Forbid using --versions-per-spec together with --all
* Fixed a few issues when reading specs from input file (specs were
not concretized, command would fail when trying to mirror
dependencies)
* Fix issue with default directory for spack mirror create not being
canonicalized
* Add more unit tests to poke spack mirror create
* Skip externals also when mirroring environments
* Changed slightly the wording for reporting (it was mentioning
"Successfully created" even in presence of errors)
* Fix issue with colify (was not called properly during error
reporting)
* [py-pynndescent] New package
* [py-pynndescent] Removed white space
* [py-pynndescent] fixed dependencies
* [py-pynndescent] flake8
* [py-pynndescent] Import update
Co-authored-by: James A Zilberman <jazrc@rit.edu>
- [x] Add release v0.2 of the AML package, deprecate v0.1, and add support for
OpenCL, HIP, and CUDA variants of the library. Also update repo and
release URL, as the previous one is not accessible anymore.
- [x] aml: add oneapi-level-zero support
- [x] Change openmp flags to force compatibility when compiling with
intel-oneapi compilers.
`LD_LIBRARY_PATH` can break system executables (e.g., when an enviornment is loaded) and isn't necessary thanks to `RPATH`s. Packages that require `LD_LIBRARY_PATH` can set this in `setup_run_environment`.
- [x] Prefix inspections no longer set `LD_LIBRARY_PATH` by default
- [x] Document changes and workarounds for people who want `LD_LIBRARY_PATH`
These changes make many packages build on nixos where nearly nothing
comes from /bin or /usr/bin (the only things in "system locations" are
/bin/sh and /usr/bin/env, all the rest is found through PATH).
Many configuration scripts hardcode /usr/bin/file instead of using the
one from PATH. This patches them to use file from PATH.