+ The additional patch enables a non-optimized random123 code path that will
work on ARM architectures. This solution is provided only for version 1.09 to
allow the most current version of Random123 to function on ARM architectures.
+ A more complete, long term solution will be the addition of a native ARM
intrinsics-based implementation of random123. This solution is being worked
on but it is several weeks or months away. Once the full implementation is
available it will be provided to the author/maintainer of Random123.
The default install for llvm should just be the common typical case, i.e.
support for local host and cpu architectures. Enablingsupport for the wide
array of auxiliary architectures should be explicit rather than implicit.
Add two functions to the EnvironmentModifications object to help
users sanitize environment variables in their package definitions:
* deprioritize_system_paths: this keeps system paths in the
environment variable but moves them to the end.
* prune_duplicate_paths: remove any duplicate paths from the
variable
This includes testing for the new functions as well as for
(previously-untested) old convenience functions for environment
variable manipulation.
This also adds special handling for bash functions so they
will be defined when the exported environment file is sourced.
* Mesa should depend_on('glproto')
The mesa package refers to `GL/glproto.h`. On systems that don't have
the OS packages installed, this leads to failures during the build
[e.g. this comment in
01482](https://github.com/spack/spack/pull/10482#issuecomment-488786745).
This fixes it. Tested on a minimally provisioned CentOS 7.
* Constrain glproto prereq to when +glx
* mesa: make glproto a build only dep
* The 'mkl' variant implementation was not complete and was
preventing the package from building, so remove it.
* The slate.hh file has moved in the 'develop' version (which is
currently the only version of SLATE listed)
* FAODEL: Add FAODEL package to spack
FAODEL (Flexible, Asynchronous, Object Data-Exchange Libraries) is a collection
of software libraries that are used to implement different data management
services on high-performance computing (HPC) platforms. This project is part of
the Advanced Technology Development and Mitigation (ATDM) effort for NNSA's ASC
program at Sandia National Laboratories.
(cherry picked from commit 6afe045d25b5c000b612116a5695aebbec56b61a)
* FAODEL: Update FAODEL package
Dependencies: set minimum versions for boost, cmake and libfabric
Dependencies: add conflict for boost v1.59.0
Patch: add a patch for v1.1803.1
Patch: add a when= for the v1.1811.1 specific patches
Compiler: check for C++11 support in gcc
(cherry picked from commit fb6ed2b3cf20d7e4fff647cba5a70887a78f627f)
* FAODEL: Update FAODEL package
* replace previous maintainers with @tkordenbrock and @craigulmer
* default to shared libs to meet Spack policy
* increase min boost version to 1.60.0 and remove boost 1.59.0 conflict
* replace complex version check with conflict for gcc <= 4.8.0 (C++11 support required)
* set type=build for cmake
* enable googletest for all versions with type=build
* enable tests for for all versions except when MPI is disabled
* FAODEL: Update FAODEL package
* add version v1.1811.2
* limit comment line length
Fixes#11335
Update the Spack compiler wrappers to add the headerpad_max_install_names
linker flag on MacOS. This allows the install_name_tool to rewrite
the RPATH entry of the binary to be longer if needed. This is
primarily useful for creating and distributing binary caches of
packages (i.e. using the "spack buildcache" command); binary caches
created on MacOS before this commit may not successfully relocate
(if the target root path is larger).
* Added a function that concretizes specs together
* Specs concretized together are copied instead of being referenced
This makes the specs different objects and removes any reference to the
fake root package that is needed currently for concretization.
* Factored creating a repository for concretization into its own function
* Added a test on overlapping dependencies
* arm-forge: add all available versions
* Add TODO for the version hell
* Fix linting
Looks like 'black' formatter isn't Spack friendly
* Fix versions ordering
* Remove obsolete package (allinea-forge → arm-forge)
* Set mpi compiler wrappers using CC/etc. variables as recommended
at https://spack.readthedocs.io/en/latest/packaging_guide.html#compiler-wrappers
rather than setting CMake variables like -DCMAKE_C_COMPILER
* Use convenience functionality provided by inherited CMakePackage to
export all compiler flags as CMake options
* Remove old Singularity versions, add version 3.1.1
* Recent versions of Singularity build with go rather than autotools:
update dependencies and build logic
* Move old Singularity versions to new singularity-legacy package
which uses the autotools build system
* Some binaries built by Singularity need to be run as root: include
a script that the user can run after the Spack Singularity install
to change these permissions.
* The Singularity go build expects to work with a custom stage
directory relative to GOPATH: override the stage phase to create
this expected path.
* Update Singularity install config to point to Spack-installed
makesquashfs dependency
Based on the LLVM documentation [1], Python is used to run the automated
test suite. Therefore is it always a dependency for LLVM. However, if
build without Python (~python), we limit it to a build time dependency.
Note that py-lit is not added as a spack dependency even though it is
available as a spack package. This is because it is already included
in llvm and llvm is difficult to configure using an external py-lit
(several CMake variables to set correctly). Additionally, having
py-lit as a spack dependency adds Python as a runtime dependency
for llvm even though it is not required at runtime.
[1] https://llvm.org/docs/GettingStarted.html#requirements
* extend Version class so that 2.0 > 1.develop > 1.1
* add concretization tests, with preferences and preferred version.
* add master, head, trunk as develop-like versions, develop > master > head > trunk
* update documentation on version comparison
* Version 1.0.0 was released and the master branch tracks the
latest release.
* Multiple issues with MacOS have been fixed. The static patch is
now unneeded.
* Add support for building Ginkgo with the full Block Jacobi
performance (compilation takes a long time).
* Do not build anything which is not useful for the installation.
Namely, documentation, benchmarks, examples and tests.
* mesa: re-writen to new meson build system
* xorg-server: Remove unneeded mesa dependency
* glx: provide the virtual GLX package
* Convert most "mesa" dependencies to use virtual gl and glx dependencies
* mesa: Switch to always building from the git repo instead of a tarball
* Use gl and glx version ranges instead of exact versions
* glx: provide a default package
* add auto to swr variant
* Revert "add auto to swr variant"
This reverts commit 2e7cd8a8aca07767c00657d0d09985ddd6306883.
* update mesa package to version 19.0
* set +glx by default only when running on linux
* fix style issues in geant4 package
* remove virtual package "egl"