diff --git a/.gitignore b/.gitignore index 8d35cb3277ff6eb0d637147c09e95934604a431c..9266bb6183571e66a620d16be1f7a07ce3efe499 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,6 @@ __pycache__ *.pyc +*.err +*.out +.spack-env/ +spack.lock diff --git a/site-config/.gitignore b/site-config/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e70257b10ce35d1ce8d671b948acd385dc617a00 --- /dev/null +++ b/site-config/.gitignore @@ -0,0 +1,7 @@ +# exclude all files to allow sites to add own configs +*/ + +# un-exclude the configs tracked in this repository +!g100 +!jurecadc +!jusuf diff --git a/site-config/README.md b/site-config/README.md new file mode 100644 index 0000000000000000000000000000000000000000..46d8ae711839c00cb905c5b70ecc627ccb06bfac --- /dev/null +++ b/site-config/README.md @@ -0,0 +1,21 @@ +# Site specific config for Spack + +Usually the machine name is available in an environment variable like +`$SYSTEMNAME`, `$HPC_SYSTEM` or equivalent to load local base configuration. +The environment base `spack.yaml` then includes all files in the specific +folder: + +```yaml +spack: + include: + - site-config/$SYSTEMNAME +``` + +You can check the overlay is working by +```bash +spack env activate . +spack config blame config +``` + +Some system specific entries should be governed by the site-specific +envrionment config. diff --git a/site-config/jurecadc/compilers.yaml b/site-config/jurecadc/compilers.yaml new file mode 100644 index 0000000000000000000000000000000000000000..69485034782d471a353dad0e6fd9768e9a23936f --- /dev/null +++ b/site-config/jurecadc/compilers.yaml @@ -0,0 +1,27 @@ +compilers: +- compiler: + spec: gcc@11.3.0 + paths: + cc: /p/software/jurecadc/stages/2023/software/GCCcore/11.3.0/bin/gcc + cxx: /p/software/jurecadc/stages/2023/software/GCCcore/11.3.0/bin/g++ + f77: /p/software/jurecadc/stages/2023/software/GCCcore/11.3.0/bin/gfortran + fc: /p/software/jurecadc/stages/2023/software/GCCcore/11.3.0/bin/gfortran + flags: {} + operating_system: rocky8 + target: x86_64 + modules: [] + environment: {} + extra_rpaths: [] +- compiler: + spec: gcc@8.5.0 + paths: + cc: /usr/bin/gcc + cxx: /usr/bin/g++ + f77: null + fc: null + flags: {} + operating_system: rocky8 + target: x86_64 + modules: [] + environment: {} + extra_rpaths: [] diff --git a/site-config/jurecadc/config.yaml b/site-config/jurecadc/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9dd3b0b0fc3d377809a5833bcb3142d4c418b285 --- /dev/null +++ b/site-config/jurecadc/config.yaml @@ -0,0 +1,10 @@ +config: + build_stage: + - $USERSOFTWARE/spack/user-cache/$user/spack-stage + - $tempdir/$user/spack-stage + source_cache: $USERSOFTWARE/spack/source-cache + test_stage: $USERSOFTWARE/spack/user-cache/$user/test + misc_cache: $USERSOFTWARE/spack/user-cache/$user/cache + install_tree: + root: $USERSOFTWARE/install + db_lock_timeout: 10 diff --git a/site-config/jurecadc/packages.yaml b/site-config/jurecadc/packages.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c5f285aa75a09d7905cccc1545bdd55b29970c30 --- /dev/null +++ b/site-config/jurecadc/packages.yaml @@ -0,0 +1,115 @@ +# `spack external find` with +# Currently Loaded Modules: +# 1) Stages/2023 (S) 2) GCCcore/.11.3.0 (H) 3) zlib/.1.2.12 (H) 4) binutils/.2.38 (H) 5) StdEnv/2023 6) spack/0.19.2 +packages: + findutils: + externals: + - spec: findutils@4.6.0 + prefix: /usr + groff: + externals: + - spec: groff@1.22.3 + prefix: /usr + flex: + externals: + - spec: flex@2.6.1+lex + prefix: /usr + diffutils: + externals: + - spec: diffutils@3.6 + prefix: /usr + git: + externals: + - spec: git@2.31.1~tcltk + prefix: /usr + m4: + externals: + - spec: m4@1.4.18 + prefix: /usr + texinfo: + externals: + - spec: texinfo@6.5 + prefix: /usr + subversion: + externals: + - spec: subversion@1.10.2 + prefix: /usr + libtool: + externals: + - spec: libtool@2.4.6 + prefix: /usr + binutils: + externals: + - spec: binutils@2.38 + prefix: /p/software/jurecadc/stages/2023/software/binutils/2.38-GCCcore-11.3.0 + - spec: binutils@2.30.117 + prefix: /usr + openssl: + externals: + - spec: openssl@1.1.1k + prefix: /usr + pkgconf: + externals: + - spec: pkgconf@1.4.2 + prefix: /usr + automake: + externals: + - spec: automake@1.16.1 + prefix: /usr + tar: + externals: + - spec: tar@1.30 + prefix: /usr + gmake: + externals: + - spec: gmake@4.2.1 + prefix: /usr + openssh: + externals: + - spec: openssh@8.0p1 + prefix: /usr + curl: + externals: + - spec: curl@7.61.1+gssapi+ldap+nghttp2 + prefix: /usr + git-lfs: + externals: + - spec: git-lfs@2.13.3 + prefix: /usr + gawk: + externals: + - spec: gawk@4.2.1 + prefix: /usr + coreutils: + externals: + - spec: coreutils@8.30 + prefix: /usr + bison: + externals: + - spec: bison@3.0.4 + prefix: /usr + autoconf: + externals: + - spec: autoconf@2.69 + prefix: /usr +# packages: +# all: +# compiler: [gcc@11.2.0] +# python: +# buildable: False +# version: [3.9.6] +# externals: +# - spec: "python@3.9.6%gcc@11.2.0 arch=linux-rocky8-zen2" +# prefix: /p/software/jurecadc/stages/2022/software/Python/3.9.6-GCCcore-11.2.0/ +# openssl: +# buildable: False +# version: [1.1.1k] +# externals: +# - spec: openssl@1.1.1k +# prefix: /p/software/jurecadc/stages/2022/software/OpenSSL/1.1/ +# mpi: +# buildable: False +# openmpi: +# externals: +# - spec: "openmpi@4.1.2%gcc@11.2.0 arch=linux-rocky8-zen2" +# prefix: /p/software/jurecadc/stages/2022/software/OpenMPI/4.1.2-GCC-11.2.0/ diff --git a/spack.yaml b/spack.yaml index 1a29f7fb40fea94d87eacdbee78c837740d167ef..ef408623eb624236582cf8759213a62449466400 100644 --- a/spack.yaml +++ b/spack.yaml @@ -1,4 +1,6 @@ spack: + include: + - site-config/$SYSTEMNAME specs: # Notebook - py-ipycanvas