diff --git a/CMakeLists.txt b/CMakeLists.txt index f186f9dc55..6836be31bb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -41,13 +41,18 @@ endif() include(test/find_dri.cmake) FindDRI() -option(USE_SYSTEM_PATHS_FOR_PYTHON_INSTALLATION - "Install python modules in standard system paths in the system" +option(SKIP_PYBIND11 + "Skip generating Python bindings via pybind11" OFF) -option(USE_DIST_PACKAGES_FOR_PYTHON +include(CMakeDependentOption) +cmake_dependent_option(USE_SYSTEM_PATHS_FOR_PYTHON_INSTALLATION + "Install python modules in standard system paths in the system" + OFF "NOT SKIP_PYBIND11" OFF) + +cmake_dependent_option(USE_DIST_PACKAGES_FOR_PYTHON "Use dist-packages instead of site-package to install python modules" - OFF) + OFF "NOT SKIP_PYBIND11" OFF) #============================================================================ # Search for project-specific dependencies @@ -189,24 +194,27 @@ set(Protobuf_IMPORT_DIRS ${gz-msgs9_INCLUDE_DIRS}) #-------------------------------------- # Find python -include(GzPython) -find_package(PythonLibs QUIET) -if (NOT PYTHONLIBS_FOUND) - GZ_BUILD_WARNING("Python is missing: Python interfaces are disabled.") - message (STATUS "Searching for Python - not found.") +if (SKIP_PYBIND11) + message(STATUS "SKIP_PYBIND11 set - disabling python bindings") else() - message (STATUS "Searching for Python - found version ${PYTHONLIBS_VERSION_STRING}.") - - set(PYBIND11_PYTHON_VERSION 3) - find_package(Python3 QUIET COMPONENTS Interpreter Development) - find_package(pybind11 2.2 QUIET) - - if (${pybind11_FOUND}) - message (STATUS "Searching for pybind11 - found version ${pybind11_VERSION}.") - else() - GZ_BUILD_WARNING("pybind11 is missing: Python interfaces are disabled.") - message (STATUS "Searching for pybind11 - not found.") - endif() + find_package(PythonLibs QUIET) + if (NOT PYTHONLIBS_FOUND) + GZ_BUILD_WARNING("Python is missing: Python interfaces are disabled.") + message (STATUS "Searching for Python - not found.") + else() + message (STATUS "Searching for Python - found version ${PYTHONLIBS_VERSION_STRING}.") + + set(PYBIND11_PYTHON_VERSION 3) + find_package(Python3 QUIET COMPONENTS Interpreter Development) + find_package(pybind11 2.2 QUIET) + + if (pybind11_FOUND) + message (STATUS "Searching for pybind11 - found version ${pybind11_VERSION}.") + else() + GZ_BUILD_WARNING("pybind11 is missing: Python interfaces are disabled.") + message (STATUS "Searching for pybind11 - not found.") + endif() + endif() endif() # Plugin install dirs set(GZ_SIM_PLUGIN_INSTALL_DIR