[mlir][python] Fail fast when nanobind is missing for Python bindings (#174649) Remove problematic `return()` statements from mlir_configure_python_dev_packages macro and convert nanobind detection to FATAL_ERROR. Using `return()` in a CMake macro is problematic because it returns from the calling scope, not the macro itself, causing the parent CMakeLists.txt to silently skip subsequent configuration steps. This leads to confusing build failures when Python bindings are enabled but nanobind is missing. With this change, users get an immediate error with clear instructions to install nanobind or set nanobind_DIR, rather than silent configuration failures. GitOrigin-RevId: 3c848122329e0c397dd10d9beb800d35f1dd3328
See https://mlir.llvm.org/ for more information.