Building


See Introduction to the buildsystem for the required tools to building this GDExtension in your machine.

You can also build using the Dockerfile in the repository.

After getting the required tools, you can build the GDExtension with:

scons platform=<platform>

Replace <platform> with the target platform:
After finishing the build, you will be able to find the binaries in bin/ folder, copy then to the addons/rmlui/bin/ folder in your project, overwritting existing binaries if already exists.

Build Options


With the SCons build system, you can pass additional flags when building the extension:

svg_plugin=<yes|no>


Defaults to yes

By default, the extension builds with SVG support, using lunasvg, but you can pass svg_plugin=no to disable SVG support.

element_reference_strict=<yes|no>


Defaults to no

RMLElement is a reference to a element inside the RmlUi document's tree, all the API always returns a non-null instance of it, but in case of querying elements which doesn't exist in the tree, for example, RMLElement references a null element.

By default, when trying to handle RMLElement instances with null reference, it does nothing and/or returns default values.

But you can enable strict element referencing by passing element_reference_strict=yes flag to the scons, meaning that any atempt of handling RMLElement instances with null reference, will print an error and pause the execution on debug builds.

In both cases, you can check if the instance is valid with RMLElement.is_valid.