meta/lib/oe/lsb.py: fix data extraction from /etc/lsb-release
authorCristian Iorga <cristian.iorga@intel.com>
Fri, 29 Mar 2013 09:19:01 +0000 (11:19 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 29 Mar 2013 09:37:38 +0000 (09:37 +0000)
In some cases, /etc/lsb-release file is used to extract
info about poky build host machine. But the strings are
not stripped of end of line special characters. As such,
when this info is concatenated and used as a directory
entry in sstate_cache, this is an issue.
Usually, this issue is masked by the fact that distro
related info is extracted from the output of lsb_release
command. In case of Yocto Linux, running "lsb_release -a"
will give an error code because CODENAME info is not present.
As such, bitbake will extract the info from /etc/lsb-release,
running into the above issue.
Consequence is that building under BA will crash.

Partial fix for [YOCTO #4071]

(From OE-Core rev: 5d0839bef631dceb4395fcf204779a76966a1061)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oe/lsb.py

index f4a5ba1..ebf90ba 100644 (file)
@@ -26,7 +26,7 @@ def release_dict_file():
             with open('/etc/lsb-release') as f:
                 for line in f:
                     key, value = line.split("=", 1)
-                    data[key] = value
+                    data[key] = value.strip()
         elif os.path.exists('/etc/redhat-release'):
             data = {}
             with open('/etc/redhat-release') as f: