Hide Forgot
This more of a question than a bug. I noticed we build it with "enable_hangout_services_extension=true" and "enable_widevine=true". Are we sure these doesn't pull any proprietary Google library? Thanks
Okay, lets look at what this does. 1) "enable_hangout_services_extension" This option is described this way: "Hangout services is an extension that adds extra features to Hangouts." If true, this sets the define: ENABLE_HANGOUT_SERVICES_EXTENSION=1 That define results in the following code changes: A) chrome/browser/extensions/component_loader.cc adds the "hangout_services" directory and attempts to add/load any components found inside it. B) chrome/browser/extensions/api/webrtc_audio_private/webrtc_audio_private_browsertest.cc enables an additional test to use the "hangout_services" component C) chrome/browser/extensions/component_extensions_whitelist/whitelist.cc adds the "hangout_services" component to the whitelist D) chrome/browser/resources/component_extension_resources.grd adds these files to the components include list: hangout_services/background.html hangout_services/thunk.js Now, we look in ./chrome/browser/resources/hangout_services. Here we find background.html, manifest.json, OWNERS, and thunk.js. background.html just loads thunk.js, but is BSD licensed. thunk.js is BSD licensed javascript that hooks into the webrtc code (already built as part of Chromium) into hangouts. There are no proprietary libraries pulled in here. I know it's a little confusing, but if you look through this bug report, you can see some of the reasons why: https://bugs.chromium.org/p/chromium/issues/detail?id=416856 2) "enable_widevine" This option is described this way: "Allow widevinecdmadapter to be built in Chromium." If it is enabled, and the code is not branded for Google Chrome, it builds a "stub" widevinecdmadapter. The actual widevinecdmadapter is proprietary, and only shipped with Google Chrome, however, with this stub enabled, the widevinecdm*.so files from Chrome can be dropped into the Chromium directory, and (in theory) work. In practice, this doesn't seem to work so well, but it doesn't hurt us to enable the stub, so we do so. Chromium doesn't try to download the proprietary widevine*.so bits, the user has to manually copy them in place.
Thanks! That was very informative.