Name: mozangle
Owner: Servo
Description: Mozilla?s fork of Google ANGLE, repackaged as a Rust crate
Created: 2018-03-03 10:29:09.0
Updated: 2018-04-01 13:01:36.0
Pushed: 2018-03-28 21:45:34.0
Homepage: null
Size: 1894
Language: C++
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Mozilla?s fork of Google ANGLE, repackaged as a Rust crate.
ANGLE is an implementation of OpenGL ES.
Its official build system is gn
, from Chromium?s depot_tools.
mozilla/angle on GitHub is a fork with some Gecko-specific patches.
gfx/angle
in mozilla-central is generated from that.
update-angle.py
runs gn desc
to extract information from the official build system,
copies relevant source files,
and creates moz.build
files for Gecko?s build system.
This repository imports a copy of the gfx/angle
directory.
The generate_build_data.py
script turns data from moz.build
files into a Rust source file.
(This script supports just enough of the moz.build
format for this specific purpose.)
Finally, a Cargo build script drives the C++ compilation with the cc crate based on that data.
By default, this crate only compiles the shader translator.
In Windows, the egl
Cargo feature enables the EGL and OpenGL ES implementations.
Although upstream ANGLE supports more platforms,
this crate only configures the Direct3D 11 rendering backend.
endencies]
ngle = { version = "0.1", features = ["egl"] }
To update:
gfx/angle
entirelypython3 generate_build_data.py