diff options
| -rw-r--r-- | host/config/Python.cmake | 25 | ||||
| -rw-r--r-- | host/lib/CMakeLists.txt | 19 | 
2 files changed, 30 insertions, 14 deletions
| diff --git a/host/config/Python.cmake b/host/config/Python.cmake index 55ef6acca..a5080fc40 100644 --- a/host/config/Python.cmake +++ b/host/config/Python.cmake @@ -24,26 +24,23 @@ IF(NOT PYTHONINTERP_FOUND)      MESSAGE(FATAL_ERROR "Error: Python interpretor required by the build system.")  ENDIF(NOT PYTHONINTERP_FOUND) -MACRO(PYTHON_CHECK_MODULE module have) -    MESSAGE(STATUS "Checking for python module ${module}") +MACRO(PYTHON_CHECK_MODULE desc mod cmd have) +    MESSAGE(STATUS "Python checking for ${desc}")      EXECUTE_PROCESS( -        COMMAND ${PYTHON_EXECUTABLE} -c "import ${module}" +        COMMAND ${PYTHON_EXECUTABLE} -c " +######################################### +try: import ${mod} +except: exit(-1) +try: assert ${cmd} +except: exit(-1) +#########################################"          RESULT_VARIABLE ${have}      )      IF(${have} EQUAL 0) -        MESSAGE(STATUS "Checking for python module ${module} - found") +        MESSAGE(STATUS "Python checking for ${desc} - found")          SET(${have} TRUE)      ELSE(${have} EQUAL 0) -        MESSAGE(STATUS "Checking for python module ${module} - not found") +        MESSAGE(STATUS "Python checking for ${desc} - not found")          SET(${have} FALSE)      ENDIF(${have} EQUAL 0)  ENDMACRO(PYTHON_CHECK_MODULE) - -######################################################################## -# Check Modules -######################################################################## -PYTHON_CHECK_MODULE("Cheetah" HAVE_PYTHON_MODULE_CHEETAH) - -IF(NOT HAVE_PYTHON_MODULE_CHEETAH) -    MESSAGE(FATAL_ERROR "Error: Cheetah Templates required by the build system.") -ENDIF(NOT HAVE_PYTHON_MODULE_CHEETAH) diff --git a/host/lib/CMakeLists.txt b/host/lib/CMakeLists.txt index 81845de21..b0e610d41 100644 --- a/host/lib/CMakeLists.txt +++ b/host/lib/CMakeLists.txt @@ -16,6 +16,25 @@  #  ######################################################################## +# Check Python Modules +######################################################################## +PYTHON_CHECK_MODULE( +    "Python version >= 2.6" +    "platform" "platform.python_version() >= '2.6'" +    HAVE_PYTHON_PLAT_MIN_VERSION +) + +PYTHON_CHECK_MODULE( +    "Cheetah templates >= 2.0.0" +    "Cheetah" "Cheetah.Version >= '2.0.0'" +    HAVE_PYTHON_MODULE_CHEETAH +) + +IF(NOT HAVE_PYTHON_PLAT_MIN_VERSION OR NOT HAVE_PYTHON_MODULE_CHEETAH) +    MESSAGE(FATAL_ERROR "Error: python requirements not met for the build system.") +ENDIF(NOT HAVE_PYTHON_PLAT_MIN_VERSION OR NOT HAVE_PYTHON_MODULE_CHEETAH) + +########################################################################  # Helpful Macros  ########################################################################  MACRO(LIBUHD_APPEND_SOURCES) | 
