diff options
-rw-r--r-- | meta/classes/sanity.bbclass | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass index 8531df16b0..e5bf970db2 100644 --- a/meta/classes/sanity.bbclass +++ b/meta/classes/sanity.bbclass | |||
@@ -2,7 +2,8 @@ | |||
2 | # Sanity check the users setup for common misconfigurations | 2 | # Sanity check the users setup for common misconfigurations |
3 | # | 3 | # |
4 | 4 | ||
5 | SANITY_REQUIRED_UTILITIES ?= "patch diffstat makeinfo git bzip2 tar gzip gawk chrpath wget cpio" | 5 | SANITY_REQUIRED_UTILITIES ?= "patch diffstat makeinfo git bzip2 tar \ |
6 | gzip gawk chrpath wget cpio perl" | ||
6 | 7 | ||
7 | def bblayers_conf_file(d): | 8 | def bblayers_conf_file(d): |
8 | return os.path.join(d.getVar('TOPDIR', True), 'conf/bblayers.conf') | 9 | return os.path.join(d.getVar('TOPDIR', True), 'conf/bblayers.conf') |
@@ -378,6 +379,17 @@ def check_git_version(sanity_data): | |||
378 | return "Your version of git is older than 1.7.5 and has bugs which will break builds. Please install a newer version of git.\n" | 379 | return "Your version of git is older than 1.7.5 and has bugs which will break builds. Please install a newer version of git.\n" |
379 | return None | 380 | return None |
380 | 381 | ||
382 | # Check the required perl modules which may not be installed by default | ||
383 | def check_perl_modules(sanity_data): | ||
384 | ret = "" | ||
385 | modules = ( "Text::ParseWords", "Thread::Queue", "Data::Dumper" ) | ||
386 | for m in modules: | ||
387 | status, result = oe.utils.getstatusoutput("perl -e 'use %s' 2> /dev/null" % m) | ||
388 | if status != 0: | ||
389 | ret += "%s " % m | ||
390 | if ret: | ||
391 | return "Required perl module(s) not found: %s\n" % ret | ||
392 | return None | ||
381 | 393 | ||
382 | def sanity_check_conffiles(status, d): | 394 | def sanity_check_conffiles(status, d): |
383 | # Check we are using a valid local.conf | 395 | # Check we are using a valid local.conf |
@@ -488,6 +500,7 @@ def check_sanity_version_change(status, d): | |||
488 | status.addresult(check_make_version(d)) | 500 | status.addresult(check_make_version(d)) |
489 | status.addresult(check_tar_version(d)) | 501 | status.addresult(check_tar_version(d)) |
490 | status.addresult(check_git_version(d)) | 502 | status.addresult(check_git_version(d)) |
503 | status.addresult(check_perl_modules(d)) | ||
491 | 504 | ||
492 | missing = "" | 505 | missing = "" |
493 | 506 | ||