summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
Diffstat (limited to 'etc')
-rw-r--r--etc/spack/defaults/bootstrap.yaml32
-rw-r--r--etc/spack/defaults/config.yaml39
-rw-r--r--etc/spack/defaults/cray/modules.yaml21
-rw-r--r--etc/spack/defaults/darwin/packages.yaml15
-rw-r--r--etc/spack/defaults/modules.yaml33
-rw-r--r--etc/spack/defaults/packages.yaml17
6 files changed, 115 insertions, 42 deletions
diff --git a/etc/spack/defaults/bootstrap.yaml b/etc/spack/defaults/bootstrap.yaml
new file mode 100644
index 0000000000..392c48b7bb
--- /dev/null
+++ b/etc/spack/defaults/bootstrap.yaml
@@ -0,0 +1,32 @@
+bootstrap:
+ # If set to false Spack will not bootstrap missing software,
+ # but will instead raise an error.
+ enable: true
+ # Root directory for bootstrapping work. The software bootstrapped
+ # by Spack is installed in a "store" subfolder of this root directory
+ root: ~/.spack/bootstrap
+ # Methods that can be used to bootstrap software. Each method may or
+ # may not be able to bootstrap all of the software that Spack needs,
+ # depending on its type.
+ sources:
+ - name: 'github-actions'
+ type: buildcache
+ description: |
+ Buildcache generated from a public workflow using Github Actions.
+ The sha256 checksum of binaries is checked before installation.
+ info:
+ url: https://mirror.spack.io/bootstrap/github-actions/v0.1
+ homepage: https://github.com/alalazo/spack-bootstrap-mirrors
+ releases: https://github.com/alalazo/spack-bootstrap-mirrors/releases
+ # This method is just Spack bootstrapping the software it needs from sources.
+ # It has been added here so that users can selectively disable bootstrapping
+ # from sources by "untrusting" it.
+ - name: spack-install
+ type: install
+ description: |
+ Specs built from sources by Spack. May take a long time.
+ trusted:
+ # By default we trust bootstrapping from sources and from binaries
+ # produced on Github via the workflow
+ github-actions: true
+ spack-install: true \ No newline at end of file
diff --git a/etc/spack/defaults/config.yaml b/etc/spack/defaults/config.yaml
index d1a7f35a6d..88a19d3222 100644
--- a/etc/spack/defaults/config.yaml
+++ b/etc/spack/defaults/config.yaml
@@ -33,13 +33,6 @@ config:
template_dirs:
- $spack/share/spack/templates
-
- # Locations where different types of modules should be installed.
- module_roots:
- tcl: $spack/share/spack/modules
- lmod: $spack/share/spack/lmod
-
-
# Temporary locations Spack can try to use for builds.
#
# Recommended options are given below.
@@ -107,7 +100,7 @@ config:
# If set to true, Spack will attempt to build any compiler on the spec
# that is not already available. If set to False, Spack will only use
# compilers already configured in compilers.yaml
- install_missing_compilers: False
+ install_missing_compilers: false
# If set to true, Spack will always check checksums after downloading
@@ -115,6 +108,11 @@ config:
checksum: true
+ # If set to true, Spack will fetch deprecated versions without warning.
+ # If false, Spack will raise an error when trying to install a deprecated version.
+ deprecated: false
+
+
# If set to true, `spack install` and friends will NOT clean
# potentially harmful variables from the build environment. Use wisely.
dirty: false
@@ -136,12 +134,18 @@ config:
# enabling locks.
locks: true
-
- # The maximum number of jobs to use when running `make` in parallel,
- # always limited by the number of cores available. For instance:
- # - If set to 16 on a 4 cores machine `spack install` will run `make -j4`
- # - If set to 16 on a 18 cores machine `spack install` will run `make -j16`
- # If not set, Spack will use all available cores up to 16.
+ # The default url fetch method to use.
+ # If set to 'curl', Spack will require curl on the user's system
+ # If set to 'urllib', Spack will use python built-in libs to fetch
+ url_fetch_method: urllib
+
+ # The maximum number of jobs to use for the build system (e.g. `make`), when
+ # the -j flag is not given on the command line. Defaults to 16 when not set.
+ # Note that the maximum number of jobs is limited by the number of cores
+ # available, taking thread affinity into account when supported. For instance:
+ # - With `build_jobs: 16` and 4 cores available `spack install` will run `make -j4`
+ # - With `build_jobs: 16` and 32 cores available `spack install` will run `make -j16`
+ # - With `build_jobs: 2` and 4 cores available `spack install -j6` will run `make -j6`
# build_jobs: 16
@@ -156,11 +160,10 @@ config:
# sufficiently for many specs.
#
# 'clingo': Uses a logic solver under the hood to solve DAGs with full
- # backtracking and optimization for user preferences.
+ # backtracking and optimization for user preferences. Spack will
+ # try to bootstrap the logic solver, if not already available.
#
- # 'clingo' currently requires the clingo ASP solver to be installed and
- # built with python bindings. 'original' is built in.
- concretizer: original
+ concretizer: clingo
# How long to wait to lock the Spack installation database. This lock is used
diff --git a/etc/spack/defaults/cray/modules.yaml b/etc/spack/defaults/cray/modules.yaml
new file mode 100644
index 0000000000..a86a4794f1
--- /dev/null
+++ b/etc/spack/defaults/cray/modules.yaml
@@ -0,0 +1,21 @@
+# -------------------------------------------------------------------------
+# This is the default configuration for Spack's module file generation.
+#
+# Settings here are versioned with Spack and are intended to provide
+# sensible defaults out of the box. Spack maintainers should edit this
+# file to keep it current.
+#
+# Users can override these settings by editing the following files.
+#
+# Per-spack-instance settings (overrides defaults):
+# $SPACK_ROOT/etc/spack/modules.yaml
+#
+# Per-user settings (overrides default and site settings):
+# ~/.spack/modules.yaml
+# -------------------------------------------------------------------------
+modules:
+ prefix_inspections:
+ lib:
+ - LD_LIBRARY_PATH
+ lib64:
+ - LD_LIBRARY_PATH
diff --git a/etc/spack/defaults/darwin/packages.yaml b/etc/spack/defaults/darwin/packages.yaml
index 948e90ea5a..cd3dca60a3 100644
--- a/etc/spack/defaults/darwin/packages.yaml
+++ b/etc/spack/defaults/darwin/packages.yaml
@@ -21,10 +21,10 @@ packages:
- gcc
- intel
providers:
- elf:
- - libelf
- unwind:
- - apple-libunwind
+ elf: [libelf]
+ fuse: [macfuse]
+ unwind: [apple-libunwind]
+ uuid: [apple-libuuid]
apple-libunwind:
buildable: false
externals:
@@ -32,3 +32,10 @@ packages:
# although the version number used here isn't critical
- spec: apple-libunwind@35.3
prefix: /usr
+ apple-libuuid:
+ buildable: false
+ externals:
+ # Apple bundles libuuid in libsystem_c version 1353.100.2,
+ # although the version number used here isn't critical
+ - spec: apple-libuuid@1353.100.2
+ prefix: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
diff --git a/etc/spack/defaults/modules.yaml b/etc/spack/defaults/modules.yaml
index 5ae1b50fda..27b7c45f66 100644
--- a/etc/spack/defaults/modules.yaml
+++ b/etc/spack/defaults/modules.yaml
@@ -14,8 +14,7 @@
# ~/.spack/modules.yaml
# -------------------------------------------------------------------------
modules:
- enable:
- - tcl
+ # Paths to check when creating modules for all module sets
prefix_inspections:
bin:
- PATH
@@ -25,16 +24,6 @@ modules:
- MANPATH
share/aclocal:
- ACLOCAL_PATH
- lib:
- - LIBRARY_PATH
- lib64:
- - LIBRARY_PATH
- include:
- - C_INCLUDE_PATH
- - CPLUS_INCLUDE_PATH
- # The INCLUDE env variable specifies paths to look for
- # .mod file for Intel Fortran compilers
- - INCLUDE
lib/pkgconfig:
- PKG_CONFIG_PATH
lib64/pkgconfig:
@@ -44,6 +33,20 @@ modules:
'':
- CMAKE_PREFIX_PATH
- lmod:
- hierarchy:
- - mpi
+ # These are configurations for the module set named "default"
+ default:
+ # These values are defaulted in the code. They are not defaulted here so
+ # that we can enable backwards compatibility with the old syntax more
+ # easily (old value is in the config yaml, config:module_roots)
+ # Where to install modules
+ # roots:
+ # tcl: $spack/share/spack/modules
+ # lmod: $spack/share/spack/lmod
+ # What type of modules to use
+ enable:
+ - tcl
+
+ # Default configurations if lmod is enabled
+ lmod:
+ hierarchy:
+ - mpi
diff --git a/etc/spack/defaults/packages.yaml b/etc/spack/defaults/packages.yaml
index 06aa41b2d8..aeed54fd08 100644
--- a/etc/spack/defaults/packages.yaml
+++ b/etc/spack/defaults/packages.yaml
@@ -17,38 +17,45 @@ packages:
all:
compiler: [gcc, intel, pgi, clang, xl, nag, fj, aocc]
providers:
- D: [ldc]
awk: [gawk]
blas: [openblas, amdblis]
+ D: [ldc]
daal: [intel-daal]
elf: [elfutils]
fftw-api: [fftw, amdfftw]
- gl: [mesa+opengl, mesa18+opengl, opengl]
- glx: [mesa+glx, mesa18+glx, opengl]
+ flame: [libflame, amdlibflame]
+ fuse: [libfuse]
+ gl: [mesa+opengl, mesa18, opengl]
glu: [mesa-glu, openglu]
+ glx: [mesa+glx, mesa18+glx, opengl]
golang: [gcc]
iconv: [libiconv]
ipp: [intel-ipp]
java: [openjdk, jdk, ibm-java]
jpeg: [libjpeg-turbo, libjpeg]
lapack: [openblas, amdlibflame]
+ lua-lang: [lua, lua-luajit]
mariadb-client: [mariadb-c-client, mariadb]
mkl: [intel-mkl]
mpe: [mpe2]
mpi: [openmpi, mpich]
mysql-client: [mysql, mariadb-c-client]
opencl: [pocl]
+ onedal: [intel-oneapi-dal]
osmesa: [mesa+osmesa, mesa18+osmesa]
+ pbs: [openpbs, torque]
pil: [py-pillow]
pkgconfig: [pkgconf, pkg-config]
rpc: [libtirpc]
scalapack: [netlib-scalapack, amdscalapack]
sycl: [hipsycl]
- szip: [libszip, libaec]
+ szip: [libaec, libszip]
tbb: [intel-tbb]
unwind: [libunwind]
+ uuid: [util-linux-uuid, libuuid]
+ xxd: [xxd-standalone, vim]
yacc: [bison, byacc]
- flame: [libflame, amdlibflame]
+ ziglang: [zig]
permissions:
read: world
write: user