-
Notifications
You must be signed in to change notification settings - Fork 1
/
crossrc.bash_aliases
181 lines (155 loc) · 7.24 KB
/
crossrc.bash_aliases
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
#!/usr/bin/env bash
# This file contains environment variables definitions and possible
# values to configure cross. The values provided are generally defaults,
# otherwise the default value is documented.
# CROSS CONFIGURATION
# -------------------
# These are environment variables used to configure cross.
# The container engine to run cross in. Defaults to `docker` then `podman`,
# whichever is found first (example: docker, see the FAQ). You can also
# provide a path or the name of a binary on the path.
CROSS_CONTAINER_ENGINE=podman
# Home directory for xargo.
XARGO_HOME=~/.xargo
# The directory for the Nix store.
NIX_STORE=/nix/store
# Set the user identifier for the cross command. Must be a valid user ID.
# Valid user IDs are generally `0` (root), or `1000-60000` (regular users).
# Specifications for valid user IDs are described here:
# https://en.wikipedia.org/wiki/User_identifier#Conventions
CROSS_CONTAINER_UID=1000
# Set the group identifier for the cross command. This has
# similar restrictions to the user ID.
CROSS_CONTAINER_GID=1000
# Inform cross that it is running inside a container. When unset,
# set to `0`, empty, or `false`, inform `cross` it is not running in
# a container. By default this is false.
CROSS_CONTAINER_IN_CONTAINER=1
# Additional arguments to provide to the container engine during $engine run.
# Useful when needing additional customization or flags passed to `cross`
# not available by other config variables.
CROSS_CONTAINER_OPTS="--env MYVAR=1"
# Specify the path to the `cross` config file.
CROSS_CONFIG="Cross.toml"
# Print debugging information for cross when using the Linux or Android runners.
# When unset, set to `0`, empty, or `false`, do not print debugging information.
# By default this is false.
CROSS_DEBUG=1
# Use older cross behavior. By default this is unset and uses the latest behavior.
CROSS_COMPATIBILITY_VERSION=0.2.1
# Specify that rustup is using a custom toolchain, and therefore should
# not try to add targets/install components. Useful with `cargo-bisect-rustc`.
# When unset, set to `0`, empty, or `false`, assume rustup can install targets
# or components. By default this is false.
CROSS_CUSTOM_TOOLCHAIN=1
# Inform cross it is using a remote container engine, and use data volumes
# rather than local bind mounts. See Remote for more information using
# remote container engines. When unset, set to `0`, empty, or `false`,
# assume cross is running locally. By default this is false.
CROSS_REMOTE=1
# Get a backtrace of of system calls from binaries run using Qemu.
# By default, only “foreign” (non x86_64) use Qemu when run. When unset,
# set to `0`, empty, or `false`, do not provide an strace. By default
# this is false.
QEMU_STRACE=1
# Specify whether to container engine runs as root or is rootless.
# When unset, set to `auto`, `0`, empty, or `false`, cross assumes docker
# runs as root and all other container engines are rootless.
CROSS_ROOTLESS_CONTAINER_ENGINE=1
# Copy the cargo registry and git directories. The must be enabled
# to support private SSH dependencies. When unset, set to `auto`,
# `0`, empty, or `false`, cross does not copy the registry, requiring it
# to be recreated on the remote data volume.
CROSS_REMOTE_COPY_REGISTRY=1
# Copy all directories, even those containing CACHETAG.DIR (a cache
# directory tag). When unset, set to `auto`, `0`, empty, or `false`,
# cross skips any cache directories, reducing the amount of data transferred
# to the remote client.
CROSS_REMOTE_COPY_CACHE=1
# Do not copy any generated build artifacts back to the host after
# finishing the build. If using persistent data volumes, the artifacts
# will remain in the volume. This is useful if building remotely while
# testing changes made locally: that is, if the generated build artifacts
# are not always or never needed. When unset, set to `auto`, `0`, empty,
# or `false`, cross copies the target directory back to the host.
CROSS_REMOTE_SKIP_BUILD_ARTIFACTS=1
# Custom the container user namespace. If set to none, user namespaces
# will be disabled. If not provided or set to `auto`, it will use the
# default namespace.
CROSS_CONTAINER_USER_NAMESPACE="host"
# CROSS TOML CONFIGURATION
# ------------------------
# These are additional ways to specify configuration values present in
# `Cross.toml` or `Cargo.toml`. Environment variables will override
# values found in `Cross.toml`, however, more specific values will
# still be used over less specific ones. For example, `target.(...).xargo`
# will still override `CROSS_BUILD_XARGO`. The priority order goes as follows:
# 1. Environment variable target.
# 2. Config target.
# 3. Environment variable build.
# 4. Config build.
#
# Values in `Cross.toml` will also override those in `Cargo.toml`. Almost
# all configuration options can be provided, with `build.xargo` being
# provided as `CROSS_BUILD_XARGO`, `build.default-target` as
# `CROSS_BUILD_DEFAULT_TARGET`, `target.aarch64-unknown-linux-gnu.runner`
# as `CROSS_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER`, etc.
# Sets the default target, similar to specifying --target.
# Soft-deprecated, prefer `CARGO_BUILD_TARGET` instead.
CROSS_BUILD_TARGET="aarch64-unknown-linux-gnu"
# CROSS_TARGET_${TARGET}_RUNNER: provide a runner for the cross target.
# Valid values are `qemu-system`, `qemu-user`, and `native`
# (the last only for native targets).
CROSS_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUNNER=qemu-user
# CARGO CONFIGURATION
# -------------------
# These are values used to configure `cargo`.
# Other variables that can be specified are available here:
# https://doc.rust-lang.org/cargo/reference/environment-variables.html
#
# Supported environment variables include:
# - BROWSER
# - CARGO_BUILD_DEP_INFO_BASEDIR
# - CARGO_BUILD_INCREMENTAL
# - CARGO_BUILD_JOBS
# - CARGO_BUILD_RUSTDOCFLAGS
# - CARGO_BUILD_RUSTFLAGS
# - CARGO_CACHE_RUSTC_INFO
# - CARGO_FUTURE_INCOMPAT_REPORT_FREQUENCY
# - CARGO_HTTP_CAINFO
# - CARGO_HTTP_CHECK_REVOKE
# - CARGO_HTTP_DEBUG
# - CARGO_HTTP_LOW_SPEED_LIMIT
# - CARGO_HTTP_MULTIPLEXING
# - CARGO_HTTP_PROXY
# - CARGO_HTTP_SSL_VERSION
# - CARGO_HTTP_TIMEOUT
# - CARGO_HTTP_USER_AGENT
# - CARGO_INCREMENTAL
# - CARGO_NET_GIT_FETCH_WITH_CLI
# - CARGO_NET_OFFLINE
# - CARGO_NET_RETRY
# - HTTP_TIMEOUT
# - HTTPS_PROXY
# - RUSTDOCFLAGS
# - RUSTFLAGS
# - TERM
# Sets the default target, similar to specifying --target.
CARGO_BUILD_TARGET="aarch64-unknown-linux-gnu"
# CARGO_TARGET_${TARGET}_LINKER: specify a custom linker passed to rustc.
# This can be multiple arguments, which are evaluated as if passed to
# a Unix shell (for example, `ld-wrapper bfd`)
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=link.sh
# CARGO_TARGET_${TARGET}_RUNNER: specify the wrapper to run executables.
# This can be multiple arguments, which are evaluated as if passed to
# a Unix shell (for example, `qemu-aarch64 -cpu cortex-a72`)
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER="qemu-aarch64 -cpu cortex-a72"
# CARGO_TARGET_${TARGET}_RUSTFLAGS: add additional flags passed to rustc.
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS="-C lto thin -C panic abort"
# UNSTABLE FEATURES
# -----------------
# These are unstable features, which are only available on nightly.
# Enable running doctests when using `cross test`. When unset,
# set to `0`, empty, or `false`, doctests are disabled. Any other
# value enables doctests.
CROSS_UNSTABLE_ENABLE_DOCTESTS=1