summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2010-10-28 10:26:12 -0700
committerJosh Blum <josh@joshknows.com>2010-10-28 10:26:12 -0700
commit904332c7ba8b66877b8ca56e43ed2e5cfdbc661b (patch)
treeb35c6f7651b6e8f701bb2ed3e3d34c510e5eb6b2
parentd7c7351bb66cb4c455e77f83edd581d6afbcef9c (diff)
downloaduhd-904332c7ba8b66877b8ca56e43ed2e5cfdbc661b.tar.gz
uhd-904332c7ba8b66877b8ca56e43ed2e5cfdbc661b.tar.bz2
uhd-904332c7ba8b66877b8ca56e43ed2e5cfdbc661b.zip
uhd: added to python module check macro, move check to lib dir
-rw-r--r--host/config/Python.cmake25
-rw-r--r--host/lib/CMakeLists.txt19
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)