1: # If you want to use a local build of libyuv, you must clone the libyuv repo in this directory first, then set CMake's AVIF_LIBYUV to LOCAL.
2
3: # The odd choice of comment style in this file is to try to share this script between *nix and win32.
4
5: # cmake and ninja must be in your PATH.
6
7: # If you're running this on Windows, be sure you've already run this (from your VC2019 install dir):
8: #     "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\vcvars64.bat"
9: # We recommend building libyuv with clang-cl on Windows, because most of libyuv's assembly code is
10: # written in GCC inline assembly syntax, which MSVC doesn't support. Run this if you have clang-cl
11: # installed:
12: #     set "CC=clang-cl" && set "CXX=clang-cl"
13
14git clone --single-branch https://chromium.googlesource.com/libyuv/libyuv
15
16cd libyuv
17: # When changing the commit below to a newer version of libyuv, it is best to make sure it is being used by chromium,
18: # because the test suite of chromium provides additional test coverage of libyuv.
19: # It can be looked up at https://source.chromium.org/chromium/chromium/src/+/main:DEPS?q=libyuv.
20git checkout 04821d1e
21
22mkdir build
23cd build
24
25cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_POSITION_INDEPENDENT_CODE=ON ..
26ninja yuv
27cd ../..
28