This directory contains build files for dav1d. The actual library source is in $TOPSRCDIR/third_party/dav1d/ Any patches or additional configuration to be applied to the upstream source should be kept here in the media/libdav1d directory. To update the library source and build config files, execute ./mach vendor media/libdav1d/moz.yaml To update to a specific upstream git tag or commit, use ./mach vendor media/libdav1d/moz.yaml -r The upstream git repository is https://code.videolan.org/videolan/dav1d To update to a fork, use ./mach vendor media/libdav1d/moz.yaml --repo [-r ] The rough steps are: - Execute ./mach vendor media/libdav1d/moz.yaml -r {tag-name} # ex: ./mach vendor media/libdav1d/moz.yaml -r 0.6.0 - Update ./moz.build and ./asm/moz.build to add new files and remove deleted ones using third_party/dav1d/src/meson.build as a guide (confirm with the diff) (note the empty .asm file in x86_64) - Clone the tag from the dav1d repo and build a stand-alone libdav1d following the steps here: https://code.videolan.org/videolan/dav1d#compile - Copy vcs_version.h from the local build/include/vcs_version.h to media/libdav1d/vcs_version.h - Copy version.h from local build/include/dav1d/version.h to media/libdav1d/version.h - Add new options, if any, in moz.build or config.h Tips: - If you see build failures in build-linux64-base-toolchains (or similar jobs) dav1d may now require a higher minimum nasm version than our base toolchains currently support. A bug updating the minimum nasm version will probably be necessary.