This patch includes the macOS/arm64 code within libvpx through a
two-step process:
1. Integration of macOS/arm64 code in the same revision
(1) Change `revision` in moz.yaml to a random string.
(2) Add code in the same revision via
```
./mach vendor media/libvpx/moz.yaml -r \
85dafa9c61f99330f484e77297684b42af6ff37d \
--patch-mode=none --ignore-modified
```
(3) Undo the changes for `revision` in moz.yaml
2. Local patch application: Run the command below
```
./mach vendor media/libvpx/moz.yaml --patch-mode=only
```
Consequently, this enables the inclusion and successful building of
macOS/arm64 code within the libvpx library, and facilitating its
integration with Gecko.
Differential Revision: https://phabricator.services.mozilla.com/D209086
This patch introduces platform configurations for macOS/arm64 to our
libvpx library. It also updates the moz.build file to ensure the correct
building of the code generated by these configurations.
Note that the mac/arm64 configuration here doesn't apply realtime-only
feature like other arm64 platforms. The realtime-related settings (e.g.,
lag_in_frames) will be set if needed.
Differential Revision: https://phabricator.services.mozilla.com/D209085
The aarch64_cpudetect.c has been updated by the previous patch.
Consequently, the arm-cpu-runtime-detection patch modifying this file
should also be adjusted accordingly.
Depends on D207806
Differential Revision: https://phabricator.services.mozilla.com/D207807
This patch runs `./mach vendor media/libvpx/moz.yaml --patch-mode=none`
to update libvpx to 85dafa9c61f99330f484e77297684b42af6ff37d.
Depends on D207805
Differential Revision: https://phabricator.services.mozilla.com/D207806
Initially, *vpx_config.c* on various platform-architecture combinations
was revmoed from the input list for source list generation and later
added to the source list in moz.build. This was necessary because the
generated list was based solely on architecture, while the vpx_config.c
differed across platform-architecture combinations.
With the source list generation reworked in the previous patch, each
platform-architecture combination now has its own list. Therefore,
vpx_config.c can be directly included in the source list, simplifying
the process.
Differential Revision: https://phabricator.services.mozilla.com/D207183
Previously, source lists on different platforms were generated solely
based on architecture. Each architecture's source list would be copied
to lists on various platforms with the same architecture, with
modifications as necessary. However, with recently divergent settings
for platforms sharing the same architecture, maintaining a single list
and modifying it across different platforms becomes cumbersome.
To streamline this process and accommodate differing platform-specific
settings, this patch introduces a new approach. It generates source
lists for each platform-architecture combination. Consequently, source
lists for all platform-architecture combinations can be directly copied
without subsequent modifications. This simplifies maintenance across
different platforms and architectures.
Differential Revision: https://phabricator.services.mozilla.com/D206719
This patch is the result running the command below
```
./mach vendor media/libvpx/moz.yaml --patch-mode=only --ignore-modified
```
with arm_cpu_runtime_detection_code_on_openbsd.patch in moz.yaml's
patches list only (other patches are temporarily removed during the
updating process).
Depends on D206409
Differential Revision: https://phabricator.services.mozilla.com/D206410
This patch removes the sve-related files from libvpx sources on Windows
AArch64 platforms. The SVE-feature was disabled on the previous patch.
Differential Revision: https://phabricator.services.mozilla.com/D204801
This patch generates log files during the configuration of libvpx on
variouse platforms. These logs can be used for manual verification of
the correctness of settings. In this particular case, the log file for
win/aarch64 reveals the sve feature is disabled on win/aarch64.
The logs will be excluded to the repo, by .gitignore and .hgignore
settings.
Differential Revision: https://phabricator.services.mozilla.com/D204799
This patch updates libvpx by two steps:
1. ./mach vendor media/libvpx/moz.yaml --patch-mode=none
2. ./mach vendor media/libvpx/moz.yaml --patch-mode=only
The first step pulls the upstream repo files to gecko, and the second
step applies the local patches.
Differential Revision: https://phabricator.services.mozilla.com/D197546
This patch is the first part that moves libvpx from libgkmedias to
libgkcodecs.
When `ac_add_options --with-system-libvpx` (and `--without-sysroot` if
needed) is set in mozconfig (MOZ_SYSTEM_LIBVPX case), the libvpx
installed in the system will be used and the media/libvpx won't be
built, so the libvpx APIs shouldn't be exposed via gkcodecs' symbols in
this case.
With the changes, the "vpx/..." headers `#include`d in the VPX
encoders should be replaced with system headers like `<vpx/...>`
instead. While the VPX headers under dom/media are updated in this
patch, those headers under third_party/libwebrtc are set in a different
way in the following patches.
Since libpixman needs android_getCpuFeatures and _getCpuFamily APIs,
which were built by libvpx previously, cpu-features.c now is required to
be included in its moz.build to get the API it needs.
Differential Revision: https://phabricator.services.mozilla.com/D193599
This patch brings the platform-specific `vpx_codec_build_config`
implementation into libvpx since it will be used and exposed in the
following patches.
Differential Revision: https://phabricator.services.mozilla.com/D193598
This patch updates libvpx by two steps:
1. ./mach vendor media/libvpx/moz.yaml --patch-mode=none
2. ./mach vendor media/libvpx/moz.yaml --patch-mode=only
The first step pulls the upstream repo files to gecko, and the second
step applies the local patches.
Differential Revision: https://phabricator.services.mozilla.com/D192108
Update to 25a9a8e35aafe8391c5b79115bf944e27445317e by running `./mach
vendor media/libvpx/moz.yaml --patch-mode=none`
This patch pull the files from upstream repo and rename some files then
apply rename_duplicate_files.patch and win64_build_fix.patch to make the
builds work (see more details in libvpx/moz.yaml).
Differential Revision: https://phabricator.services.mozilla.com/D180014
Update to 25a9a8e35aafe8391c5b79115bf944e27445317e by running `./mach
vendor media/libvpx/moz.yaml --patch-mode=none`
This patch pull the files from upstream repo and rename some files then
apply rename_duplicate_files.patch and win64_build_fix.patch to make the
builds work (see more details in libvpx/moz.yaml).
Differential Revision: https://phabricator.services.mozilla.com/D180014
Run `./mach vendor media/libvpx/moz.yaml --patch-mode=only` as what
media/libvpx/README_MOZILLA said.
Depends on D173561
Differential Revision: https://phabricator.services.mozilla.com/D173562
Run `./mach vendor media/libvpx/moz.yaml --patch-mode=none` as what
media/libvpx/README_MOZILLA said.
The updated libvpx revision is 5b05f6f3a01d7e25d0573b482245a2b8b0eb09bd.
Differential Revision: https://phabricator.services.mozilla.com/D173561
Run `./mach vendor media/libvpx/moz.yaml --patch-mode=only` as what
media/libvpx/README_MOZILLA said.
Depends on D169840
Differential Revision: https://phabricator.services.mozilla.com/D169841
Run `./mach vendor media/libvpx/moz.yaml --patch-mode=none` as what
media/libvpx/README_MOZILLA said.
The updated libvpx revision is bc2965ff72af7d7b21ffeab10549fcc67ed66ccf.
Differential Revision: https://phabricator.services.mozilla.com/D169840