Skip to contentSkip to conversation

Missing binutils-cross dependency Was: [oe-commits] Mike Crowe : kernel.bbclass: Add dependency on binutils

DISCUSSION Martin Jansa 1 participant 1 message Jul 6, 2013 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): 20130524130925.B37DE5030A@opal

#1 lore raw
Quoted 10 lines · On Fri, May 24, 2013 at 01:09:25PM +0000, [email protected] wrote:
Module: openembedded-core.git
Branch: master
Commit: 37beb7bdab78de5253a894f35afafa34c13a00f5
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=37beb7bdab78de5253a894f35afafa34c13a00f5
Author: Mike Crowe <[email protected]>
Date:   Mon May 20 13:22:45 2013 +0100

kernel.bbclass: Add dependency on binutils

Quoted 8 lines

Compiling the Linux kernel requires binutils; kernel.bbclass uses INHIBIT_DEFAULT_DEPS so it had better depend on binutils explicitly.

(The lack of this dependency isn't always a problem because binutils is required to build gcc-cross but if gcc-cross is reconstructed from the sstate cache then gcc-cross's dependency on binutils-cross is ignored due to being in the safe dependency list in setscene_depvalid.)

Isn't this problem in other kinds for recipes as well?

Shouldn't we add virtual/${TARGET_PREFIX}binutils to base.bbclass BASEDEPENDS?

I have recipe where do_compile is failing with i586-oe-linux-g++ .....
collect2: fatal error: cannot find 'ld'
because binutils-cross.do_populate_sysroot wasn't executed yet

DEPENDS of that package looks correct in bitbake -e:
DEPENDS="pkgconfig-native virtual/i586-webos-linux-gcc virtual/i586-webos-linux-compilerlibs virtual/libc qt4-webos glib-2.0 luna-prefs luna-service2 cjson nyx-lib libpbnjson luna-webkit-api luna-sysmgr-ipc luna-sysmgr-ipc-messages sqlite3 pmloglib librolegen serviceinstaller qmake-webos-native"

$ grep "> \"binutils-cross.do_populate_sysroot" task-depends.dot
"gcc-cross.do_configure" -> "binutils-cross.do_populate_sysroot"
"gcc-cross-initial.do_configure" -> "binutils-cross.do_populate_sysroot"
"binutils-cross.do_build" -> "binutils-cross.do_populate_sysroot"

binutils-cross.do_populate_sysroot is executed before first recipe calls do_package, so this failure isn't very common, but still something we should fix properly IMHO.

Regards,

Quoted 27 lines

---

 meta/classes/kernel.bbclass |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/classes/kernel.bbclass +1 -1
index 3320747..0407423 100644
@@ -1,7 +1,7 @@
 inherit linux-kernel-base module_strip kernel-module-split
 
 PROVIDES += "virtual/kernel"
-DEPENDS += "virtual/${TARGET_PREFIX}gcc kmod-native depmodwrapper-cross"
+DEPENDS += "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}gcc kmod-native depmodwrapper-cross"
 
 # we include gcc above, we dont need virtual/libc
 INHIBIT_DEFAULT_DEPS = "1"

_______________________________________________
Openembedded-commits mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-commits

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]