• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1REDISTRIBUTION
2--------------
3
4This binary distribution contains the below components. Components listed under
5the "required" section must be redistributed with all applications using CEF.
6Components listed under the "optional" section may be excluded if the related
7features will not be used.
8
9Applications using CEF on OS X must follow a specific app bundle structure.
10Replace "cefclient" in the below example with your application name.
11
12cefclient.app/
13  Contents/
14    Frameworks/
15      Chromium Embedded Framework.framework/
16        Chromium Embedded Framework <= main application library
17        Libraries/
18          libEGL.dylib <= ANGLE support libraries
19          libGLESv2.dylib <=^
20          libswiftshader_libEGL.dylib <= SwiftShader support libraries
21          libswiftshader_libGLESv2.dylib <=^
22          libvk_swiftshader.dylib <= SwANGLE support libraries
23          vk_swiftshader_icd.json <=^
24        Resources/
25          chrome_100_percent.pak <= non-localized resources and strings
26          chrome_200_percent.pak <=^
27          resources.pak          <=^
28          icudtl.dat <= unicode support
29          snapshot_blob.bin, v8_context_snapshot.[x86_64|arm64].bin <= V8 initial snapshot
30          en.lproj/, ... <= locale-specific resources and strings
31          Info.plist
32      cefclient Helper.app/
33        Contents/
34          Info.plist
35          MacOS/
36            cefclient Helper <= helper executable
37          Pkginfo
38      Info.plist
39    MacOS/
40      cefclient <= cefclient application executable
41    Pkginfo
42    Resources/
43      binding.html, ... <= cefclient application resources
44
45The "Chromium Embedded Framework.framework" is an unversioned framework that
46contains CEF binaries and resources. Executables (cefclient, cefclient Helper,
47etc) must load this framework dynamically at runtime instead of linking it
48directly. See the documentation in include/wrapper/cef_library_loader.h for
49more information.
50
51The "cefclient Helper" app is used for executing separate processes (renderer,
52plugin, etc) with different characteristics. It needs to have a separate app
53bundle and Info.plist file so that, among other things, it doesn't show dock
54icons.
55
56Required components:
57
58The following components are required. CEF will not function without them.
59
60* CEF core library.
61  * Chromium Embedded Framework.framework/Chromium Embedded Framework
62
63* Unicode support data.
64  * Chromium Embedded Framework.framework/Resources/icudtl.dat
65
66* V8 snapshot data.
67  * Chromium Embedded Framework.framework/Resources/snapshot_blob.bin
68  * Chromium Embedded Framework.framework/Resources/v8_context_snapshot.bin
69
70Optional components:
71
72The following components are optional. If they are missing CEF will continue to
73run but any related functionality may become broken or disabled.
74
75* Localized resources.
76  Locale file loading can be disabled completely using
77  CefSettings.pack_loading_disabled.
78
79  * Chromium Embedded Framework.framework/Resources/*.lproj/
80    Directory containing localized resources used by CEF, Chromium and Blink. A
81    .pak file is loaded from this directory based on the CefSettings.locale
82    value. Only configured locales need to be distributed. If no locale is
83    configured the default locale of "en" will be used. Without these files
84    arbitrary Web components may display incorrectly.
85
86* Other resources.
87  Pack file loading can be disabled completely using
88  CefSettings.pack_loading_disabled.
89
90  * Chromium Embedded Framework.framework/Resources/chrome_100_percent.pak
91  * Chromium Embedded Framework.framework/Resources/chrome_200_percent.pak
92  * Chromium Embedded Framework.framework/Resources/resources.pak
93    These files contain non-localized resources used by CEF, Chromium and Blink.
94    Without these files arbitrary Web components may display incorrectly.
95
96* ANGLE support.
97  * Chromium Embedded Framework.framework/Libraries/libEGL.dylib
98  * Chromium Embedded Framework.framework/Libraries/libGLESv2.dylib
99  Support for rendering of HTML5 content like 2D canvas, 3D CSS and WebGL.
100  Without these files the aforementioned capabilities may fail.
101
102* SwANGLE support.
103  * Chromium Embedded Framework.framework/Libraries/libvk_swiftshader.dylib
104  * Chromium Embedded Framework.framework/Libraries/vk_swiftshader_icd.json
105  Support for software rendering of HTML5 content like 2D canvas, 3D CSS and
106  WebGL using SwiftShader's Vulkan library as ANGLE's Vulkan backend. Without
107  these files the aforementioned capabilities may fail when GPU acceleration is
108  disabled or unavailable.
109
110* SwiftShader support
111  * Chromium Embedded Framework.framework/Libraries/libswiftshader_libEGL.dylib
112  * Chromium Embedded Framework.framework/Libraries/libswiftshader_libGLESv2.dylib
113  Deprecated support for software rendering using SwiftShader's GL libraries.
114  Used as an alternative to SwANGLE when the `--use-gl=swiftshader-webgl`
115  command-line flag is specified.
116