Igalia / meta-webkit

Yocto / OpenEmbedded layer for WebKit based engines and browsers
MIT License
126 stars 69 forks source link

Libavif 0.11.1 #470

Closed jaskij closed 1 year ago

jaskij commented 1 year ago

Sorry for the bad commits, it was my first time using GitHub's web IDE.

This PR does three things with libavif:

jaskij commented 1 year ago

0.11.1 also seems to fix builds with clang, see #469

clopez commented 1 year ago

The commit fixing #469 is already integrated into libavif v0.10.0

So bumping it to the last stable release (v0.11.1) is enough. Switching the build to use git instead of tarballs is not needed IMHO

The release tarball in this case https://github.com/AOMediaCodec/libavif/archive/refs/tags/v0.11.1.tar.gz has the following sha256 hash

$ sha256sum v0.11.1.tar.gz 
0eb49965562a0e5e5de58389650d434cff32af84c34185b6c9b7b2fccae06d4e  v0.11.1.tar.gz
clopez commented 1 year ago
  • change SRC_URI to use git repo, not GH's source archives, which do not have a stable SHA (and trigger a Yocto warning)

mmm.. missed this.

Do they trigger a Yocto warning? which Yocto version are you using?

clopez commented 1 year ago

I see it..

The tarballs from libavif at https://github.com/AOMediaCodec/libavif/releases/tag/v0.11.1 is automatically generated from the release tag and not guaranteed to be byte-by-byte identical always

Related: https://github.com/orgs/community/discussions/46034

See this diffs: 1) https://github.com/containers/bubblewrap/releases/tag/v0.8.0 2) https://github.com/AOMediaCodec/libavif/releases/tag/v0.11.1

In 1 only 'bubblewrap-0.8.0.tar.xz' is guaranteed to be stable (you can see how it has the logo of a box and a size entry) In 2 there are no stable assets

jaskij commented 1 year ago

Do they trigger a Yocto warning? which Yocto version are you using?

I'm using Kirkstone. The difference is, as you saw, between automatically generated archives (which are not guaranteed to be byte compatible, and thus the SHA can change), and archives generated as part of CI, which are uploaded as artifacts (which should stay the same, since the CI shouldn't be rerun).

Once again, sorry about the bad commits, all the changes should probably be separate ones.

jaskij commented 1 year ago

Also, I would love it if someone double checked the LICENSE entry - the first license, for libavif itself was BSD-2-Clause, but it includes some external projects with separate licenses.

clopez commented 1 year ago

Also, I would love it if someone double checked the LICENSE entry - the first license, for libavif itself was BSD-2-Clause, but it includes some external projects with separate licenses.

Good point.

I just checked it: everything is BSD-2 except files from apps/shared/iccjpeg. and files from android_jni/gradlew

The files for the first case are not built unless AVIF_BUILD_APPS=ON or AVIF_BUILD_TESTS=ON (the recipe here does not enable any of this options neither has a PACKAGECONFIG entry to allow doing that) and the files for the second case are android stuff which is also not used here.