Telcon: 2022 03 09
Peter Scheibel edited this page Mar 9, 2022
·
17 revisions
- Peter Scheibel (host)
- Mark Krentel
- Wileam Phan
- Gregory Becker
- Jared Popelar
- Richarda Butler
- Massimiliano Culpo
- Stephen Sachs
-
(Mark) ROCm Spack support
- How often do people install with Spack vs. using an external
- Has some PRs that should enable the Spack-only install to work
- (although there has to be a download of kernel drivers, so there may not be much advantage in handling part of the install through Spack)
- Should testing of the ROCm packages be done in a CI process?
-
Packages with multiple build systems
-
e.g. a package changes build systems for some version
-
- i.e. the build system is often different on Windows
-
IMO this is as simple as
- Have a when-style clause for activating a build_system
- When the build system is active, look for e.g.
cmake_install
vs. install - Users can just define
install
if they only use one build system
-
(Massimiliano) There are SEPs pending on this subject https://github.com/spack/seps/pull/3 and https://github.com/spack/seps/issues/4
-
From meeting:
- (Wileam) If we only choose one build system, what about packages that offer an option to build with either?
- Choosing one seems to work OK (that has worked up to now)
- Note that dyninst (https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/dyninst/package.py) which defines a different
cmake_args
for different versions (because the CMake option names change) wouldn't be simplified by this - (Peter) Should the
build_system
declaration have aphases
arg?- (Max) no: the phases are implied by the choice of build system
- what about defining arbitrary phases?
-
run_after
could be used to "insert" - It would have to designate the build system though if you have a CMake build and an Autotools
run_after(build) -> @cmake.run_after(build)
-
run_after(build, cmake)
?
-
- what about defining arbitrary phases?
- (Max) no: the phases are implied by the choice of build system
- Is it possible to do this in a way that doesn't force existing packages to switch immediately?
- Part of this imposes a variant for "build_system"
- (this isn't clear from the SEP)
- All packages would have this implied variant
- This would change all the hashes
- The reuse concretizer should be able to make use of the old installs
- (Greg) Although could possibly be handled in a manner similar to compiler flags
- (Max) This would also potentially result in some changes to the constraints defined for the concretization
- (Peter) e.g. if you can choose between autotools and cmake, how do you prefer cmake?
- (Peter) and also whichever build system was used is arguably part of the identity of the package
- (Wileam) If we only choose one build system, what about packages that offer an option to build with either?
-
-
(Greg and Wileam) Proposal for nvhpc vendoring CUDA: can we delete the vendored CUDA?