diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-01-19 11:04:15 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-01-19 11:04:15 +0000 |
commit | ede381d56b180b384fdad98d445e5430819cfade (patch) | |
tree | c0dba726e68d2b7f82011e039b17f703f2f87b86 | |
parent | 7857834691868b7f48f732ee78d8770f5473ff68 (diff) | |
download | poky-ede381d56b180b384fdad98d445e5430819cfade.tar.gz |
package.bbclass: Take a shared lock when reading to improve do_package parallelism
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/package.bbclass | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index d39c694de5..8e7fa26f72 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
@@ -497,7 +497,8 @@ python emit_pkgdata() { | |||
497 | pkgdest = bb.data.getVar('PKGDEST', d, 1) | 497 | pkgdest = bb.data.getVar('PKGDEST', d, 1) |
498 | pkgdatadir = bb.data.getVar('PKGDESTWORK', d, True) | 498 | pkgdatadir = bb.data.getVar('PKGDESTWORK', d, True) |
499 | 499 | ||
500 | lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d)) | 500 | # Take shared lock since we're only reading, not writing |
501 | lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d), True) | ||
501 | 502 | ||
502 | data_file = pkgdatadir + bb.data.expand("/${PN}" , d) | 503 | data_file = pkgdatadir + bb.data.expand("/${PN}" , d) |
503 | f = open(data_file, 'w') | 504 | f = open(data_file, 'w') |
@@ -649,6 +650,7 @@ python package_do_shlibs() { | |||
649 | shlibs_dir = bb.data.getVar('SHLIBSDIR', d, True) | 650 | shlibs_dir = bb.data.getVar('SHLIBSDIR', d, True) |
650 | shlibswork_dir = bb.data.getVar('SHLIBSWORKDIR', d, True) | 651 | shlibswork_dir = bb.data.getVar('SHLIBSWORKDIR', d, True) |
651 | 652 | ||
653 | # Take shared lock since we're only reading, not writing | ||
652 | lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d)) | 654 | lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d)) |
653 | 655 | ||
654 | def linux_so(root, path, file): | 656 | def linux_so(root, path, file): |
@@ -878,6 +880,7 @@ python package_do_pkgconfig () { | |||
878 | if hdr == 'Requires': | 880 | if hdr == 'Requires': |
879 | pkgconfig_needed[pkg] += exp.replace(',', ' ').split() | 881 | pkgconfig_needed[pkg] += exp.replace(',', ' ').split() |
880 | 882 | ||
883 | # Take shared lock since we're only reading, not writing | ||
881 | lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d)) | 884 | lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d)) |
882 | 885 | ||
883 | for pkg in packages.split(): | 886 | for pkg in packages.split(): |