dunecontrol does not manage installed modules correctly
Summary
While most of the time people are using dune modules in the build-environment purely, there are some situations where this is not the best idea, e.g. when provided in a package management system or in a HPC cluster (e.g. with easybuild). The problem is, that dunecontrol
fails to decide whether a module is an installed module or is in the build-environment in some cases:
- The pkg-config file shipped with the module is incorrect, e.g., a missing dependency or a typo (even if we do not use pkg-config for anything in dune)
- The module is installed in a path not directly next to the installation of dunecontrol. Then the
PKG_CONFIG_PATH
variable is filled incorrectly and again pkg-config does not find the module.
The underlying problem is, that the decision whether a modules is classified as "installed" or not, is just by checking whether pkg-config can find it. We want to either remove the pkg-config support in the future, or clean it up (!910). Maybe we can find a different criterion whether a module is installed or not, e.g., by installing a file in a specific place, or by adding this information into the dune.module
file.