-
Notifications
You must be signed in to change notification settings - Fork 22
Regain control over the SDK libraries [new variant using rebuilt newlib from Debian sources) #1076
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
Regain control over the SDK libraries [new variant using rebuilt newlib from Debian sources) #1076
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1076 +/- ##
=======================================
Coverage 62.58% 62.58%
=======================================
Files 14 14
Lines 1860 1860
=======================================
Hits 1164 1164
Misses 696 696
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
0pendev
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll leave @bboilot-ledger to look at the workflow 🙏
bboilot-ledger
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Workflows look good to me! We could however enforce the GITHUB_TOKEN permissions. The fixes proposed by copilot should work well.
Note that it's recommended to use intermediate env variables in shell scripts as variable exponentiation (${{*}}) happens before the script execution which could result in code execution (https://docs.github.com/en/actions/reference/security/secure-use#use-an-intermediate-environment-variable). Also those variable should be escaped using double quotes to bind them to only one argument in case the variable contains spaces.
-> Since this workflow can only be triggered by a person with wirte access to the repository there's not much risk.
0c4e247 to
6d5d3ba
Compare
6d5d3ba to
0b5182e
Compare
e4ce829 to
2bbb8d6
Compare
2bbb8d6 to
b6abd3f
Compare
b37acaa to
b29db46
Compare
b29db46 to
3954b8f
Compare
Description
Replacement for #1036
Corresponds to https://ledgerhq.atlassian.net/browse/B2CA-1995.
DONE
libclang_rt.builtinsreplaceslibgccfor Nano X, Stax and Flex targets, built usingbuild_clangrt_builtins.shscriptlibcandlibmhave been updated from the ones built usingbuild_newlib.shscript (newlib 3.3.0 from Debian 12 currently used forapp-builder)feat/regain_control_over_libs_2)app-boilerplate-rustandapp-starknetapps. This is expected as Rust build does not seem to uselibgcc.aandlibm.a- onlylibc.a. So some improvements to be done later in the Rust SDK as follow Regain control over the SDK libraries for Rust ledger-device-rust-sdk#269libgccfrom the SDK (still "used" by NanoS)? - let's do it in an independent PR cleaning up all occurrences!Tests
app-ethereum- see [[NEW] lib.c.newlib.rebuilt.armv-v8m] column in https://docs.google.com/spreadsheets/d/1qI_2yP-VMc6ze2DHbfCj5uHf3eDwh5NnysEewkuJuBw/edit?gid=1206824572#gid=1206824572NanoSP,Flex,app-bitcoin-new,app-boilerplate-rust,app-starknet)Few other remarks
app-builderwe'll need to rebuild the libs and benefit among other from the newest newlib version 4.5.0Changes include
Breaking changes
Please complete this section if any breaking changes have been made, otherwise delete it.
Additional comments
[x] TARGET_API_LEVEL: API_LEVEL_24
[x] TARGET_API_LEVEL: API_LEVEL_25