Media/WebRTC/libwebrtc Update Process/automation plan

From MozillaWiki
< Media‎ | WebRTC‎ | libwebrtc Update Process
Revision as of 18:15, 1 February 2022 by Mfroman (talk | contribs) (adding findings section)
Jump to navigation Jump to search

This describes the rough plan to document and automate the process to "fast-forward" through webrtc.org libwebrtc change-sets to bring Firefox's libwebrtc version as close as possible to Chrome. This page will be updated as new information is discovered.

  • verify generation/build with extra, unused directories from stock moz-libwebrtc in place
  • verify current vendoring scripts cmd-line params
- check moz-central a93c2d1df066 - Bug 1654112 - Vendor libwebrtc for rel86
- check moz-central d1df4970f4f0 - Bug 1654112 - Vendor libwebrtc/third_party for rel86
- check moz-central a93c2d1df066 - Bug 1654112 - Vendor libwebrtc/build for rel86
  • remove dead/unused files in third_party/libwebrtc
  • identify patch set to "undo" back to vendored moz-libwebrtc
  • identify patch set to "undo" back to upstream revision (edd7f9e94d)
  • move one changeset forward in webrtc.org history
- verify local build in moz-libwebrtc
- apply moz-libwebrtc-to-upstream patches, verify local build
- vendor moz-libwebrtc
- apply moz-central patches
- full try run
  • write automation scripts for previous steps

Findings

current third_party/libwebrtc directories and status

  • Additional vendoring
build (with some changes during vendoring)
third_party
  • Mozilla added
moz.build
README.mozilla
webrtc_gn
X11 - (c91f12b557a1) Bug 1654112 - Work around the old (<1.5) libxrandr headers on our build machines.
sdk/objc - imported later by Byron in 9314046d89eb D105015
tools/grit - imported later by Nico in 3cce5e6938f0 D114027

  • Untouched from Bug 1665166 - Move media/webrtc/trunk/* to third-party/libwebrtc
README.md  (should have been vendored)
DEPS       (should have been vendored)
google_apis ? is this referenced/used by current code?
tools/clang                     
chromium_deps                   
dummy_file.txt                  
net                             
Makefile.old                    
peerconnection_client.target.mk 
peerconnection.Makefile