@@ -19,7 +19,11 @@ local eessi_init_prefix = pathJoin(eessi_prefix, "init")
1919local eessi_software_layer_version_suffix = " "
2020local eessi_os_type = " linux"
2121-- for RISC-V clients we need to do some overrides, as things are stored in different CVMFS repositories
22- if (subprocess (" uname -m" ):gsub (" \n $" ," " ) == " riscv64" ) then
22+ local eessi_software_subdir_override = os.getenv (" EESSI_SOFTWARE_SUBDIR_OVERRIDE" )
23+ if (
24+ subprocess (" uname -m" ):gsub (" \n $" ," " ) == " riscv64"
25+ or (eessi_software_subdir_override and string.find (eessi_software_subdir_override , " riscv64" ))
26+ ) then
2327 if (eessi_version == " 2023.06" or eessi_version == " 20240402" ) then
2428 eessi_version_override = os.getenv (" EESSI_VERSION_OVERRIDE" ) or " "
2529 index_suffix = string.find (eessi_version_override , ' -' )
@@ -114,7 +118,12 @@ local archdetect = archdetect_cpu()
114118-- archdetect_accel() attempts to identify an accelerator, e.g., accel/nvidia/cc80
115119local archdetect_accel = archdetect_accel ()
116120-- eessi_cpu_family is derived from the archdetect match, e.g., x86_64
117- local eessi_cpu_family = archdetect :match (" ([^/]+)" )
121+ local eessi_cpu_family
122+ if os.getenv (" EESSI_CPU_FAMILY_OVERRIDE" ) then
123+ eessi_cpu_family = os.getenv (" EESSI_CPU_FAMILY_OVERRIDE" )
124+ else
125+ eessi_cpu_family = archdetect :match (" ([^/]+)" )
126+ end
118127local eessi_software_subdir = archdetect
119128-- eessi_eprefix is the base location of the compat layer, e.g., /cvmfs/software.eessi.io/versions/<EESSI_VERSION>/compat/linux/x86_64
120129local eessi_eprefix = pathJoin (eessi_compat_prefix , eessi_os_type , eessi_cpu_family )
0 commit comments