Closed Bug 1818386 Opened 2 years ago Closed 2 years ago

teach vendor-libwebrtc.py how to exclude specific files when vendoring

Categories

(Core :: WebRTC, task, P2)

task

Tracking

()

RESOLVED FIXED
112 Branch
Tracking Status
firefox112 --- fixed

People

(Reporter: mjf, Assigned: mjf)

Details

Attachments

(1 file, 3 obsolete files)

In Bug 1654112, we deleted a group of android java files that cause build issues are unused. However, having those files deleted in our github patch stack causes frequent rebase conflicts when upstream touches any of the files.

By teaching the vendoring script how to exclude specific files, we can remove the patch in our github patch stack that removes those files (avoid rebase conflicts) while continuing to exclude them from our build.

Assignee: nobody → mfroman
Severity: -- → S3
Priority: -- → P2

Note, because libwebrtc has changed some of these files since we removed them for
Bug 1654112, these are restoring to the our current pull of libwebrtc (at the moment,
v108), not simply reversing the deletion in Bug 1654112.

They were generated from 4c49190ac9cb96033a0ed990816351b2d40fd47f

If you're playing along at home, these files can be regenerated
by following these steps:
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=pwd/depot_tools:$PATH
mkdir webrtc_android
cd webrtc_android
fetch --nohooks --no-history webrtc_android
( cd src ; ./build/install-build-deps.sh )
gclient runhooks
cd src
gn gen out/Debug --args='target_os="android" target_cpu="arm"'
autoninja -C out/Debug

After the build completes (lengthy), you will find the files under:
out/Debug/gen/sdk/android/peerconnection_java/generated_java/input_srcjars/org/webrtc

Depends on D170704

Attachment #9319368 - Attachment is obsolete: true
Attachment #9319367 - Attachment is obsolete: true
Attachment #9319366 - Attachment is obsolete: true
Summary: revert java file deletions from Bug 1654112 - Remove unnecessary files (D11343) to reduce rebase conflicts during fast-forward → teach vendor-libwebrtc.py how to exclude specific files when vendoring

In the past, we have deleted a group of unused java files in our github patch stack.
That causes rebase conflicts when upstream edits any of those java files. Teaching
our vendoring script how to exclude those files will allow us to remove that patch
from our patch stack (avoid rebase conflicts) while also not including them in our
builds.

Blocks: 1818599
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/36c90d1deae8 teach vendor-libwebrtc.py how to exclude specific files from vendoring. r=ng DONTBUILD
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 112 Branch
No longer blocks: 1818599
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: