-
Notifications
You must be signed in to change notification settings - Fork 192
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Refactor handling env vars in CI build (#455)
* Refactor handling env vars in CI build This commit updates the handling of various environment variables to centralize them in one location in `main.yml` as part of CI configuration. This removes a few custom-named variables in favor of using explicitly-listed env vars. Additionally this moves some env var management from the CI container files to the github actions config as well to keep everything in one place ideally. * Add some more comments about where configuration comes in
- Loading branch information
1 parent
9ee7080
commit 9af8b0f
Showing
5 changed files
with
56 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,23 +1,11 @@ | ||
FROM wasi-sdk-builder-base | ||
|
||
# Install an extra C++ toolchain which can target arm64 linux. | ||
RUN apt-get install -y g++-aarch64-linux-gnu | ||
|
||
# Don't build a sysroot for this cross-compiled target since it would require a | ||
# host compiler and the sysroot is otherwise already built on other CI builders. | ||
ENV WASI_SDK_CI_SKIP_SYSROOT 1 | ||
|
||
ENV WASI_SDK_CI_TOOLCHAIN_LLVM_CMAKE_ARGS \ | ||
-DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc \ | ||
-DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ \ | ||
-DCMAKE_CROSSCOMPILING=True \ | ||
-DCMAKE_CXX_FLAGS=-march=armv8-a \ | ||
-DCMAKE_SYSTEM_PROCESSOR=arm64 \ | ||
-DCMAKE_SYSTEM_NAME=Linux \ | ||
-DLLVM_HOST_TRIPLE=aarch64-linux-gnu \ | ||
-DRUST_TARGET=aarch64-unknown-linux-gnu | ||
|
||
ENV WASI_SDK_CI_TOOLCHAIN_CMAKE_ARGS \ | ||
-DWASI_SDK_ARTIFACT=arm64-linux \ | ||
-DRUST_TARGET=aarch64-unknown-linux-gnu | ||
|
||
# Configure Rust to use this new compiler for linking Rust executables. | ||
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER aarch64-linux-gnu-gcc | ||
|
||
# Note that `.github/workflows/main.yml` sets various bits and bobs of | ||
# configuration and cmake flags that may get passed to the underlying build. For | ||
# example LLVM is instructed to use the toolchain installed above. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,7 @@ | ||
FROM wasi-sdk-builder-base | ||
|
||
ENV WASI_SDK_CI_TOOLCHAIN_CMAKE_ARGS \ | ||
-DWASI_SDK_ARTIFACT=x86_64-linux | ||
# No extra configuration necessary for x86_64 over what `Dockerfile.common` | ||
# already has. | ||
# | ||
# Note though that `.github/workflows/main.yml` still sets various bits and bobs | ||
# of configuration and cmake flags that may get passed to the underlying build. |