CMake: Enabled Fortran Bindings Infect Downstream C++
Created by: ax3l
This issue was originally raised in https://github.com/conda-forge/openpmd-api-feedstock/pull/39#issuecomment-554280078 .
Why do I need as a downstream, C++11-only project a Fortran compiler to be able to parse the ADIOS2Config.cmake
file when reading it in as a dependency? (Note: ADIOS2 was build with Fortran support but I do not require those bindings downstream.)
This seams unnecessary to me.
-- The Fortran compiler identification is unknown
CMake Error at /home/conda/feedstock_root/build_artifacts/openpmd-api_1573808717385/<...>/lib/cmake/adios2/adios2-config-common.cmake:16 (enable_language):
No CMAKE_Fortran_COMPILER could be found.
Tell CMake where to find the compiler by setting either the environment
variable "FC" or the CMake cache entry CMAKE_Fortran_COMPILER to the full
path to the compiler, or to the compiler name if it is in the PATH.
Call Stack (most recent call first):
/home/conda/feedstock_root/build_artifacts/openpmd-api_1573808717385/<...>/lib/cmake/adios2/adios2-config.cmake:29 (include)
CMakeLists.txt:232 (find_package)
-- Configuring incomplete, errors occurred!
The problem with this is that it commutes to downstream dependencies, even transitively, due to find_dependencies(ADIOS2)
in downstream Config.cmake
packages...