Linux/Mac CPU |
Windows CPU |
---|---|
Status: currently bringing up the foundations of the library and massaging code from previous internal projects to something acceptable for public release. Please be patient!
A lightweight framework for writing efficient cross-platform rendering code in modern C++. It abstracts operating system and toolchain concepts to enable quick prototyping and interation of rich interactive applications that run beautifully everywhere. The library is engineered for small code sizes to enable fast loading and low resource usage even within web browsers.
Pronounced 'zurtle'.
This is not an official Google product.
$ brew install bazel go
$ sudo easy_install protobuf
$ ./xtool setup
$ sudo apt-get install bazel golang-go libegl1-mesa-dev libgles2-mesa-dev
$ ./xtool setup
> choco install bazel golang
BAZEL_SH
, etc)> xtool setup
> xtool sln
.vs\xrtl.sln
, select a project, and press F5
!xtool
(or xtool.bat
on Windows)..bazelproject
file.If clang is not your default CC you should start CLion with CC=clang.
Build/test/run/query for host platform:
$ ./xtool build --all
$ ./xtool test --all
$ ./xtool run //xrtl/base:math_test_linux -- --some_arg
# Note that you can use `bazel` instead of `xtool` in most cases, but you must
# specify a config.
$ bazel build --config=macos_x86_64 //xrtl/base/...
Run linter and fix common errors:
$ ./xtool fix
GDB may need the following commands run at startup to resolve some third party source code. Replace directories with your workspace location:
dir $HOME/xrtl/bazel-xrtl
set substitute-path external/com_github_google_swiftshader $HOME/xrtl/third_party/swiftshader/
set substitute-path external/com_github_khronosgroup_glslang $HOME/xrtl/third_party/glslang/
$ ./xtool presubmit --fix
Common tags
that can be added to tests:
exclusive
: no other tests should run while this test is executing.requires_gui
: test uses a GUI and requires a window manager (X11/etc).requires_gpu
: test requires a real hardware GPU to run.# Run all tests except those that require a hardware GPU:
$ ./xtool test --all --test_tag_filter=-requires_gpu