gecko-dev/servo/ports/cef
Martin Robinson 6c95f2190b servo: Merge #4809 - Update to latest rust-layers (from mrobinson:rust-layers-update); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 6eac20d84da2b5f0741a91b5af3907af56b009b0
2015-02-02 16:57:51 -07:00
..
.cargo servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
interfaces servo: Merge #4171 - Fix spelling mistakes in comments (from jbcrail:fix-spelling); r=jdm 2014-12-12 02:12:51 -07:00
browser_host.rs servo: Merge #4756 - Fix various build warnings (from Ms2ger:warnings); r=mbrubeck 2015-01-28 13:15:53 -07:00
browser.rs servo: Merge #4766 - Import the util crate as util rather than servo_util (from Ms2ger:util); r=Manishearth 2015-01-29 05:12:49 -07:00
Cargo.lock servo: Merge #4809 - Update to latest rust-layers (from mrobinson:rust-layers-update); r=glennw 2015-02-02 16:57:51 -07:00
Cargo.toml servo: Merge #4655 - Switch CEF build from glfw -> glutin. Add glutin key bindings (from glennw:cef-glutin); r=larsbergstrom 2015-01-19 12:57:46 -07:00
command_line.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
cookie.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
core.rs servo: Merge #4766 - Import the util crate as util rather than servo_util (from Ms2ger:util); r=Manishearth 2015-01-29 05:12:49 -07:00
drag_data.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
eutil.rs servo: Merge #4756 - Fix various build warnings (from Ms2ger:warnings); r=mbrubeck 2015-01-28 13:15:53 -07:00
frame.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
lib.rs servo: Merge #4766 - Import the util crate as util rather than servo_util (from Ms2ger:util); r=Manishearth 2015-01-29 05:12:49 -07:00
macros.rs servo: Merge #4756 - Fix various build warnings (from Ms2ger:warnings); r=mbrubeck 2015-01-28 13:15:53 -07:00
print_settings.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
process_message.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
README.md servo: Merge #4102 - ports/cef: Use the CEF translator tool to generate the full set of CEF bindings (from pcwalton:cef-autogeneration); r=larsbergstrom 2014-11-27 23:18:44 -07:00
render_handler.rs servo: Merge #4405 - Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d (from servo:rustup_20141124); r=jdm 2014-12-17 18:45:49 -07:00
request_context.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
request.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
response.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
stream.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
string_list.rs servo: Merge #4102 - ports/cef: Use the CEF translator tool to generate the full set of CEF bindings (from pcwalton:cef-autogeneration); r=larsbergstrom 2014-11-27 23:18:44 -07:00
string_map.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
string_multimap.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
string.rs servo: Merge #4756 - Fix various build warnings (from Ms2ger:warnings); r=mbrubeck 2015-01-28 13:15:53 -07:00
stubs.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
switches.rs servo: Merge #4044 - Embedding process (from zmike:embedding-process); r=jdm 2014-11-20 13:06:32 -07:00
task.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
types.rs servo: Merge #4171 - Fix spelling mistakes in comments (from jbcrail:fix-spelling); r=jdm 2014-12-12 02:12:51 -07:00
urlrequest.rs servo: Merge #4102 - ports/cef: Use the CEF translator tool to generate the full set of CEF bindings (from pcwalton:cef-autogeneration); r=larsbergstrom 2014-11-27 23:18:44 -07:00
v8.rs servo: Merge #4756 - Fix various build warnings (from Ms2ger:warnings); r=mbrubeck 2015-01-28 13:15:53 -07:00
values.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
window.rs servo: Merge #4798 - Remove the glfw port (it doesn't compile since last rustup anyway) (from glennw:remove-glfw); r=SimonSapin 2015-02-02 01:30:50 -07:00
wrappers.rs servo: Merge #4756 - Fix various build warnings (from Ms2ger:warnings); r=mbrubeck 2015-01-28 13:15:53 -07:00
xml_reader.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00
zip_reader.rs servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm 2015-01-27 18:15:50 -07:00

How to test:

  1. Go to http://cefbuilds.com/ and download a binary for your OS/arch
  2. Unpack the (huge) archive
  3. Create both Debug and Release build types for CEF (./build.sh [Debug|Release])
  4. Build servo
  5. Run a CEF-based executable with the embedding crate preloaded:
    • Linux: LD_LIBRARY_PATH=/path/to/cef-bin-unpack-dir/out/$build_type LD_PRELOAD=/path/to/servo/build/libembedding-*.so [CEF EXE]
  6. Enjoy CEF-powered crashes

Notes:

  • Running with the Debug build in GDB is EXTREMELY slow on startup. Only use this if you are actively debugging an unimplemented CEF interaction.
  • The contents of interfaces/, with the exception of interfaces/mod.rs is autogenerated. To regenerate:
    • Check out the servo branch of the following repository: https://github.com/pcwalton/chromium-embedded-framework
    • Change to the tools directory and run ./translator.sh
    • Run the following command to copy in the Rust header files, replacing ${SERVO_SRC} with the path to your Servo checkout: $ cp ../libcef_dll/rust/*.rs ${SERVO_SRC}/ports/cef/interfaces/