Make consistent use of Python targets and variables in CMake
This is a small clean up on python handling on CMake:
- Use
Python3::Moduleinstead of raw handling of include directories and flags- This already includes the flags needed to make modules work on macOS
- Use the
Python3::Pythonfor embedding python into C++- Note that the presence of bindings does not imply the presence of
Python3::Python
- Note that the presence of bindings does not imply the presence of
- Use hashes on current directory to make internal targets unique
- This allows to configure different python projects
- Promote
DUNE_PYTHON_pip_FOUNDandDUNE_PYTHON_VIRTUALENV_EXECUTABLEinto internal cache variables to have global scope.- This is to be consistent with
include_guard(GLOBAL).
- This is to be consistent with
Edited by Santiago Ospina De Los Ríos