Skip to content

Commit b232732

Browse files
Merge pull request #2 from ACCESS-Hive/aidanheerdegen/issue1
Added feature to specify non-standard path prefix
2 parents fe34c0c + 59f32bf commit b232732

File tree

2 files changed

+26
-16
lines changed

2 files changed

+26
-16
lines changed

find_compilers_packages.py

+12-2
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ def parse_args(args):
4141
return parser.parse_args(args)
4242

4343

44-
def find_modules(modstring, defdict, type="compiler", specstring=None, variants="", verbose=False):
44+
def find_modules(modstring, defdict, type="compiler", specstring=None, variants="",
45+
verbose=False, prefix=None):
4546
"""
4647
Find all modules matching modstring, replace some values in defdict
4748
based on values from module to populate spack config files
@@ -63,7 +64,11 @@ def find_modules(modstring, defdict, type="compiler", specstring=None, variants=
6364
moddict["spec"] = f"{specstring}@{version}{variants}"
6465
moddict["modules"].append(mod)
6566
if type == "package":
66-
moddict["prefix"] += mod
67+
if prefix is not None:
68+
path_prefix = prefix.format(mod=mod, version=version)
69+
else:
70+
path_prefix = mod
71+
moddict["prefix"] += str(path_prefix)
6772
modlist.append(moddict)
6873
else:
6974
modlist.append({type: moddict})
@@ -172,6 +177,10 @@ def main(args):
172177
"modules": [],
173178
}
174179

180+
prefix_configure = {
181+
"intel-mkl": "intel-ct/{version}/mkl"
182+
}
183+
175184
for modstring, specstring in external_packages.items():
176185

177186
# Load package if it already exists, otherwise an empty dict
@@ -184,6 +193,7 @@ def main(args):
184193
variants=variants.get(specstring, ""),
185194
type="package",
186195
verbose=args.verbose,
196+
prefix=prefix_configure.get(modstring, None)
187197
)
188198

189199
# Update package

packages.yaml

+14-14
Original file line numberDiff line numberDiff line change
@@ -359,59 +359,59 @@ packages:
359359
intel-mkl:
360360
externals:
361361
362-
prefix: /apps/intel-mkl/2019.3.199
362+
prefix: /apps/intel-ct/2019.3.199/mkl
363363
modules:
364364
- intel-mkl/2019.3.199
365365
366-
prefix: /apps/intel-mkl/2019.4.243
366+
prefix: /apps/intel-ct/2019.4.243/mkl
367367
modules:
368368
- intel-mkl/2019.4.243
369369
370-
prefix: /apps/intel-mkl/2019.5.281
370+
prefix: /apps/intel-ct/2019.5.281/mkl
371371
modules:
372372
- intel-mkl/2019.5.281
373373
374-
prefix: /apps/intel-mkl/2020.0.166
374+
prefix: /apps/intel-ct/2020.0.166/mkl
375375
modules:
376376
- intel-mkl/2020.0.166
377377
378-
prefix: /apps/intel-mkl/2020.1.217
378+
prefix: /apps/intel-ct/2020.1.217/mkl
379379
modules:
380380
- intel-mkl/2020.1.217
381381
382-
prefix: /apps/intel-mkl/2020.2.254
382+
prefix: /apps/intel-ct/2020.2.254/mkl
383383
modules:
384384
- intel-mkl/2020.2.254
385385
386-
prefix: /apps/intel-mkl/2020.3.304
386+
prefix: /apps/intel-ct/2020.3.304/mkl
387387
modules:
388388
- intel-mkl/2020.3.304
389389
390-
prefix: /apps/intel-mkl/2021.1.1
390+
prefix: /apps/intel-ct/2021.1.1/mkl
391391
modules:
392392
- intel-mkl/2021.1.1
393393
394-
prefix: /apps/intel-mkl/2021.2.0
394+
prefix: /apps/intel-ct/2021.2.0/mkl
395395
modules:
396396
- intel-mkl/2021.2.0
397397
398-
prefix: /apps/intel-mkl/2021.3.0
398+
prefix: /apps/intel-ct/2021.3.0/mkl
399399
modules:
400400
- intel-mkl/2021.3.0
401401
402-
prefix: /apps/intel-mkl/2021.4.0
402+
prefix: /apps/intel-ct/2021.4.0/mkl
403403
modules:
404404
- intel-mkl/2021.4.0
405405
406-
prefix: /apps/intel-mkl/2022.0.2
406+
prefix: /apps/intel-ct/2022.0.2/mkl
407407
modules:
408408
- intel-mkl/2022.0.2
409409
410-
prefix: /apps/intel-mkl/2022.1.0
410+
prefix: /apps/intel-ct/2022.1.0/mkl
411411
modules:
412412
- intel-mkl/2022.1.0
413413
414-
prefix: /apps/intel-mkl/2022.2.0
414+
prefix: /apps/intel-ct/2022.2.0/mkl
415415
modules:
416416
- intel-mkl/2022.2.0
417417
buildable: false

0 commit comments

Comments
 (0)