|
| 1 | +# Environment variables |
| 2 | +In this file, we enumerate all the fastr-related environment variables |
| 3 | + |
| 4 | +## Build-time environment variables |
| 5 | +- `GNUR_HOME_BINARY` |
| 6 | + - A path to prebuilt GNU-R |
| 7 | + - See [Using pre-built GNU-R binary](building.md#GNU-R) |
| 8 | +- `FASTR_CC` |
| 9 | +- `FASTR_CXX` |
| 10 | +- `FASTR_FC` |
| 11 | + - FastR-specific C, C++, and Fortran compilers. |
| 12 | + - Used for building GNU-R from sources and/or when building native packages with FastR. |
| 13 | + - Do not use these env variables if you plan to use only one system-wide version of the toolchain. |
| 14 | +- `FASTR_RELEASE` |
| 15 | + - If set to `true`, a release version of FastR is built |
| 16 | + - See [Build modes](building.md#Build-modes). |
| 17 | +- `FASTR_NO_RECOMMENDED` |
| 18 | + - If set to `true`, no recommended packages are built |
| 19 | + - See [Build modes](building.md#Build-modes). |
| 20 | +- `FASTR_RECOMMENDED_BINARY` |
| 21 | + - A path to prebuilt recommended packages. |
| 22 | + - See [Caching recommended packages](building.md#Caching-recommended-packages). |
| 23 | +- `FASTR_CAPTURE_DEPENDENCIES` |
| 24 | + - List of dependencies to be bundled with FastR, separated by comma. |
| 25 | + - Used for release builds. |
| 26 | + - See [Build modes](building.md#Build-modes). |
| 27 | + |
| 28 | +## Environment variables for development |
| 29 | +- `ECLIPSE_EXE` |
| 30 | + - Path to eclipse executable used for `mx eclipseformat` or `mx checkstyle`. |
| 31 | + |
| 32 | +## Run-time environment variables |
| 33 | +- `FASTR_MRAN_MIRROR` |
| 34 | + - MRAN mirror used by FastR for installing packages. |
| 35 | + - If this env var is set, the package installation works as if calling `install.packages(..., repos=Sys.getenv('FASTR_PKGS_CACHE_OPT'))`. |
| 36 | +- `FASTR_REPOS` |
| 37 | + - name=value pairs for setting R repositories. |
| 38 | + - Will be used for something like `options(repos = ...)` in R. |
| 39 | + - Example: `FASTR_REPOS=file://home/pmarek/dev/fastr/com.oracle.truffle.r.test.native/packages/repo,CRAN=file://home/pmarek/minicran/2021-02-01`. |
| 40 | + - Used by `mx pkgtest` and `mx r-pkgcache` commands. |
| 41 | + - For more info run `mx pkgtest --help`. |
| 42 | +- `FASTR_OPTION_<option>=<value>` |
| 43 | + - With this pattern, you can pass an option to FastR. |
| 44 | + - Equivalent to `$GRAALVM_HOME/bin/R --R.<option>=<value>`. |
| 45 | + - E.g. `FASTR_OPTION_PrintErrorStacktracesToFile=true`. |
| 46 | + - See `com.oracle.truffle.r.runtime.context.FastROptions`. |
| 47 | +- `FASTR_PKGS_CACHE_OPT` |
| 48 | + - The location, and other properties of package cache directory used by `mx r-pkgcache`, and `mx pkgtest` commands. |
| 49 | + - Example: `export FASTR_PKGS_CACHE_OPT='dir=$HOME/fastr_pkgcache,vm=fastr,sync=TRUE'`. |
| 50 | + - `dir` points to the directory where the cache should exist, created if necessary. |
| 51 | + - `vm` is either `fastr` or `gnur` |
| 52 | + - `sync` is either `TRUE` or `FALSE`. If `TRUE`, the write access to the package cache is synchronized. |
| 53 | +- `R_GCTORTURE=<steps>`/`FASTR_GCTORTURE=<steps>` |
| 54 | + - After `steps` NFI upcalls, GC will be invoked. |
| 55 | + - Can be used for debugging problems with "Unknown native references". |
| 56 | + - See `com.oracle.truffle.r.runtime.context.GCTortureState`. |
| 57 | +- `GDLOG` |
| 58 | + - See `com.oracle.truffle.r.ffi.impl.javaGD.LoggingGD.java` |
| 59 | +- `JAVAGD_CLASS_NAME` |
| 60 | + - See `org.rosuda.javaGD/src/org/rosuda/javaGD/GDInterface.java` |
0 commit comments