mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-03-02 02:47:57 +01:00
Chrome currently uses chrome_100_percent.pak, chrome_200_percent.pak, resources.pak and locales/<locale>.pak files. This change adds CEF resources to those existing pak files and updates the Alloy runtime to use them instead of the previous CEF-specific pak files (cef.pak, cef_100_percent.pak, cef_200_percent.pak, cef_extensions.pak, devtools_resources.pak) which are no longer generated. The addition of Chrome resources results in an ~16% (~4.1MB) increase in total combined pak file size vs. the previous CEF-specific pak files. While a size increase is not ideal for the Alloy runtime, it seems preferable to the alternative of distributing separate (and partially duplicated) pak files for each runtime, which would have added ~9.8MB to the total binary distribution size.
105 lines
4.2 KiB
Plaintext
105 lines
4.2 KiB
Plaintext
REDISTRIBUTION
|
|
--------------
|
|
|
|
This binary distribution contains the below components. Components listed under
|
|
the "required" section must be redistributed with all applications using CEF.
|
|
Components listed under the "optional" section may be excluded if the related
|
|
features will not be used.
|
|
|
|
Applications using CEF on OS X must follow a specific app bundle structure.
|
|
Replace "cefclient" in the below example with your application name.
|
|
|
|
cefclient.app/
|
|
Contents/
|
|
Frameworks/
|
|
Chromium Embedded Framework.framework/
|
|
Chromium Embedded Framework <= main application library
|
|
Libraries/
|
|
libEGL.dylib <= angle support libraries
|
|
libGLESv2.dylib <=^
|
|
libswiftshader_libEGL.dylib <= swiftshader support libraries
|
|
libswiftshader_libGLESv2.dylib <=^
|
|
Resources/
|
|
chrome_100_percent.pak <= non-localized resources and strings
|
|
chrome_200_percent.pak <=^
|
|
resources.pak <=^
|
|
icudtl.dat <= unicode support
|
|
snapshot_blob.bin, v8_context_snapshot.[x86_64|arm64].bin <= V8 initial snapshot
|
|
en.lproj/, ... <= locale-specific resources and strings
|
|
Info.plist
|
|
cefclient Helper.app/
|
|
Contents/
|
|
Info.plist
|
|
MacOS/
|
|
cefclient Helper <= helper executable
|
|
Pkginfo
|
|
Info.plist
|
|
MacOS/
|
|
cefclient <= cefclient application executable
|
|
Pkginfo
|
|
Resources/
|
|
binding.html, ... <= cefclient application resources
|
|
|
|
The "Chromium Embedded Framework.framework" is an unversioned framework that
|
|
contains CEF binaries and resources. Executables (cefclient, cefclient Helper,
|
|
etc) must load this framework dynamically at runtime instead of linking it
|
|
directly. See the documentation in include/wrapper/cef_library_loader.h for
|
|
more information.
|
|
|
|
The "cefclient Helper" app is used for executing separate processes (renderer,
|
|
plugin, etc) with different characteristics. It needs to have a separate app
|
|
bundle and Info.plist file so that, among other things, it doesn't show dock
|
|
icons.
|
|
|
|
Required components:
|
|
|
|
The following components are required. CEF will not function without them.
|
|
|
|
* CEF core library.
|
|
* Chromium Embedded Framework.framework/Chromium Embedded Framework
|
|
|
|
* Unicode support data.
|
|
* Chromium Embedded Framework.framework/Resources/icudtl.dat
|
|
|
|
* V8 snapshot data.
|
|
* Chromium Embedded Framework.framework/Resources/snapshot_blob.bin
|
|
* Chromium Embedded Framework.framework/Resources/v8_context_snapshot.bin
|
|
|
|
Optional components:
|
|
|
|
The following components are optional. If they are missing CEF will continue to
|
|
run but any related functionality may become broken or disabled.
|
|
|
|
* Localized resources.
|
|
Locale file loading can be disabled completely using
|
|
CefSettings.pack_loading_disabled.
|
|
|
|
* Chromium Embedded Framework.framework/Resources/*.lproj/
|
|
Directory containing localized resources used by CEF, Chromium and Blink. A
|
|
.pak file is loaded from this directory based on the CefSettings.locale
|
|
value. Only configured locales need to be distributed. If no locale is
|
|
configured the default locale of "en" will be used. Without these files
|
|
arbitrary Web components may display incorrectly.
|
|
|
|
* Other resources.
|
|
Pack file loading can be disabled completely using
|
|
CefSettings.pack_loading_disabled.
|
|
|
|
* Chromium Embedded Framework.framework/Resources/chrome_100_percent.pak
|
|
* Chromium Embedded Framework.framework/Resources/chrome_200_percent.pak
|
|
* Chromium Embedded Framework.framework/Resources/resources.pak
|
|
These files contain non-localized resources used by CEF, Chromium and Blink.
|
|
Without these files arbitrary Web components may display incorrectly.
|
|
|
|
* Angle support.
|
|
* Chromium Embedded Framework.framework/Libraries/libEGL.dylib
|
|
* Chromium Embedded Framework.framework/Libraries/libGLESv2.dylib
|
|
Without these files HTML5 accelerated content like 2D canvas, 3D CSS and WebGL
|
|
will not function.
|
|
|
|
* SwiftShader support.
|
|
* Chromium Embedded Framework.framework/Libraries/libswiftshader_libEGL.dylib
|
|
* Chromium Embedded Framework.framework/Libraries/libswiftshader_libGLESv2.dylib
|
|
Without these files WebGL will not function in software-only mode when the GPU
|
|
is not available or disabled.
|