Kaz
Kaz

Reputation: 58598

Bitbake not using patch for gcc

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

Answers (2)

David Bensoussan
David Bensoussan

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

Kaz
Kaz

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

Related Questions