diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2015-02-25 11:22:24 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-02-26 07:46:31 +0000 |
commit | 565d4a144ab3b8fe04950392497de1e0cf1152a5 (patch) | |
tree | 8459493cb788ce21ab3fa0976fb2cef6eb80cfd2 /meta/lib/oe | |
parent | c578f5d34ce1718aaeb7dcbf3fc014fd48bac5fc (diff) | |
download | openembedded-core-565d4a144ab3b8fe04950392497de1e0cf1152a5.tar.gz openembedded-core-565d4a144ab3b8fe04950392497de1e0cf1152a5.tar.bz2 openembedded-core-565d4a144ab3b8fe04950392497de1e0cf1152a5.zip |
lib/oe/terminal: fix regressions
Fix up some issues introduced by OE-Core commit
818c94f5b9882c2028ef9f056714a0a3c9045551:
* If we want to support versions with more than two parts, versions with
only one part, or versions with non-integer parts, then we have to
stay with strings. We can use distutils.version.LooseVersion() to help
with comparisons.
* We don't want a warning when launching gnome-terminal 3.10+ and
logger.warn() doesn't take a first integer parameter anyway
(logger.debug() does).
* Also clean up tabs.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oe')
-rw-r--r-- | meta/lib/oe/terminal.py | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py index 01c0ccc334..fdfdde2f91 100644 --- a/meta/lib/oe/terminal.py +++ b/meta/lib/oe/terminal.py @@ -2,6 +2,7 @@ import logging import oe.classutils import shlex from bb.process import Popen, ExecutionError +from distutils.version import LooseVersion logger = logging.getLogger('BitBake.OE.Terminal') @@ -57,9 +58,9 @@ class Gnome(XTerminal): def __init__(self, sh_cmd, title=None, env=None, d=None): # Check version - (major, minor) = check_terminal_version("gnome-terminal") - if major >= 3 and minor >= 10: - logger.warn(1, 'Gnome-Terminal >3.10 does not support --disable-factory') + vernum = check_terminal_version("gnome-terminal") + if vernum and LooseVersion(vernum) >= '3.10': + logger.debug(1, 'Gnome-Terminal 3.10 or later does not support --disable-factory') self.command = 'gnome-terminal -t "{title}" -x {command}' XTerminal.__init__(self, sh_cmd, title, env, d) @@ -81,8 +82,8 @@ class Konsole(XTerminal): def __init__(self, sh_cmd, title=None, env=None, d=None): # Check version - (major, minor) = check_terminal_version("konsole") - if major == 2: + vernum = check_terminal_version("konsole") + if vernum and LooseVersion(vernum) >= '2.0.0': logger.debug(1, 'Konsole from KDE 4.x will not work as devshell, skipping') raise UnsupportedTerminal(self.name) XTerminal.__init__(self, sh_cmd, title, env, d) @@ -239,17 +240,12 @@ def check_terminal_version(terminalName): else: raise vernum = None - major = int(0) - minor = int(0) for ver in ver_info: if ver.startswith('Konsole'): vernum = ver.split(' ')[-1] - if ver.startswith('GNOME Terminal'): + if ver.startswith('GNOME Terminal'): vernum = ver.split(' ')[-1] - if vernum: - major = int(vernum.split('.')[0]) - minor = int(vernum.split('.')[1]) - return major, minor + return vernum def distro_name(): try: |