Skip to contentSkip to conversation

Fix for build lttng-modules build error

PATCH In review [email protected] 2 participants 3 messages Dec 14, 2012

lore
Share & tools
lore
#0 lore raw

cover Fix for build lttng-modules build error

From: Tom Zanussi <[email protected]>

This is an untested patch for a build error seen on the Yocto autobuilder. I'm unable to reproduce the problem locally, so can't say whether it actually fixes the problem or not - hoping it can be tested under mut first to see if it works.

Basically the problem is that do_make_scripts with lttng-modules fails because it can't cd into the workdir:

/srv/home/pokybuild/yocto-autobuilder/yocto-slave/cedartrail/build/build/tmp/work/cedartrail-poky-linux/lttng-modules/2.0.5-r0/temp/run.do_make_scripts.27949: line 113: cd: /srv/home/pokybuild/yocto-autobuilder/yocto-slave/cedartrail/build/build/tmp/work/cedartrail-poky-linux/lttng-modules/2.0.5-r0/git: No such file or directory

Looking at the build I see that that directory is actually there, but it obviously wasn't when do_make_scripts() was run. So apparently we have a race and in the failed case the unpack happened after do_make_scripts() instead of before as expected. So the patch makes sure that doesn't happen

The following changes since commit da598d4f0fcf6faa62055084a51d70d735399d33:

eglibc: fix checksums of fetched patches (2012-12-13 18:02:21 +0000)

are available in the git repository at:
git://git.yoctoproject.org/poky-contrib.git tzanussi/module-do-make-scripts-fix
http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=tzanussi/module-do-make-scripts-fix

Tom Zanussi (1):
module.bbclass: make sure do_make_scripts() executes after do_patch()

 meta/classes/module.bbclass |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Signature · 1 line
1.7.4.1
#1 lore raw

PATCH 1/1 module.bbclass: make sure do_make_scripts() executes after do_patch()

From: Tom Zanussi <[email protected]>

If do_make_scripts() executes before do_unpack()/do_patch(), the build fails because it can't cd into the workdir of a recipe using this class, so make sure do_make_scripts() doesn't run before the package has been unpacked and patched.

Fixes [YOCTO #3589].

---
 meta/classes/module.bbclass |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/classes/module.bbclass +1 -1
index e8d32eb..ebb0880 100644
@@ -3,7 +3,7 @@ DEPENDS += "virtual/kernel"
 
 inherit module-base
 
-addtask make_scripts before do_compile
+addtask make_scripts after do_patch before do_compile
 do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
 do_make_scripts[deptask] = "do_populate_sysroot"
 
Signature · 1 line
1.7.4.1
#2 lore raw

Re: [PATCH 1/1] module.bbclass: make sure do_make_scripts() executes after do_patch()

Quoted 6 lines · On 12-12-14 12:27 AM, [email protected] wrote:

From: Tom Zanussi<[email protected]>

If do_make_scripts() executes before do_unpack()/do_patch(), the build fails because it can't cd into the workdir of a recipe using this class, so make sure do_make_scripts() doesn't run before the package has been unpacked and patched.

I've never seen the problem myself, but having a more tightly defined ordering for the task is a good thing in my books.

Since you aren't breaking the working use case, I have no objection.

So I'll throw out a fancy: Reviewed-by: Bruce Ashfield <[email protected]>

Cheers,

Bruce

Quoted 21 lines

Fixes [YOCTO #3589].

---
  meta/classes/module.bbclass |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
meta/classes/module.bbclass +1 -1
index e8d32eb..ebb0880 100644
@@ -3,7 +3,7 @@ DEPENDS += "virtual/kernel"
 
  inherit module-base
 
-addtask make_scripts before do_compile
+addtask make_scripts after do_patch before do_compile
  do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
  do_make_scripts[deptask] = "do_populate_sysroot"