diff --git a/test/framework/modules.py b/test/framework/modules.py index 7bf87130bd..4a8a6b15df 100644 --- a/test/framework/modules.py +++ b/test/framework/modules.py @@ -54,7 +54,7 @@ # number of modules included for testing purposes -TEST_MODULES_COUNT = 92 +TEST_MODULES_COUNT = 110 class ModulesTest(EnhancedTestCase): @@ -197,12 +197,12 @@ def test_avail(self): # test modules include 3 GCC modules and one GCCcore module ms = self.modtool.available('GCC') - expected = ['GCC/4.6.3', 'GCC/4.6.4', 'GCC/6.4.0-2.28', 'GCC/7.3.0-2.30'] + expected = ['GCC/12.3.0', 'GCC/4.6.3', 'GCC/4.6.4', 'GCC/6.4.0-2.28', 'GCC/7.3.0-2.30'] # Tcl-only modules tool does an exact match on module name, Lmod & Tcl/C do prefix matching # EnvironmentModules is a subclass of EnvironmentModulesTcl, but Modules 4+ behaves similarly to Tcl/C impl., # so also append GCCcore/6.2.0 if we are an instance of EnvironmentModules if not isinstance(self.modtool, EnvironmentModulesTcl) or isinstance(self.modtool, EnvironmentModules): - expected.append('GCCcore/6.2.0') + expected.extend(['GCCcore/12.3.0', 'GCCcore/6.2.0']) self.assertEqual(ms, expected) # test modules include one GCC/4.6.3 module diff --git a/test/framework/modules/FFTW.MPI/3.3.10-gompi-2023a b/test/framework/modules/FFTW.MPI/3.3.10-gompi-2023a new file mode 100644 index 0000000000..e35c12d348 --- /dev/null +++ b/test/framework/modules/FFTW.MPI/3.3.10-gompi-2023a @@ -0,0 +1,42 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) +in one or more dimensions, of arbitrary input size, and of both real and complex data. + + +More information +================ + - Homepage: https://www.fftw.org + } +} + +module-whatis {Description: FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) +in one or more dimensions, of arbitrary input size, and of both real and complex data.} +module-whatis {Homepage: https://www.fftw.org} +module-whatis {URL: https://www.fftw.org} + +set root /prefix/software/FFTW.MPI/3.3.10-gompi-2023a + +conflict FFTW.MPI + +if { ![ is-loaded gompi/2023a ] } { + module load gompi/2023a +} + +if { ![ is-loaded FFTW/3.3.10-GCC-12.3.0 ] } { + module load FFTW/3.3.10-GCC-12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path CPATH $root/include +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +setenv EBROOTFFTWMPI "$root" +setenv EBVERSIONFFTWMPI "3.3.10" +setenv EBDEVELFFTWMPI "$root/easybuild/FFTW.MPI-3.3.10-gompi-2023a-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/FFTW/3.3.10-GCC-12.3.0 b/test/framework/modules/FFTW/3.3.10-GCC-12.3.0 new file mode 100644 index 0000000000..2ae82a0193 --- /dev/null +++ b/test/framework/modules/FFTW/3.3.10-GCC-12.3.0 @@ -0,0 +1,43 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) +in one or more dimensions, of arbitrary input size, and of both real and complex data. + + +More information +================ + - Homepage: https://www.fftw.org + } +} + +module-whatis {Description: FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) +in one or more dimensions, of arbitrary input size, and of both real and complex data.} +module-whatis {Homepage: https://www.fftw.org} +module-whatis {URL: https://www.fftw.org} + +set root /prefix/software/FFTW/3.3.10-GCC-12.3.0 + +conflict FFTW + +if { ![ is-loaded GCC/12.3.0 ] } { + module load GCC/12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path CPATH $root/include +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +prepend-path MANPATH $root/share/man +prepend-path PATH $root/bin +prepend-path PKG_CONFIG_PATH $root/lib/pkgconfig +prepend-path XDG_DATA_DIRS $root/share + +setenv EBROOTFFTW "$root" +setenv EBVERSIONFFTW "3.3.10" +setenv EBDEVELFFTW "$root/easybuild/FFTW-3.3.10-GCC-12.3.0-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/FlexiBLAS/3.3.1-GCC-12.3.0 b/test/framework/modules/FlexiBLAS/3.3.1-GCC-12.3.0 new file mode 100644 index 0000000000..00f02d0460 --- /dev/null +++ b/test/framework/modules/FlexiBLAS/3.3.1-GCC-12.3.0 @@ -0,0 +1,47 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +FlexiBLAS is a wrapper library that enables the exchange of the BLAS and LAPACK implementation +used by a program without recompiling or relinking it. + + +More information +================ + - Homepage: https://gitlab.mpi-magdeburg.mpg.de/software/flexiblas-release + } +} + +module-whatis {Description: FlexiBLAS is a wrapper library that enables the exchange of the BLAS and LAPACK implementation +used by a program without recompiling or relinking it.} +module-whatis {Homepage: https://gitlab.mpi-magdeburg.mpg.de/software/flexiblas-release} +module-whatis {URL: https://gitlab.mpi-magdeburg.mpg.de/software/flexiblas-release} + +set root /prefix/software/FlexiBLAS/3.3.1-GCC-12.3.0 + +conflict FlexiBLAS + +if { ![ is-loaded GCC/12.3.0 ] } { + module load GCC/12.3.0 +} + +if { ![ is-loaded OpenBLAS/0.3.23-GCC-12.3.0 ] } { + module load OpenBLAS/0.3.23-GCC-12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path CPATH $root/include +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +prepend-path MANPATH $root/share/man +prepend-path PATH $root/bin +prepend-path PKG_CONFIG_PATH $root/lib/pkgconfig +prepend-path XDG_DATA_DIRS $root/share + +setenv EBROOTFLEXIBLAS "$root" +setenv EBVERSIONFLEXIBLAS "3.3.1" +setenv EBDEVELFLEXIBLAS "$root/easybuild/FlexiBLAS-3.3.1-GCC-12.3.0-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/GCC/12.3.0 b/test/framework/modules/GCC/12.3.0 new file mode 100644 index 0000000000..5a21e5af1c --- /dev/null +++ b/test/framework/modules/GCC/12.3.0 @@ -0,0 +1,38 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, + as well as libraries for these languages (libstdc++, libgcj,...). + + +More information +================ + - Homepage: https://gcc.gnu.org/ + } +} + +module-whatis {Description: The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, + as well as libraries for these languages (libstdc++, libgcj,...).} +module-whatis {Homepage: https://gcc.gnu.org/} +module-whatis {URL: https://gcc.gnu.org/} + +set root /prefix/software/GCC/12.3.0 + +conflict GCC + +if { ![ is-loaded GCCcore/12.3.0 ] } { + module load GCCcore/12.3.0 +} + +if { ![ is-loaded binutils/2.40-GCCcore-12.3.0 ] } { + module load binutils/2.40-GCCcore-12.3.0 +} + +setenv EBROOTGCC "$root" +setenv EBVERSIONGCC "12.3.0" +setenv EBDEVELGCC "$root/easybuild/GCC-12.3.0-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/GCCcore/12.3.0 b/test/framework/modules/GCCcore/12.3.0 new file mode 100644 index 0000000000..745b111007 --- /dev/null +++ b/test/framework/modules/GCCcore/12.3.0 @@ -0,0 +1,37 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, + as well as libraries for these languages (libstdc++, libgcj,...). + + +More information +================ + - Homepage: https://gcc.gnu.org/ + } +} + +module-whatis {Description: The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, + as well as libraries for these languages (libstdc++, libgcj,...).} +module-whatis {Homepage: https://gcc.gnu.org/} +module-whatis {URL: https://gcc.gnu.org/} + +set root /prefix/software/GCCcore/12.3.0 + +conflict GCCcore + +prepend-path CMAKE_LIBRARY_PATH $root/lib64 +prepend-path CMAKE_PREFIX_PATH $root +prepend-path LD_LIBRARY_PATH $root/lib64 +prepend-path MANPATH $root/share/man +prepend-path PATH $root/bin +prepend-path XDG_DATA_DIRS $root/share + +setenv EBROOTGCCCORE "$root" +setenv EBVERSIONGCCCORE "12.3.0" +setenv EBDEVELGCCCORE "$root/easybuild/GCCcore-12.3.0-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/OpenBLAS/0.3.23-GCC-12.3.0 b/test/framework/modules/OpenBLAS/0.3.23-GCC-12.3.0 new file mode 100644 index 0000000000..89a72a65bc --- /dev/null +++ b/test/framework/modules/OpenBLAS/0.3.23-GCC-12.3.0 @@ -0,0 +1,38 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. + + +More information +================ + - Homepage: http://www.openblas.net/ + } +} + +module-whatis {Description: OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.} +module-whatis {Homepage: http://www.openblas.net/} +module-whatis {URL: http://www.openblas.net/} + +set root /prefix/software/OpenBLAS/0.3.23-GCC-12.3.0 + +conflict OpenBLAS + +if { ![ is-loaded GCC/12.3.0 ] } { + module load GCC/12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path CPATH $root/include +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +prepend-path PKG_CONFIG_PATH $root/lib/pkgconfig + +setenv EBROOTOPENBLAS "$root" +setenv EBVERSIONOPENBLAS "0.3.23" +setenv EBDEVELOPENBLAS "$root/easybuild/OpenBLAS-0.3.23-GCC-12.3.0-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/OpenMPI/4.1.5-GCC-12.3.0 b/test/framework/modules/OpenMPI/4.1.5-GCC-12.3.0 new file mode 100644 index 0000000000..481f81e627 --- /dev/null +++ b/test/framework/modules/OpenMPI/4.1.5-GCC-12.3.0 @@ -0,0 +1,70 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +The Open MPI Project is an open source MPI-3 implementation. + + +More information +================ + - Homepage: https://www.open-mpi.org/ + } +} + +module-whatis {Description: The Open MPI Project is an open source MPI-3 implementation.} +module-whatis {Homepage: https://www.open-mpi.org/} +module-whatis {URL: https://www.open-mpi.org/} + +set root /scratch/brussel/vo/000/bvo00005/vsc10009/ebtest/tclmodules/software/OpenMPI/4.1.5-GCC-12.3.0 + +conflict OpenMPI + +if { ![ is-loaded GCC/12.3.0 ] } { + module load GCC/12.3.0 +} + +if { ![ is-loaded zlib/1.2.13-GCCcore-12.3.0 ] } { + module load zlib/1.2.13-GCCcore-12.3.0 +} + +if { ![ is-loaded hwloc/2.9.1-GCCcore-12.3.0 ] } { + module load hwloc/2.9.1-GCCcore-12.3.0 +} + +if { ![ is-loaded libevent/2.1.12-GCCcore-12.3.0 ] } { + module load libevent/2.1.12-GCCcore-12.3.0 +} + +if { ![ is-loaded UCX/1.14.1-GCCcore-12.3.0 ] } { + module load UCX/1.14.1-GCCcore-12.3.0 +} + +if { ![ is-loaded libfabric/1.18.0-GCCcore-12.3.0 ] } { + module load libfabric/1.18.0-GCCcore-12.3.0 +} + +if { ![ is-loaded PMIx/4.2.4-GCCcore-12.3.0 ] } { + module load PMIx/4.2.4-GCCcore-12.3.0 +} + +if { ![ is-loaded UCC/1.2.0-GCCcore-12.3.0 ] } { + module load UCC/1.2.0-GCCcore-12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path CPATH $root/include +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +prepend-path MANPATH $root/share/man +prepend-path PATH $root/bin +prepend-path PKG_CONFIG_PATH $root/lib/pkgconfig +prepend-path XDG_DATA_DIRS $root/share + +setenv EBROOTOPENMPI "$root" +setenv EBVERSIONOPENMPI "4.1.5" +setenv EBDEVELOPENMPI "$root/easybuild/OpenMPI-4.1.5-GCC-12.3.0-easybuild-devel" + +setenv SLURM_MPI_TYPE "pmix" +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/PMIx/4.2.4-GCCcore-12.3.0 b/test/framework/modules/PMIx/4.2.4-GCCcore-12.3.0 new file mode 100644 index 0000000000..1c148cdd28 --- /dev/null +++ b/test/framework/modules/PMIx/4.2.4-GCCcore-12.3.0 @@ -0,0 +1 @@ +#%Module diff --git a/test/framework/modules/ScaLAPACK/2.2.0-gompi-2023a-fb b/test/framework/modules/ScaLAPACK/2.2.0-gompi-2023a-fb new file mode 100644 index 0000000000..7118eebf4f --- /dev/null +++ b/test/framework/modules/ScaLAPACK/2.2.0-gompi-2023a-fb @@ -0,0 +1,43 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines + redesigned for distributed memory MIMD parallel computers. + + +More information +================ + - Homepage: https://www.netlib.org/scalapack/ + } +} + +module-whatis {Description: The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines + redesigned for distributed memory MIMD parallel computers.} +module-whatis {Homepage: https://www.netlib.org/scalapack/} +module-whatis {URL: https://www.netlib.org/scalapack/} + +set root /prefix/software/ScaLAPACK/2.2.0-gompi-2023a-fb + +conflict ScaLAPACK + +if { ![ is-loaded gompi/2023a ] } { + module load gompi/2023a +} + +if { ![ is-loaded FlexiBLAS/3.3.1-GCC-12.3.0 ] } { + module load FlexiBLAS/3.3.1-GCC-12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +prepend-path PKG_CONFIG_PATH $root/lib/pkgconfig + +setenv EBROOTSCALAPACK "$root" +setenv EBVERSIONSCALAPACK "2.2.0" +setenv EBDEVELSCALAPACK "$root/easybuild/ScaLAPACK-2.2.0-gompi-2023a-fb-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/UCC/1.2.0-GCCcore-12.3.0 b/test/framework/modules/UCC/1.2.0-GCCcore-12.3.0 new file mode 100644 index 0000000000..1c148cdd28 --- /dev/null +++ b/test/framework/modules/UCC/1.2.0-GCCcore-12.3.0 @@ -0,0 +1 @@ +#%Module diff --git a/test/framework/modules/UCX/1.14.1-GCCcore-12.3.0 b/test/framework/modules/UCX/1.14.1-GCCcore-12.3.0 new file mode 100644 index 0000000000..1c148cdd28 --- /dev/null +++ b/test/framework/modules/UCX/1.14.1-GCCcore-12.3.0 @@ -0,0 +1 @@ +#%Module diff --git a/test/framework/modules/binutils/2.40-GCCcore-12.3.0 b/test/framework/modules/binutils/2.40-GCCcore-12.3.0 new file mode 100644 index 0000000000..7975adcb60 --- /dev/null +++ b/test/framework/modules/binutils/2.40-GCCcore-12.3.0 @@ -0,0 +1,44 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +binutils: GNU binary utilities + + +More information +================ + - Homepage: https://directory.fsf.org/project/binutils/ + } +} + +module-whatis {Description: binutils: GNU binary utilities} +module-whatis {Homepage: https://directory.fsf.org/project/binutils/} +module-whatis {URL: https://directory.fsf.org/project/binutils/} + +set root /prefix/software/binutils/2.40-GCCcore-12.3.0 + +conflict binutils + +if { ![ is-loaded GCCcore/12.3.0 ] } { + module load GCCcore/12.3.0 +} + +if { ![ is-loaded zlib/1.2.13-GCCcore-12.3.0 ] } { + module load zlib/1.2.13-GCCcore-12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path CPATH $root/include +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +prepend-path MANPATH $root/share/man +prepend-path PATH $root/bin +prepend-path XDG_DATA_DIRS $root/share + +setenv EBROOTBINUTILS "$root" +setenv EBVERSIONBINUTILS "2.40" +setenv EBDEVELBINUTILS "$root/easybuild/binutils-2.40-GCCcore-12.3.0-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/foss/2023a b/test/framework/modules/foss/2023a new file mode 100644 index 0000000000..448c5a77be --- /dev/null +++ b/test/framework/modules/foss/2023a @@ -0,0 +1,54 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +GNU Compiler Collection (GCC) based compiler toolchain, including + OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK. + + +More information +================ + - Homepage: https://easybuild.readthedocs.io/en/master/Common-toolchains.html#foss-toolchain + } +} + +module-whatis {Description: GNU Compiler Collection (GCC) based compiler toolchain, including + OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK.} +module-whatis {Homepage: https://easybuild.readthedocs.io/en/master/Common-toolchains.html#foss-toolchain} +module-whatis {URL: https://easybuild.readthedocs.io/en/master/Common-toolchains.html#foss-toolchain} + +set root /prefix/software/foss/2023a + +conflict foss + +if { ![ is-loaded GCC/12.3.0 ] } { + module load GCC/12.3.0 +} + +if { ![ is-loaded OpenMPI/4.1.5-GCC-12.3.0 ] } { + module load OpenMPI/4.1.5-GCC-12.3.0 +} + +if { ![ is-loaded FlexiBLAS/3.3.1-GCC-12.3.0 ] } { + module load FlexiBLAS/3.3.1-GCC-12.3.0 +} + +if { ![ is-loaded FFTW/3.3.10-GCC-12.3.0 ] } { + module load FFTW/3.3.10-GCC-12.3.0 +} + +if { ![ is-loaded FFTW.MPI/3.3.10-gompi-2023a ] } { + module load FFTW.MPI/3.3.10-gompi-2023a +} + +if { ![ is-loaded ScaLAPACK/2.2.0-gompi-2023a-fb ] } { + module load ScaLAPACK/2.2.0-gompi-2023a-fb +} + +setenv EBROOTFOSS "$root" +setenv EBVERSIONFOSS "2023a" +setenv EBDEVELFOSS "$root/easybuild/foss-2023a-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/gompi/2023a b/test/framework/modules/gompi/2023a new file mode 100644 index 0000000000..c81eeff8df --- /dev/null +++ b/test/framework/modules/gompi/2023a @@ -0,0 +1,38 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +GNU Compiler Collection (GCC) based compiler toolchain, + including OpenMPI for MPI support. + + +More information +================ + - Homepage: (none) + } +} + +module-whatis {Description: GNU Compiler Collection (GCC) based compiler toolchain, + including OpenMPI for MPI support.} +module-whatis {Homepage: (none)} +module-whatis {URL: (none)} + +set root /prefix/software/gompi/2023a + +conflict gompi + +if { ![ is-loaded GCC/12.3.0 ] } { + module load GCC/12.3.0 +} + +if { ![ is-loaded OpenMPI/4.1.5-GCC-12.3.0 ] } { + module load OpenMPI/4.1.5-GCC-12.3.0 +} + +setenv EBROOTGOMPI "$root" +setenv EBVERSIONGOMPI "2023a" +setenv EBDEVELGOMPI "$root/easybuild/gompi-2023a-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/modules/hwloc/2.9.1-GCCcore-12.3.0 b/test/framework/modules/hwloc/2.9.1-GCCcore-12.3.0 new file mode 100644 index 0000000000..1c148cdd28 --- /dev/null +++ b/test/framework/modules/hwloc/2.9.1-GCCcore-12.3.0 @@ -0,0 +1 @@ +#%Module diff --git a/test/framework/modules/libevent/2.1.12-GCCcore-12.3.0 b/test/framework/modules/libevent/2.1.12-GCCcore-12.3.0 new file mode 100644 index 0000000000..1c148cdd28 --- /dev/null +++ b/test/framework/modules/libevent/2.1.12-GCCcore-12.3.0 @@ -0,0 +1 @@ +#%Module diff --git a/test/framework/modules/libfabric/1.18.0-GCCcore-12.3.0 b/test/framework/modules/libfabric/1.18.0-GCCcore-12.3.0 new file mode 100644 index 0000000000..1c148cdd28 --- /dev/null +++ b/test/framework/modules/libfabric/1.18.0-GCCcore-12.3.0 @@ -0,0 +1 @@ +#%Module diff --git a/test/framework/modules/zlib/1.2.13-GCCcore-12.3.0 b/test/framework/modules/zlib/1.2.13-GCCcore-12.3.0 new file mode 100644 index 0000000000..a82945bd0c --- /dev/null +++ b/test/framework/modules/zlib/1.2.13-GCCcore-12.3.0 @@ -0,0 +1,44 @@ +#%Module +proc ModulesHelp { } { + puts stderr { + +Description +=========== +zlib is designed to be a free, general-purpose, legally unencumbered -- that is, + not covered by any patents -- lossless data-compression library for use on virtually any + computer hardware and operating system. + + +More information +================ + - Homepage: https://www.zlib.net/ + } +} + +module-whatis {Description: zlib is designed to be a free, general-purpose, legally unencumbered -- that is, + not covered by any patents -- lossless data-compression library for use on virtually any + computer hardware and operating system.} +module-whatis {Homepage: https://www.zlib.net/} +module-whatis {URL: https://www.zlib.net/} + +set root /prefix/software/zlib/1.2.13-GCCcore-12.3.0 + +conflict zlib + +if { ![ is-loaded GCCcore/12.3.0 ] } { + module load GCCcore/12.3.0 +} + +prepend-path CMAKE_PREFIX_PATH $root +prepend-path CPATH $root/include +prepend-path LD_LIBRARY_PATH $root/lib +prepend-path LIBRARY_PATH $root/lib +prepend-path MANPATH $root/share/man +prepend-path PKG_CONFIG_PATH $root/lib/pkgconfig +prepend-path XDG_DATA_DIRS $root/share + +setenv EBROOTZLIB "$root" +setenv EBVERSIONZLIB "1.2.13" +setenv EBDEVELZLIB "$root/easybuild/zlib-1.2.13-GCCcore-12.3.0-easybuild-devel" + +# Built with EasyBuild version 4.9.0.dev0-rea8433dcf5e6edea3e72ad9bd9e23023ecc6b228 diff --git a/test/framework/toolchain.py b/test/framework/toolchain.py index f6243bd3b3..aacde3baf7 100644 --- a/test/framework/toolchain.py +++ b/test/framework/toolchain.py @@ -1880,6 +1880,58 @@ def test_old_new_iccifort(self): self.assertEqual(os.environ['SCALAPACK_MT_STATIC_LIBS'], scalapack_mt_static_libs_fosscuda) self.modtool.purge() + tc = self.get_toolchain('foss', version='2023a') + tc.prepare() + self.assertEqual(os.environ['BLAS_SHARED_LIBS'], blas_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['BLAS_STATIC_LIBS'], blas_static_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['BLAS_MT_SHARED_LIBS'], + blas_mt_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['BLAS_MT_STATIC_LIBS'], + blas_mt_static_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LIBBLAS'], libblas_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LIBBLAS_MT'], libblas_mt_fosscuda.replace('openblas', 'flexiblas')) + + self.assertEqual(os.environ['LAPACK_SHARED_LIBS'], lapack_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LAPACK_STATIC_LIBS'], lapack_static_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LAPACK_MT_SHARED_LIBS'], + lapack_mt_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LAPACK_MT_STATIC_LIBS'], + lapack_mt_static_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LIBLAPACK'], liblapack_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LIBLAPACK_MT'], liblapack_mt_fosscuda.replace('openblas', 'flexiblas')) + + self.assertEqual(os.environ['BLAS_LAPACK_SHARED_LIBS'], + blas_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['BLAS_LAPACK_STATIC_LIBS'], + blas_static_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['BLAS_LAPACK_MT_SHARED_LIBS'], + blas_mt_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['BLAS_LAPACK_MT_STATIC_LIBS'], + blas_mt_static_libs_fosscuda.replace('openblas', 'flexiblas')) + + self.assertEqual(os.environ['FFT_SHARED_LIBS'], fft_shared_libs_fosscuda) + self.assertEqual(os.environ['FFT_STATIC_LIBS'], fft_static_libs_fosscuda) + self.assertEqual(os.environ['FFT_SHARED_LIBS_MT'], fft_mt_shared_libs_fosscuda) + self.assertEqual(os.environ['FFT_STATIC_LIBS_MT'], fft_mt_static_libs_fosscuda) + self.assertEqual(os.environ['FFTW_SHARED_LIBS'], fft_shared_libs_fosscuda) + self.assertEqual(os.environ['FFTW_STATIC_LIBS'], fft_static_libs_fosscuda) + self.assertEqual(os.environ['FFTW_SHARED_LIBS_MT'], fft_mt_shared_libs_fosscuda) + self.assertEqual(os.environ['FFTW_STATIC_LIBS_MT'], fft_mt_static_libs_fosscuda) + self.assertEqual(os.environ['LIBFFT'], libfft_fosscuda) + self.assertEqual(os.environ['LIBFFT_MT'], libfft_mt_fosscuda) + + self.assertEqual(os.environ['LIBSCALAPACK'], libscalack_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['LIBSCALAPACK_MT'], libscalack_mt_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['SCALAPACK_SHARED_LIBS'], + scalapack_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['SCALAPACK_STATIC_LIBS'], + scalapack_static_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['SCALAPACK_MT_SHARED_LIBS'], + scalapack_mt_shared_libs_fosscuda.replace('openblas', 'flexiblas')) + self.assertEqual(os.environ['SCALAPACK_MT_STATIC_LIBS'], + scalapack_mt_static_libs_fosscuda.replace('openblas', 'flexiblas')) + self.modtool.purge() + tc = self.get_toolchain('intel', version='2018a') tc.prepare() self.assertEqual(os.environ.get('BLAS_SHARED_LIBS', "(not set)"), blas_shared_libs_intel4)