summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorJuro Bystricky <juro.bystricky@intel.com>2016-03-10 18:07:36 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-03-12 22:11:46 +0000
commit03b167d49d75bf9146db5fef29d4085eb944f090 (patch)
tree7184c33e21e736453834424c9735b6b1e0371949 /meta
parent09eab6b992c9ef1885ccfd6740c95b66df7c2809 (diff)
downloadpoky-03b167d49d75bf9146db5fef29d4085eb944f090.tar.gz
ncurses_6: Fix an install race condition
Both targets install.libs and install.includes install the same files, resulting in a race condition when running parallel make. This race is addressed in a patch file, making sure only one of the targets (install.includes) installes the include files. This will work properly (i.e.ncurses will install as intended by the recipe) as long as we always install both targets. (From OE-Core rev: a3df0aa78af1c2fecf847e87cc480fd2ed9afe89) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-core/ncurses/files/fix-include-files-race.patch32
-rw-r--r--meta/recipes-core/ncurses/ncurses_6.0+20160213.bb1
2 files changed, 33 insertions, 0 deletions
diff --git a/meta/recipes-core/ncurses/files/fix-include-files-race.patch b/meta/recipes-core/ncurses/files/fix-include-files-race.patch
new file mode 100644
index 0000000000..6f22e98332
--- /dev/null
+++ b/meta/recipes-core/ncurses/files/fix-include-files-race.patch
@@ -0,0 +1,32 @@
1There is a race condition when running
2
3 $ make install.libs install.includes
4
5As both targets install identical files. The remedy is to either prevent
6parallel make of install.libs and install.includes, or ensure only one
7target installs the files.
8The second approch will only work if we always install both libs and
9includes (which we do).
10
11
12Upstream-Status: Inappropriate [configuration]
13
14Index: git/mk-hdr.awk
15===================================================================
16--- a/mk-hdr.awk
17+++ b/mk-hdr.awk
18@@ -73,11 +73,13 @@ BEGIN {
19 END {
20 if ( count > 0 )
21 {
22+ print" # patched here: Removed install.libs due the race "
23 print "${INCLUDEDIR} :"
24 print " mkdir -p $@"
25 print ""
26+ print "install.libs :: ;"
27+ print ""
28 print "install \\"
29- print "install.libs \\"
30 print "install.includes :: ${AUTO_SRC} ${INCLUDEDIR} \\"
31
32 for (i = 0; i < count - 1; ++i) {
diff --git a/meta/recipes-core/ncurses/ncurses_6.0+20160213.bb b/meta/recipes-core/ncurses/ncurses_6.0+20160213.bb
index 0d56481a5c..fef4e0f626 100644
--- a/meta/recipes-core/ncurses/ncurses_6.0+20160213.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.0+20160213.bb
@@ -2,6 +2,7 @@ require ncurses.inc
2 2
3SRC_URI += "file://tic-hang.patch \ 3SRC_URI += "file://tic-hang.patch \
4 file://config.cache \ 4 file://config.cache \
5 file://fix-include-files-race.patch \
5" 6"
6# commit id corresponds to the revision in package version 7# commit id corresponds to the revision in package version
7SRCREV = "a25949ff653ac5ae7a204381a3ebfd800feeaa01" 8SRCREV = "a25949ff653ac5ae7a204381a3ebfd800feeaa01"