diff options
Diffstat (limited to 'meta/classes/uninative.bbclass')
-rw-r--r-- | meta/classes/uninative.bbclass | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/meta/classes/uninative.bbclass b/meta/classes/uninative.bbclass index 670efa9f05..1723364284 100644 --- a/meta/classes/uninative.bbclass +++ b/meta/classes/uninative.bbclass | |||
@@ -77,6 +77,11 @@ python uninative_event_fetchloader() { | |||
77 | except FileExistsError: | 77 | except FileExistsError: |
78 | pass | 78 | pass |
79 | 79 | ||
80 | # ldd output is "ldd (Ubuntu GLIBC 2.23-0ubuntu10) 2.23", extract last option from first line | ||
81 | glibcver = subprocess.check_output(["ldd", "--version"]).decode('utf-8').split('\n')[0].split()[-1] | ||
82 | if bb.utils.vercmp_string(d.getVar("UNINATIVE_MAXGLIBCVERSION"), glibcver) < 0: | ||
83 | raise RuntimeError("Your host glibc verson (%s) is newer than that in uninative (%s). Disabling uninative so that sstate is not corrupted." % (glibcver, d.getVar("UNINATIVE_MAXGLIBCVERSION"))) | ||
84 | |||
80 | cmd = d.expand("\ | 85 | cmd = d.expand("\ |
81 | mkdir -p ${UNINATIVE_STAGING_DIR}-uninative; \ | 86 | mkdir -p ${UNINATIVE_STAGING_DIR}-uninative; \ |
82 | cd ${UNINATIVE_STAGING_DIR}-uninative; \ | 87 | cd ${UNINATIVE_STAGING_DIR}-uninative; \ |
@@ -94,6 +99,8 @@ ${UNINATIVE_STAGING_DIR}-uninative/relocate_sdk.py \ | |||
94 | 99 | ||
95 | enable_uninative(d) | 100 | enable_uninative(d) |
96 | 101 | ||
102 | except RuntimeError as e: | ||
103 | bb.warn(str(e)) | ||
97 | except bb.fetch2.BBFetchException as exc: | 104 | except bb.fetch2.BBFetchException as exc: |
98 | bb.warn("Disabling uninative as unable to fetch uninative tarball: %s" % str(exc)) | 105 | bb.warn("Disabling uninative as unable to fetch uninative tarball: %s" % str(exc)) |
99 | bb.warn("To build your own uninative loader, please bitbake uninative-tarball and set UNINATIVE_TARBALL appropriately.") | 106 | bb.warn("To build your own uninative loader, please bitbake uninative-tarball and set UNINATIVE_TARBALL appropriately.") |