commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] [gnuradio] 99/101: grc: gtk3: update cmake requirement


From: git
Subject: [Commit-gnuradio] [gnuradio] 99/101: grc: gtk3: update cmake requirements
Date: Thu, 16 Mar 2017 14:58:15 +0000 (UTC)

This is an automated email from the git hooks/post-receive script.

jcorgan pushed a commit to branch python3
in repository gnuradio.

commit 395bd4415cc92217886d0f2a4f026a6070e1748b
Author: Sebastian Koslowski <address@hidden>
Date:   Thu Jan 12 21:43:48 2017 +0100

    grc: gtk3: update cmake requirements
---
 cmake/Modules/GrPython.cmake   | 28 ++++++++++------
 grc/CMakeLists.txt             | 76 ++++++++++++++++++++++++++++++++++++++----
 grc/scripts/gnuradio-companion |  1 +
 3 files changed, 87 insertions(+), 18 deletions(-)

diff --git a/cmake/Modules/GrPython.cmake b/cmake/Modules/GrPython.cmake
index 49461e5..b5cbc4c 100644
--- a/cmake/Modules/GrPython.cmake
+++ b/cmake/Modules/GrPython.cmake
@@ -77,11 +77,25 @@ endif(PYTHON_EXECUTABLE)
 # - cmd an additional command to run
 # - have the result variable to set
 ########################################################################
+macro(GR_PYTHON_CHECK_MODULE_RAW desc python_code have)
+    execute_process(
+        COMMAND ${PYTHON_EXECUTABLE} -c "${python_code}"
+        RESULT_VARIABLE return_code
+    )
+    if(return_code EQUAL 0)
+        message(STATUS "Python checking for ${desc} - found")
+        set(${have} TRUE)
+    else()
+        message(STATUS "Python checking for ${desc} - not found")
+        set(${have} FALSE)
+    endif()
+endmacro(GR_PYTHON_CHECK_MODULE_RAW)
+
 macro(GR_PYTHON_CHECK_MODULE desc mod cmd have)
     message(STATUS "")
     message(STATUS "Python checking for ${desc}")
-    execute_process(
-        COMMAND ${PYTHON_EXECUTABLE} -c "
+    GR_PYTHON_CHECK_MODULE_RAW(
+        "${desc}" "
 #########################################
 try:
     import ${mod}
@@ -89,15 +103,7 @@ try:
 except ImportError, AssertionError: exit(-1)
 except: pass
 #########################################"
-        RESULT_VARIABLE ${have}
-    )
-    if(${have} EQUAL 0)
-        message(STATUS "Python checking for ${desc} - found")
-        set(${have} TRUE)
-    else(${have} EQUAL 0)
-        message(STATUS "Python checking for ${desc} - not found")
-        set(${have} FALSE)
-    endif(${have} EQUAL 0)
+    "${have}")
 endmacro(GR_PYTHON_CHECK_MODULE)
 
 ########################################################################
diff --git a/grc/CMakeLists.txt b/grc/CMakeLists.txt
index 3aa05e9..264debc 100644
--- a/grc/CMakeLists.txt
+++ b/grc/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright 2011,2013 Free Software Foundation, Inc.
+# Copyright 2011,2013,2017 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -22,11 +22,70 @@
 ########################################################################
 include(GrPython)
 
-GR_PYTHON_CHECK_MODULE("python >= 2.5"     sys          
"sys.version.split()[0] >= '2.5'"           PYTHON_MIN_VER_FOUND)
-GR_PYTHON_CHECK_MODULE("Cheetah >= 2.0.0"  Cheetah      "Cheetah.Version >= 
'2.0.0'"                CHEETAH_FOUND)
-GR_PYTHON_CHECK_MODULE("lxml >= 1.3.6"     lxml.etree   
"lxml.etree.LXML_VERSION >= (1, 3, 6, 0)"   LXML_FOUND)
-GR_PYTHON_CHECK_MODULE("pygtk >= 2.10.0"   gtk          "gtk.pygtk_version >= 
(2, 10, 0)"           PYGTK_FOUND)
-GR_PYTHON_CHECK_MODULE("numpy"             numpy        True                   
                     NUMPY_FOUND)
+message(STATUS "")
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "python2 >= 2.7.6 or python3 >= 3.4.0"
+    "import sys; \
+     requirement = (3, 4, 0) if sys.version_info.major >= 3 else (2, 7, 6); \
+     assert sys.version_info[:3] >= requirement"
+    PYTHON_MIN_VER_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "Cheetah >= 2.0.0"
+    "import Cheetah; assert Cheetah.Version >= '2.0.0'"
+    CHEETAH_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "PyYAML >= 3.10"
+    "import yaml; assert yaml.__version__ >= '3.11'"
+    PYYAML_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "mako >= 0.9.1"
+    "import mako; assert mako.__version__ >= '0.9.1'"
+    MAKO_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "lxml >= 1.3.6"
+    "import lxml.etree; assert lxml.etree.LXML_VERSION >= (1, 3, 6, 0)"
+    LXML_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "pygobject >= 2.28.6"
+    "import gi; assert gi.version_info >= (2, 28, 6)"
+    PYGI_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "Gtk (GI) >= 3.10.8"
+    "import gi; gi.require_version('Gtk', '3.0'); \
+     from gi.repository import Gtk; Gtk.check_version(3, 10, 8)"
+    GTK_GI_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "Cairo (GI) >= 1.0"
+    "import gi; gi.require_foreign('cairo', 'Context')"  # Cairo 1.13.0
+    CAIRO_GI_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "PangoCairo (GI) >= 1.0"
+    "import gi; gi.require_version('PangoCairo', '1.0')"  # pangocairo 1.36.3
+    PANGOCAIRO_GI_FOUND
+)
+
+GR_PYTHON_CHECK_MODULE_RAW(
+    "numpy"
+    "import numpy"
+    NUMPY_FOUND
+)
 
 ########################################################################
 # Register component
@@ -37,7 +96,10 @@ if(NOT CMAKE_CROSSCOMPILING)
         PYTHON_MIN_VER_FOUND
         CHEETAH_FOUND
         LXML_FOUND
-        PYGTK_FOUND
+        PYGI_FOUND
+        GTK_GI_FOUND
+        CAIRO_GI_FOUND
+        PANGOCAIRO_GI_FOUND
         NUMPY_FOUND
     )
 endif(NOT CMAKE_CROSSCOMPILING)
diff --git a/grc/scripts/gnuradio-companion b/grc/scripts/gnuradio-companion
index c368371..de776f2 100755
--- a/grc/scripts/gnuradio-companion
+++ b/grc/scripts/gnuradio-companion
@@ -58,6 +58,7 @@ def check_gtk():
         import gi
         gi.require_version('Gtk', '3.0')
         gi.require_version('PangoCairo', '1.0')
+        gi.require_foreign('cairo', 'Context')
 
         from gi.repository import Gtk
         Gtk.init_check()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]