-
Notifications
You must be signed in to change notification settings - Fork 56
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
Build broken on s390x-unknown-linux-gnu with FIPS #655
Comments
I can reproduce the error with GCC 13.3.0, just to be sure. |
Hello! The FIPS build requires additional complexity that makes it much more fragile, especially when building for a platform (like (Also, our FIPS build for That said, I will look into this build failure. Hopefully, it's an easy fix. 🤞 😄 |
I'm able to reproduce the same failure: 🤔
|
My particular "usecase" is that I maintain a library which in itself depends on rustls and exposes an optional feature to toggle the From what I see at quick glance in aws-lc's FIPS code, there is no architecture specific file for CPU features in s390x (resulting in the undeclared function), but it doesn't seem like adding one that just no-ops since there is no architecture-specific code for it would be an issue? Feel free to correct me if I'm wrong, though. |
Thanks for the context around this issue. I think you were right about the cause, I can get the build to succeed using this patch:
I'll put up a PR to get this change into AWS-LC. However, it might be awhile before the change makes it into branch used by |
I've put up a couple of PRs to address this build issue. We should have this resolved by our next release. Thanks for the report! |
Awesome, thanks a lot for the quick responses! |
### Issues: Addresses aws/aws-lc-rs#655 ### Description of changes: * The criteria for invoking `OPENSSL_cpuid_setup` should align with the criteria for defining `OPENSSL_cpuid_setup`. ### Call-outs: Consumers building `aws-lc-fips-sys` for `s390x` were seeing the following failure: ``` .../boringssl_prefix_symbols.h:20:26: error: implicit declaration of function 'aws_lc_fips_0_13_1_OPENSSL_cpuid_setup'; did you mean 'aws_lc_fips_0_13_1_OPENSSL_sk_set'? [-Werror=implicit-function-declaration] ``` ### Testing: I verified this fix works for the `aws-lc-fips-sys` build for `s390x-unknown-linux-gnu`. By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Hello! We just released aws-lc-rs v1.12.1 which we believe will resolve this issue. Please let us know if you have any more problems after upgrading. If needed, feel free to reopen this issue or create a new one. Thanks for helping to improve our library! |
### Issues: Addresses aws/aws-lc-rs#655 ### Description of changes: * The criteria for invoking `OPENSSL_cpuid_setup` should align with the criteria for defining `OPENSSL_cpuid_setup`. ### Call-outs: Consumers building `aws-lc-fips-sys` for `s390x` were seeing the following failure: ``` .../boringssl_prefix_symbols.h:20:26: error: implicit declaration of function 'aws_lc_fips_0_13_1_OPENSSL_cpuid_setup'; did you mean 'aws_lc_fips_0_13_1_OPENSSL_sk_set'? [-Werror=implicit-function-declaration] ``` ### Testing: I verified this fix works for the `aws-lc-fips-sys` build for `s390x-unknown-linux-gnu`. By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Problem:
aws-lc-rs with FIPS mode enabled fails to build for me on s390x-unknown-linux-gnu. I haven't tested non-FIPS yet. I'm using a nightly rust compiler from rustup with roughly the following container and packages:
I'm aware that GCC 14 builds of the FIPS mode are currently failing, but the issue I'm running into is a different one than #569 and doesn't seem to be related to my compiler version.
Relevant details
AWS-LC for Rust version: 1.12.0
System information: for linux, below info can be collected by running
uname -srvmp
Build log:
Logs are here
The text was updated successfully, but these errors were encountered: