Skip to content

Changing build configurations

Philipp Schulz edited this page May 18, 2022 · 2 revisions

Anyolite can be configured in different ways to be customized in some aspects. This can be done by setting the environment variable ANYOLITE_CONFIG_PATH to point to a configuration file.

The default configuration file (used if ANYOLITE_CONFIG_PATH is empty) at "configs/anyolite_config_mruby.json" looks like this:

{
  "implementation": "mruby",
  "build_path": "build",
  "rb_fork": "https://github.com/mruby/mruby",
  "rb_release": "3.1.0",
  "rb_minor": "3.1.0",
  "rb_dir": "third_party",
  "rb_config": "utility/mruby_build_config.rb",
  "glue_dir": "glue/mruby"
}
  • "implementation" can be either "mruby" or "mri", depending on which implementation you want to use.
  • "build_path" points to the relative path where Anyolite will be built into.
  • "rb_fork" is the link to the Ruby git repository which is to be used.
  • "rb_release" is the release tag of the repository.
  • "rb_minor" is the minor release version of the repository (only relevant for MRI).
  • "rb_dir" is the relative directory where the Ruby repository will be cloned into.
  • "rb_config" is the relative path for the mruby configuration file (only relevant for mruby).
  • "glue_dir" is the relative path to the C files which are used as a layer between Crystal and the Ruby implementation.

Also, the environment variable ANYOLITE_RB_CONFIG_RELATIVE_PATH can be set to a specific path from which "rb_config" will be determined. This is useful if the mruby configuration file is on a place which can not be determined relatively to the Anyolite directory.

Custom mruby configuration files can be used to add additional mrbgems or change compilation aspects of mruby. For more information it is highly recommended to visit the following page: https://github.com/mruby/mruby/blob/master/doc/guides/compile.md

Clone this wiki locally