diff --git a/documentation/content/en/books/porters-handbook/uses/_index.adoc b/documentation/content/en/books/porters-handbook/uses/_index.adoc --- a/documentation/content/en/books/porters-handbook/uses/_index.adoc +++ b/documentation/content/en/books/porters-handbook/uses/_index.adoc @@ -604,6 +604,55 @@ The format of `featurelist` is described in man:elfctl[1]. +[[uses-elixir]] +== `elixir` + +Possible arguments: (none) + +Provide support for ports using package:lang/elixir[]. +Adds a build and run time dependency on package:lang/elixir[]. + +Variables provided by the framework: + +`ELIXIR_APP_NAME`:: +Elixir app name as installed in Elixir's lib directory +`ELIXIR_LIB_ROOT`:: +Elixir default library path +`ELIXIR_APP_ROOT`:: +Root directory for this Elixir app +`ELIXIR_HIDDEN`:: +Applications to be hidden from the code path; usually ${PORTNAME} +`ELIXIR_LOCALE`:: +An UTF-8 locale to be used by Elixir during builds (any UTF-8 locale is good) +`MIX_CMD`:: +The `mix` command +`MIX_COMPILE`:: +The `mix` command used to compile an Elixir app +`MIX_REWRITE`:: +Automatically replace Mix dependencies with code paths +`MIX_BUILD_DEPS`:: +List of `BUILD_DEPENDS` in category/portname format (commonly referenced to as "deps" in Erlang and Elixir) +`MIX_RUN_DEPS`:: +List of `RUN_DEPENDS` in category/portname format +`MIX_DOC_DIRS`:: +Extra doc directories to be installed in `DOCSDIR` +`MIX_DOC_FILES`:: +Extra doc files to be installed in `DOCSDIR` (usually README.md) +`MIX_ENV`:: +Environment for the Mix build (same format as `MAKE_ENV`) +`MIX_ENV_NAME`:: +Name of the Mix build environment, usually "prod" +`MIX_BUILD_NAME`:: +Name of the build output in _build/, usually `${MIX_ENV_NAME}` +`MIX_TARGET`:: +Name of the Mix target, usually "compile" +`MIX_EXTRA_APPS`:: +List of sub-applications to be built, if any +`MIX_EXTRA_DIRS`:: +List of extra directories to be installed in `ELIXIR_APP_ROOT` +`MIX_EXTRA_FILES`:: +List of extra files to be installed in `ELIXIR_APP_ROOT` + [[uses-emacs]] == `emacs` @@ -666,6 +715,7 @@ `EMACS_VERSION_SITE_LISPDIR`:: Include version (e.g. [.filename]#share/emacs/30.1/site-lisp#) +[[uses-erlang]] == `erlang` Possible arguments: (none), `enc`, `rebar`, `rebar3`