diff options
| author | Robert Yang <liezhi.yang@windriver.com> | 2013-09-23 05:54:47 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-09-24 17:24:12 +0100 |
| commit | c68888f762f190c24a2fb97c9ff9ea55aadf6375 (patch) | |
| tree | 6c4c960dc29379088df43c0eb65ddfadab676c0a | |
| parent | a8971860598c87b29ca74238dd714d7096d0257a (diff) | |
| download | poky-c68888f762f190c24a2fb97c9ff9ea55aadf6375.tar.gz | |
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]
(From OE-Core rev: b0f81f460cf96798d79d72da7a3246c321caf654)
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.patch | 76 | ||||
| -rw-r--r-- | meta/recipes-connectivity/telepathy/telepathy-mission-control_5.15.0.bb | 4 |
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 @@ | |||
| 1 | From: Robert Yang <liezhi.yang@windriver.com> | ||
| 2 | Date: Sun, 22 Sep 2013 23:21:01 -0400 | ||
| 3 | Subject: [PATCH] src/Makefile.am: fix race issue for _gen/gtypes.h and _gen/gtypes-body.h | ||
| 4 | |||
| 5 | There might be an error when parallel build: | ||
| 6 | |||
| 7 | [snip] | ||
| 8 | Traceback (most recent call last): | ||
| 9 | File "/path/to/tools/glib-gtypes-generator.py", line 304, in <module> | ||
| 10 | GTypesGenerator(dom, argv[1], argv[2])() | ||
| 11 | File "/path/to/tools/glib-gtypes-generator.py", line 295, in __call__ | ||
| 12 | file_set_contents(self.output + '.h', ''.join(self.header)) | ||
| 13 | File "/path/to/tools/libtpcodegen.py", line 42, in file_set_contents | ||
| 14 | os.rename(filename + '.tmp', filename) | ||
| 15 | OSError: [Errno 2] No such file or directory | ||
| 16 | [snip] | ||
| 17 | |||
| 18 | This is a race issue, the _gen/gtypes.h and _gen/gtypes-body.h may | ||
| 19 | write(remove/rename) _gen/gtypes.tmp at the same time, then there would | ||
| 20 | be the error. | ||
| 21 | |||
| 22 | There was a similar bug in telepathy-glib which was already fixed, we use the | ||
| 23 | similar patch to fix it. | ||
| 24 | |||
| 25 | Upstream-Status: Pending | ||
| 26 | |||
| 27 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
| 28 | --- | ||
| 29 | src/Makefile.am | 18 +++++++++++++++--- | ||
| 30 | 1 file changed, 15 insertions(+), 3 deletions(-) | ||
| 31 | |||
| 32 | diff --git a/src/Makefile.am b/src/Makefile.am | ||
| 33 | --- a/src/Makefile.am | ||
| 34 | +++ b/src/Makefile.am | ||
| 35 | @@ -288,7 +288,11 @@ _gen/interfaces-body.h: _gen/mcd.xml \ | ||
| 36 | $(tools_dir)/glib-interfaces-body-generator.xsl \ | ||
| 37 | $< > $@ | ||
| 38 | |||
| 39 | -_gen/gtypes.h _gen/gtypes-body.h: _gen/mcd.xml \ | ||
| 40 | +# do nothing, output as a side-effect | ||
| 41 | +_gen/gtypes.h: _gen/gtypes-body.h | ||
| 42 | + @: | ||
| 43 | + | ||
| 44 | +_gen/gtypes-body.h: _gen/mcd.xml \ | ||
| 45 | $(top_srcdir)/tools/glib-gtypes-generator.py | ||
| 46 | $(AM_V_GEN)$(PYTHON) $(top_srcdir)/tools/glib-gtypes-generator.py \ | ||
| 47 | $< _gen/gtypes mc | ||
| 48 | @@ -309,7 +313,11 @@ _gen/%.xml: %.xml $(wildcard $(top_srcdir)/xml/*.xml) Makefile.am | ||
| 49 | $(AM_V_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \ | ||
| 50 | $< > $@ | ||
| 51 | |||
| 52 | -_gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \ | ||
| 53 | +# do nothing, output as a side-effect | ||
| 54 | +_gen/cli-%.h: _gen/cli-%-body.h | ||
| 55 | + @: | ||
| 56 | + | ||
| 57 | +_gen/cli-%-body.h: _gen/%.xml \ | ||
| 58 | $(tools_dir)/glib-client-gen.py Makefile.am | ||
| 59 | $(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-client-gen.py \ | ||
| 60 | --group=`echo $* | tr x- x_` \ | ||
| 61 | @@ -317,7 +325,11 @@ _gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \ | ||
| 62 | --tp-proxy-api=0.7.6 \ | ||
| 63 | $< Mc_Cli _gen/cli-$* | ||
| 64 | |||
| 65 | -_gen/svc-%.c _gen/svc-%.h: _gen/%.xml \ | ||
| 66 | +# do nothing, output as a side-effect | ||
| 67 | +_gen/svc-%.h: _gen/svc-%.c | ||
| 68 | + @: | ||
| 69 | + | ||
| 70 | +_gen/svc-%.c: _gen/%.xml \ | ||
| 71 | $(tools_dir)/glib-ginterface-gen.py Makefile.am | ||
| 72 | $(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-ginterface-gen.py \ | ||
| 73 | --filename=_gen/svc-$* \ | ||
| 74 | -- | ||
| 75 | 1.7.10.4 | ||
| 76 | |||
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 \ | |||
| 6 | SECTION = "libs" | 6 | SECTION = "libs" |
| 7 | DEPENDS = "libtelepathy dbus-glib gconf libxslt-native" | 7 | DEPENDS = "libtelepathy dbus-glib gconf libxslt-native" |
| 8 | 8 | ||
| 9 | SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-mission-control/telepathy-mission-control-${PV}.tar.gz" | 9 | SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-mission-control/telepathy-mission-control-${PV}.tar.gz \ |
| 10 | file://tmc-Makefile-fix-race.patch \ | ||
| 11 | " | ||
| 10 | SRC_URI[md5sum] = "0efd7d9043f6e189e8ed8111d043b52c" | 12 | SRC_URI[md5sum] = "0efd7d9043f6e189e8ed8111d043b52c" |
| 11 | SRC_URI[sha256sum] = "88800d1b5f385e94b34721319ff4fe65c493632954d7229b36e57af5b4a7e1b5" | 13 | SRC_URI[sha256sum] = "88800d1b5f385e94b34721319ff4fe65c493632954d7229b36e57af5b4a7e1b5" |
| 12 | 14 | ||
