mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-20 23:37:33 +09:00
Update aom to commit id e87fb2378f01103d5d6e477a4ef6892dc714e614
This commit is contained in:
parent
debbee1e2a
commit
992c6637e3
429 changed files with 76047 additions and 40937 deletions
52
third_party/aom/README.md
vendored
52
third_party/aom/README.md
vendored
|
|
@ -63,6 +63,35 @@ CMake built in variable `BUILD_SHARED_LIBS`:
|
|||
|
||||
This is currently only supported on non-Windows targets.
|
||||
|
||||
### Debugging
|
||||
|
||||
Depending on the generator used there are multiple ways of going about
|
||||
debugging AV1 components. For single configuration generators like the Unix
|
||||
Makefiles generator, setting `CMAKE_BUILD_TYPE` to Debug is sufficient:
|
||||
|
||||
~~~
|
||||
$ cmake path/to/aom -DCMAKE_BUILD_TYPE=Debug
|
||||
~~~
|
||||
|
||||
For Xcode, mainly because configuration controls for Xcode builds are buried two
|
||||
configuration windows deep and must be set for each subproject within the Xcode
|
||||
IDE individually, `CMAKE_CONFIGURATION_TYPES` should be set to Debug:
|
||||
|
||||
~~~
|
||||
$ cmake path/to/aom -G Xcode -DCMAKE_CONFIGURATION_TYPES=Debug
|
||||
~~~
|
||||
|
||||
For Visual Studio the in-IDE configuration controls should be used. Simply set
|
||||
the IDE project configuration to Debug to allow for stepping through the code.
|
||||
|
||||
In addition to the above it can sometimes be useful to debug only C and C++
|
||||
code. To disable all assembly code and intrinsics set `AOM_TARGET_CPU` to
|
||||
generic at generation time:
|
||||
|
||||
~~~
|
||||
$ cmake path/to/aom -DAOM_TARGET_CPU=generic
|
||||
~~~
|
||||
|
||||
### Cross compiling
|
||||
|
||||
For the purposes of building the AV1 codec and applications and relative to the
|
||||
|
|
@ -81,7 +110,9 @@ The toolchain files available at the time of this writing are:
|
|||
- x86-ios-simulator.cmake
|
||||
- x86-linux.cmake
|
||||
- x86-macos.cmake
|
||||
- x86-mingw-gcc.cmake
|
||||
- x86\_64-ios-simulator.cmake
|
||||
- x86\_64-mingw-gcc.cmake
|
||||
|
||||
The following example demonstrates use of the x86-macos.cmake toolchain file on
|
||||
a x86\_64 MacOS host:
|
||||
|
|
@ -109,6 +140,20 @@ In addition to the above it's important to note that the toolchain files
|
|||
suffixed with gcc behave differently than the others. These toolchain files
|
||||
attempt to obey the $CROSS environment variable.
|
||||
|
||||
### Sanitizers
|
||||
|
||||
Sanitizer integration is built-in to the CMake build system. To enable a
|
||||
sanitizer, add `-DSANITIZE=<type>` to the CMake command line. For example, to
|
||||
enable address sanitizer:
|
||||
|
||||
~~~
|
||||
$ cmake path/to/aom -DSANITIZE=address
|
||||
$ make
|
||||
~~~
|
||||
|
||||
Sanitizers available vary by platform, target, and compiler. Consult your
|
||||
compiler documentation to determine which, if any, are available.
|
||||
|
||||
### Microsoft Visual Studio builds
|
||||
|
||||
Building the AV1 codec library in Microsoft Visual Studio is supported. The
|
||||
|
|
@ -249,11 +294,8 @@ test jobs. Sharded test runs can be achieved in a couple of ways.
|
|||
# Set the environment variable GTEST_TOTAL_SHARDS to 9 to run 10 test shards
|
||||
# (GTEST shard indexing is 0 based).
|
||||
$ export GTEST_TOTAL_SHARDS=9
|
||||
$ for shard in $(seq 0 ${GTEST_TOTAL_SHARDS}); do \
|
||||
[ ${shard} -lt ${GTEST_TOTAL_SHARDS} ] \
|
||||
&& GTEST_SHARD_INDEX=${shard} ./test_libaom & \
|
||||
done
|
||||
|
||||
$ seq 0 $(( $GTEST_TOTAL_SHARDS - 1 )) \
|
||||
| xargs -n 1 -P 0 -I{} env GTEST_SHARD_INDEX={} ./test_libaom
|
||||
~~~
|
||||
|
||||
To create a test shard for each CPU core available on the current system set
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue