From a84e35328205ddf64bdd526741e73ba1b7e5fdf1 Mon Sep 17 00:00:00 2001 From: Joshua Lock Date: Tue, 3 Apr 2012 17:35:41 -0700 Subject: lib/bb/ui/hob: exit cleanly if the required pygtk version isn't available Hob uses API from pygtk 2.22, therefore check to see whether this version is available and exit cleanly if not. (Bitbake rev: 192d5fdf9ea27cdc8b043204857ae5b21173a011) Signed-off-by: Joshua Lock Signed-off-by: Richard Purdie --- bitbake/lib/bb/ui/hob.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'bitbake/lib/bb/ui/hob.py') diff --git a/bitbake/lib/bb/ui/hob.py b/bitbake/lib/bb/ui/hob.py index e72ab23e35..1321ebbac7 100755 --- a/bitbake/lib/bb/ui/hob.py +++ b/bitbake/lib/bb/ui/hob.py @@ -20,10 +20,19 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -import gobject -import gtk import sys import os +requirements = "FATAL: pygtk (version 2.22.0 or later) and pygobject are required to use Hob" +try: + import gobject + import gtk + import pygtk + pygtk.require('2.0') # to be certain we don't have gtk+ 1.x !?! + ver = gtk.pygtk_version + if ver < (2, 22, 0): + sys.exit("%s (you have pygtk %s.%s.%s)." % (requirements, ver[0], ver[1], ver[2])) +except ImportError as exc: + sys.exit("%s (%s)." % (requirements, str(exc))) sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(__file__)))) try: import bb -- cgit v1.2.3-54-g00ecf