summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2013-09-23 05:54:47 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-09-24 11:48:04 +0100
commitb0f81f460cf96798d79d72da7a3246c321caf654 (patch)
tree37c17bba20aa0198c2040532f418c7b72b7e68f7
parent9b7131e855293064e044cd79259eb350a14f319b (diff)
downloadopenembedded-core-b0f81f460cf96798d79d72da7a3246c321caf654.tar.gz
openembedded-core-b0f81f460cf96798d79d72da7a3246c321caf654.tar.bz2
openembedded-core-b0f81f460cf96798d79d72da7a3246c321caf654.zip
telepathy-mission-control: do_compile failed (race issue)
There might be an error when parallel build: [snip] Traceback (most recent call last): File "/path/to/tools/glib-gtypes-generator.py", line 304, in <module> GTypesGenerator(dom, argv[1], argv[2])() File "/path/to/tools/glib-gtypes-generator.py", line 295, in __call__ file_set_contents(self.output + '.h', ''.join(self.header)) File "/path/to/tools/libtpcodegen.py", line 42, in file_set_contents os.rename(filename + '.tmp', filename) OSError: [Errno 2] No such file or directory [snip] This is a race issue, the _gen/gtypes.h and _gen/gtypes-body.h may write(remove/rename) _gen/gtypes.tmp at the same time, then there would be the error. There was a similar bug in telepathy-glib which was already fixed, we use the similar patch to fix it here. [YOCTO #5184] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch76
-rw-r--r--meta/recipes-connectivity/telepathy/telepathy-mission-control_5.15.0.bb4
2 files changed, 79 insertions, 1 deletions
diff --git a/meta/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch b/meta/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch
new file mode 100644
index 0000000000..ece1da6bc3
--- /dev/null
+++ b/meta/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch
@@ -0,0 +1,76 @@
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Sun, 22 Sep 2013 23:21:01 -0400
+Subject: [PATCH] src/Makefile.am: fix race issue for _gen/gtypes.h and _gen/gtypes-body.h
+
+There might be an error when parallel build:
+
+[snip]
+Traceback (most recent call last):
+ File "/path/to/tools/glib-gtypes-generator.py", line 304, in <module>
+ GTypesGenerator(dom, argv[1], argv[2])()
+ File "/path/to/tools/glib-gtypes-generator.py", line 295, in __call__
+ file_set_contents(self.output + '.h', ''.join(self.header))
+ File "/path/to/tools/libtpcodegen.py", line 42, in file_set_contents
+ os.rename(filename + '.tmp', filename)
+OSError: [Errno 2] No such file or directory
+[snip]
+
+This is a race issue, the _gen/gtypes.h and _gen/gtypes-body.h may
+write(remove/rename) _gen/gtypes.tmp at the same time, then there would
+be the error.
+
+There was a similar bug in telepathy-glib which was already fixed, we use the
+similar patch to fix it.
+
+Upstream-Status: Pending
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ src/Makefile.am | 18 +++++++++++++++---
+ 1 file changed, 15 insertions(+), 3 deletions(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -288,7 +288,11 @@ _gen/interfaces-body.h: _gen/mcd.xml \
+ $(tools_dir)/glib-interfaces-body-generator.xsl \
+ $< > $@
+
+-_gen/gtypes.h _gen/gtypes-body.h: _gen/mcd.xml \
++# do nothing, output as a side-effect
++_gen/gtypes.h: _gen/gtypes-body.h
++ @:
++
++_gen/gtypes-body.h: _gen/mcd.xml \
+ $(top_srcdir)/tools/glib-gtypes-generator.py
+ $(AM_V_GEN)$(PYTHON) $(top_srcdir)/tools/glib-gtypes-generator.py \
+ $< _gen/gtypes mc
+@@ -309,7 +313,11 @@ _gen/%.xml: %.xml $(wildcard $(top_srcdir)/xml/*.xml) Makefile.am
+ $(AM_V_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \
+ $< > $@
+
+-_gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \
++# do nothing, output as a side-effect
++_gen/cli-%.h: _gen/cli-%-body.h
++ @:
++
++_gen/cli-%-body.h: _gen/%.xml \
+ $(tools_dir)/glib-client-gen.py Makefile.am
+ $(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-client-gen.py \
+ --group=`echo $* | tr x- x_` \
+@@ -317,7 +325,11 @@ _gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \
+ --tp-proxy-api=0.7.6 \
+ $< Mc_Cli _gen/cli-$*
+
+-_gen/svc-%.c _gen/svc-%.h: _gen/%.xml \
++# do nothing, output as a side-effect
++_gen/svc-%.h: _gen/svc-%.c
++ @:
++
++_gen/svc-%.c: _gen/%.xml \
+ $(tools_dir)/glib-ginterface-gen.py Makefile.am
+ $(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-ginterface-gen.py \
+ --filename=_gen/svc-$* \
+--
+1.7.10.4
+
diff --git a/meta/recipes-connectivity/telepathy/telepathy-mission-control_5.15.0.bb b/meta/recipes-connectivity/telepathy/telepathy-mission-control_5.15.0.bb
index b2736ca41e..aa776a1cbf 100644
--- a/meta/recipes-connectivity/telepathy/telepathy-mission-control_5.15.0.bb
+++ b/meta/recipes-connectivity/telepathy/telepathy-mission-control_5.15.0.bb
@@ -6,7 +6,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
SECTION = "libs"
DEPENDS = "libtelepathy dbus-glib gconf libxslt-native"
-SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-mission-control/telepathy-mission-control-${PV}.tar.gz"
+SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-mission-control/telepathy-mission-control-${PV}.tar.gz \
+ file://tmc-Makefile-fix-race.patch \
+ "
SRC_URI[md5sum] = "0efd7d9043f6e189e8ed8111d043b52c"
SRC_URI[sha256sum] = "88800d1b5f385e94b34721319ff4fe65c493632954d7229b36e57af5b4a7e1b5"