Reputation: 58598
I have a situation in a distribution based on Yocto 1.7 targetting ARM whereby I'd like to apply a patch to the cross-compiling GCC 4.9.
The regular bbappend
override mechanism is not working for GCC, which is "special".
I have a gcc-cross_4.9.bbappend
file which finds its target; but in other respects, it's as if it didn't exist. The patch isn't applied, in spite of removing all the stamp files to force a rebuild from do_unpack
, do_patch
and do_config
onward.
Upvotes: 1
Views: 1045
Reputation: 3205
I don't know how long you took to debug this, but an easy way is by executing
bitbake-layers show-appends | grep gcc
You will directly see if your bbappend is taken into account by yocto
Upvotes: 0
Reputation: 58598
The answer is: pay attention to what package is actually being subject to the do_unpack
and do_patch
. It is not gcc-cross
or gcc
, but gcc-source
.
The various stages and configurations of gcc
all share the unpacking steps from the gcc-source
virtual package; if you target those with patch overrides, nothing happens because none of them execute any unpacking and patching steps.
It is a gcc-source
-basenamed .bb
file which controls these steps.
Thus, I simply renamed the .bbappend
to target the gcc-source
name and it worked.
Upvotes: 4