Remove special s2n-bignum symbol handling sauce from build #1903
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of changes:
Symbols from s2n-bignum needed special build shenanigans because they essentially are "third-party" (although still AWS owned) in the context of what code AWS-LC repository can touch. Therefore they didn't have the special "prefix" header files. This corrupts the prefix build in two ways that needed to be handled:
Removing these two corruptions, means it's now a bit easier to import s2n-bignum code. A small step closer to maybe switching to a submodule.
Should also make the rust build easier. Hopefully...
Call-outs:
Originally I went with a method that required s2n-bignum source code changes. Essentially, one can define a path to prefix symbols and inject into the pre-processor we run s2n-bignum files through. The benefit is that we don't have to reason about tooling. It's just simple macro gymnastics.
Andrew suggested
--include
flag as a way to not do s2n-bignum code changes. That seems a bit easier for now. We can revert to another more portable method if required. Having more AWS-LC special sauce in s2n-bignum is not the preferred for sure.Testing:
CI has several test suites for the prefix build.
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.