OSSystems / meta-browser

OpenEmbedded/Yocto BSP layer for Web Browsers
MIT License
183 stars 189 forks source link

why Convert to new override syntax? #543

Open jwzl opened 3 years ago

jwzl commented 3 years ago

I want update chromium to M92 in zeus, but the BB file convert to new override syntax? is any way to recovery back the old override syntax ? thanks!

Best Regards Qing

shr-project commented 3 years ago

You can backport the bitbake change listed in that conversion PR to 1.44 branch

jwzl commented 3 years ago

the M92 need which version of meta-clang in yocto zeus? thanks !

jwzl commented 3 years ago

@otavio @shr-project

msisov commented 3 years ago

@jwzl we no longer test Chromium with Zeus. See https://github.com/OSSystems/meta-browser/pull/531. It's EOL. However, you can still try to use with meta-clang and zeus branch (if that is still available). Though, it's not guaranteed it will compile without any problems. You may need to backport some fixes from the upstream or fix them by yourself. Sorry about that

jwzl commented 3 years ago

I wan't to which version of clang matched to build the M92. thanks!

msisov commented 3 years ago

Emm. I'm not sure I understand you correctly.

Let's take the #531 as an example. It states that the recipe was tested with

Which means that dunfell yocto release was tested with meta-clang (dunfell branch), gatesgarth with meta-clang (gatesgarth) and hardknott with meta-clang (hardknott branch).

We always try to match branches. If they are not available, a newer one is taken.

msisov commented 3 years ago

Based on https://wiki.yoctoproject.org/wiki/Releases, we should drop gatesgarth and add Honister and Kirkstone.

shr-project commented 3 years ago

Based on https://wiki.yoctoproject.org/wiki/Releases, we should drop gatesgarth and add Honister and Kirkstone.

Only Honister, which is currently being developed in master branches. Kirkstone is future release which didn't even start to be developed.

msisov commented 3 years ago

Based on https://wiki.yoctoproject.org/wiki/Releases, we should drop gatesgarth and add Honister and Kirkstone.

Only Honister, which is currently being developed in master branches. Kirkstone is future release which didn't even start to be developed.

Good to know. Thank you.

ensc commented 2 years ago

theoretically, it would be possible to have one branch for both override styles. You can write

_BITBAKE_OVSTYLE := "\${@['underline', 'colon'][bb.utils.vercmp_string('1.51.0', bb.__version__) <= 0]}"
...
require recipe_${_BITBAKE_OVSTYLE}.conf

But this becomes either very messy and/or causes lot of redundancy.

imo, it would be better and cleaner to add an hardknott branch (this is the last one with underline style(. This branch does not need to exist forever; with EOL of dunfell (now + 7 months), it can disappear.

shr-project commented 2 years ago

@ensc why not use latest revision from bitbake 1.50 as people should?

Or latest revision from hardknott branch in poky which contains necessary bitbake changes as well.

Whole point of these bitbake changes https://git.openembedded.org/bitbake/commit/?h=1.50&id=f8d1bc200460fc1cb5cbf7a7d1986fd86424b22d https://git.openembedded.org/bitbake/commit/?h=1.50&id=9b2d96b27f550da0fa68ba9ea96be98eb3a832a6 was to allow using new syntax since dunfell without the mess you're suggesting :).

it would be better and cleaner to add an hardknott branch

IMHO no, because then someone would need to maintain and update this hardknott branch and it would be annoying to cherry-pick from master with conflicts caused by different syntax.

ensc commented 2 years ago

@ensc why not use latest revision from bitbake 1.50 as people should?

Because honister (the master branch) will use 1.51+ and the underline syntax is rejected there.

imo, whole transition happened too fast. A bitbake accepting : should have been available for some time (6-9 months) before the changes to layers/OE happened.

But now, I do not see another way than keeping branches for new and old synta

shr-project commented 2 years ago

Because honister (the master branch) will use 1.51+ and the underline syntax is rejected there.

No, the same new syntax can be used everywhere from dunfell to honister. In dunfell-hardknott it's optional and only requires recent bitbake revision from corresponding branch (all 3 1.46, 1.48, 1.50 branches have the changes for compatibility with new syntax).

Newer honister builds not only support but also require new syntax to be used.

shr-project commented 2 years ago

If it's still not clear, then bitbake is accepting ':' in dunfell with 1.46: https://git.openembedded.org/bitbake/commit/?h=1.46&id=a6d5fb7554e3cf071e453db56a1e7469ac44277c https://git.openembedded.org/bitbake/commit/?h=1.46&id=c5418eae56cc50dbae7951c055434a0c456c53a4

gatesgarth with 1.48: https://git.openembedded.org/bitbake/commit/?h=1.48&id=aa9f7b80cfdb1119050af469a07ebd949829026c https://git.openembedded.org/bitbake/commit/?h=1.48&id=14ae61205111383d5f609519c02476925184f6d1

hardknott with 1.50: https://git.openembedded.org/bitbake/commit/?h=1.50&id=f8d1bc200460fc1cb5cbf7a7d1986fd86424b22d https://git.openembedded.org/bitbake/commit/?h=1.50&id=9b2d96b27f550da0fa68ba9ea96be98eb3a832a6

honister with 1.51+: https://git.openembedded.org/bitbake/commit/?id=0dbbb4547cb2570d2ce607e9a53459df3c0ac284 https://git.openembedded.org/bitbake/commit/?id=019251649a38754d5877759d13b664e28dea77de and required since: https://git.openembedded.org/bitbake/commit/?id=7dcf317cc141dc980634f8c18bfa84f83e57206a

Similarly for poky users (which get bitbake updates together with oe-core updates in combo-layer managed poky repo): dunfell: https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?h=dunfell&id=1f7b04355c032cd0de4cbe9352745920964c8057 https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?h=dunfell&id=9c2186108e2e8fcf5837c0ffe9dbdeeaea4b7398

gatesgarth: https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?h=gatesgarth&id=f2d2136dbb3730abb87699ce03dd54c27ebb7833 https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?h=gatesgarth&id=779ca22928bce94849e32c1bdd5f5d0f64658c2d

hardknott: https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?h=hardknott&id=666d3421389cc3c01c56e92199cc32bddf1922de https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?h=hardknott&id=14c5392fded42f17962e1cc07fcc0446881b4fa0

honister: https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=75fad23fc06c008a03414a1fc288a8614c6af9ca https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=d41af446febd516f14f26db53e6572d9eae35b1e and required since: https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=2abf8a699edd513405befbd1a0eafc8f55d6b514

If your builds don't accept new syntax, then you just need to update bitbake a bit.

The only exception are people still using unsupported Zeus release where they need to cherry-pick the 2 above commits to 1.44 branch on their own build (or ask RP @rpurdie to make an exception and merge it to 1.44 even after Zeus being EOL).