We require Python 3.10 for multiple targets, and currently raise a general warning if it is missing, leading to:
- functional test suite: runtime failure if python missing (as e.g. described in #31476)
- maintenance targets: targets skipped if python missing
- macos deploy target: target created, but build fails if python missing
This PR:
- adds a
BUILD_FUNCTIONAL_TESTS
option (defaultON
) and raisesFATAL_ERROR
if Python is missing and we’re building the functional tests - raises explicit warnings (in-line, not at the end of the configure summary) for maintenance and macos deploy targets, and skips the macos deploy target instead of letting the build fail
- removes the general missing python warning at the end of the configure summary
- removes a dependency on our custom
configure_warnings
system (but requires further work to be completely removed)
Behaviour changes:
cmake -B build
now throws aFATAL_ERROR
if minimum Python could not be found (overridden withcmake -B build -DBUILD_FUNCTIONAL_TESTS=0
)deploy
target no longer created if minimum Python could not be found- warnings are raised on a usage basis, and no longer generically mentioned at the end of configure
Alternative to #31669 and partially to #33144 and #32865, partially addresses #31476.