axom icon indicating copy to clipboard operation
axom copied to clipboard

Move all common LC system spack logic into common shared package

Open white238 opened this issue 3 years ago • 4 comments

We should be sharing all this common logic between the our packages (Conduit, RAJA, Umpire, Axom, Serac, etc).

Sections like this are useful for all our codes:

https://github.com/LLNL/axom/blob/9d9ff2ba362086e8d699c4bb333d7b12930c6079/scripts/spack/packages/axom/package.py#L251-L295

Then we could have a package called something like LCSystemPackage

class Axom(CachedCMakePackage, CudaPackage, ROCmPackage, LCSystemPackage):

white238 avatar Dec 07 '21 21:12 white238

This is a fantastic idea!

davidbeckingsale avatar Dec 07 '21 22:12 davidbeckingsale

Good idea, but how best to do it? Discuss at next wsc build meeting.

rhornung67 avatar Dec 13 '21 22:12 rhornung67

It looks like lines 251-278 aren't LC-specific, and should apply to anyone using BLT, is that right? I think we should definitely look at BLTPackage and CachedBLTPackage to take advantage of BLT on top of the existing [Cached]CMakePackage classes.

I'm a little concerned about the lines following 278, since those seem to hardcode LC paths, I'd like it if we could look into generalizing those somehow.

becker33 avatar Jan 20 '22 22:01 becker33

Those LC specific paths are implicit link folders that CMake finds automatically. They cause problems because BlueOS defaults to gcc 4.9.3 and that clearly doesnt work with any modern compiler. It is very very LC specific because our OS doesn't match our compilers.

white238 avatar Jan 20 '22 22:01 white238