Cleanup LibXC handling in CMake#3919
Conversation
|
It seems Debian/Ubuntu is still on libxc 5.2.3. I guess, it's time to disable it since we now require libxc 7. |
|
@RMeli Just saw this on my Github splash page and thought I'd comment.
The cmake build system in libxc is still considered experimental. My colleague, Cristian, opened a PR (and 610) to modernise it, however he's now left Hamburg and it's stalled. I tried pinging Lori to reengage, but no response. Ideally we'd (Octopus) like fetchContent support and scoping of cmake variables. Is this something you're also interested in? |
|
Hi @AlexBuccheri, thank you for commenting! I wasn't aware the CMake build system was considered experimental, but it seemed to have everything needed to be usable. I agree the scoping of more variables would definitely be good (it's a good practice), but I don't think it is currently an issue for CP2K. Concerning |
This depends on who the maintainer of the spack package is. My general assumption being that if it's Susi or Lori, using autotools as the default build system won't change until cmake is considered stable.
There were more changes (maybe not in the MR I linked) concerning packaging, which has implications for all consumers.
haha, this is funny. It' Crisitian initiating this discussion. He's now left Octopus and is at QT, but it appears he went on quite a cmake spree in the electronic structure community. From the discussion
This is exactly what Peter Bygrave used to say, but I'm not so sold on this. Years ago, people used to just absorb essential external dependencies into source, which was clearly bad. But I like the idea that a code should be able to build out of the box with the minimal hard dependencies. But ok, the fundamental point is that CP2K doesn't require any changes to the existing libxc cmake build system - thanks for the feedback. |
I'm the maintainer. =) I added myself because no one else was listed. I added support for CMake in spack/spack#48772. Anyone can contribute to Spack packages via PRs, and I added the possibility to do
If they happen, I'll definitely update the Spack package to reflect changes in
While I see the attraction for having this, I think using a proper package manager is generally better. Additionally, This is my personal opinion and I don't claim to speak for the CP2K community. If someone wants to add proper support and use for
This appears to be the case at the moment in the way we use |
libxccan be compiled with CMake, making theFindLibxc.cmakeredundant.This PR also update the Spack version to
7.0.0to match the toolchain. However, thelibxcSpack packages currently uses autotools therefore upstream changes to support the CMake build system are required.