2525 MB_ML_LIBC=${AUDITWHEEL_POLICY:: 9}
2626 MB_ML_VER=${AUDITWHEEL_POLICY: 9}
2727fi
28- PLAT=$ CIBW_ARCHS
28+ PLAT=" ${ CIBW_ARCHS:- $AUDITWHEEL_ARCH } "
2929
3030# Define custom utilities
3131source wheels/multibuild/common_utils.sh
@@ -51,6 +51,7 @@ LIBWEBP_VERSION=1.5.0
5151BZIP2_VERSION=1.0.8
5252LIBXCB_VERSION=1.17.0
5353BROTLI_VERSION=1.1.0
54+ LIBAVIF_VERSION=1.2.1
5455
5556if [[ $MB_ML_VER == 2014 ]]; then
5657 function build_xz {
@@ -116,6 +117,45 @@ function build_harfbuzz {
116117 touch harfbuzz-stamp
117118}
118119
120+ function build_libavif {
121+ if [ -e libavif-stamp ]; then return ; fi
122+
123+ python3 -m pip install meson ninja
124+
125+ if [[ " $PLAT " == " x86_64" ]] || [ -n " $SANITIZER " ]; then
126+ build_simple nasm 2.16.03 https://www.nasm.us/pub/nasm/releasebuilds/2.16.03
127+ fi
128+
129+ # For rav1e
130+ curl https://sh.rustup.rs -sSf | sh -s -- -y
131+ . " $HOME /.cargo/env"
132+ if [ -z " $IS_ALPINE " ] && [ -z " $SANITIZER " ] && [ -z " $IS_MACOS " ]; then
133+ yum install -y perl
134+ if [[ " $MB_ML_VER " == 2014 ]]; then
135+ yum install -y perl-IPC-Cmd
136+ fi
137+ fi
138+
139+ local out_dir=$( fetch_unpack https://github.com/AOMediaCodec/libavif/archive/refs/tags/v$LIBAVIF_VERSION .tar.gz libavif-$LIBAVIF_VERSION .tar.gz)
140+ (cd $out_dir \
141+ && CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake \
142+ -DCMAKE_INSTALL_PREFIX=$BUILD_PREFIX \
143+ -DCMAKE_INSTALL_LIBDIR=$BUILD_PREFIX /lib \
144+ -DCMAKE_BUILD_TYPE=Release \
145+ -DBUILD_SHARED_LIBS=OFF \
146+ -DAVIF_LIBSHARPYUV=LOCAL \
147+ -DAVIF_LIBYUV=LOCAL \
148+ -DAVIF_CODEC_AOM=LOCAL \
149+ -DAVIF_CODEC_DAV1D=LOCAL \
150+ -DAVIF_CODEC_RAV1E=LOCAL \
151+ -DAVIF_CODEC_SVT=LOCAL \
152+ -DENABLE_NASM=ON \
153+ -DCMAKE_MODULE_PATH=/tmp/cmake/Modules \
154+ . \
155+ && make install)
156+ touch libavif-stamp
157+ }
158+
119159function build {
120160 build_xz
121161 if [ -z " $IS_ALPINE " ] && [ -z " $SANITIZER " ] && [ -z " $IS_MACOS " ]; then
@@ -150,6 +190,7 @@ function build {
150190 build_tiff
151191 fi
152192
193+ build_libavif
153194 build_libpng
154195 build_lcms2
155196 build_openjpeg
0 commit comments