Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update Rust and Go #41

Merged
merged 4 commits into from
Jan 5, 2021
Merged

Conversation

bcressey
Copy link
Contributor

@bcressey bcressey commented Jan 4, 2021

Issue number:
Fixes #38, fixes #40

Description of changes:
Update Rust to 1.49.0. This required a few changes beyond the version bump: changing how custom targets are created; adding the host triplet to the targets list, which is no longer done implicitly; and dropping an unnecessary strip command.

Update Go to 1.15.6.

Testing done:
Built the four SDK combinations - aarch64 and x86_64 host, aarch64 and x86_64 target.

Built aws-k8s-1.18 variants with the four SDKs. Verified that they came up, joined the cluster, had no errors in the journal.

Terms of contribution:

By submitting this pull request, I agree that this contribution is dual-licensed under the terms of both the Apache License, version 2.0, and the MIT license.

Adapt the creation of our custom targets to upstream changes.

Add the host triple to the targets list, since this no longer happens
implicitly.

Remove the strip invocation. The LLVM library is statically linked
into librustc_driver, so the dynamic library is not installed.

Signed-off-by: Ben Cressey <bcressey@amazon.com>
Signed-off-by: Ben Cressey <bcressey@amazon.com>
Signed-off-by: Ben Cressey <bcressey@amazon.com>
@bcressey bcressey requested review from tjkirch and webern January 4, 2021 23:32
configs/rust/config-aarch64.toml.in Show resolved Hide resolved
Copy link
Contributor

@webern webern left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They changed the directory structure in the source? Is that why those paths changed?

Copy link
Contributor

@zmrow zmrow left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔬

@bcressey
Copy link
Contributor Author

bcressey commented Jan 5, 2021

They changed the directory structure in the source? Is that why those paths changed?

Correct, and there's a new scheme where some of the architecture-specific targets copy settings from a base set of options --

linux_base.rs -> linux_musl_base.rs -> x86_64_unknown_linux_musl.rs

The "unknown" vendor is the overall default for the options struct, so we have to apply it somewhere, and it was easiest to do that immediately after loading the base settings.

The example config is well-documented and provides context on what
these settings mean, along with the others that we leave at default
values.

Signed-off-by: Ben Cressey <bcressey@amazon.com>
@bcressey bcressey requested a review from tjkirch January 5, 2021 17:15
@bcressey bcressey merged commit 24d321f into bottlerocket-os:develop Jan 5, 2021
@bcressey bcressey deleted the rust-and-go branch January 5, 2021 18:17
KCSesh pushed a commit to KCSesh/bottlerocket-sdk that referenced this pull request Sep 10, 2024
Move Settings Models to the Settings SDK
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update Go to 1.15.6 Update to Rust 1.49
5 participants