-
Notifications
You must be signed in to change notification settings - Fork 103
Nickez/support arm64 in docker #1284
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
Nickez/support arm64 in docker #1284
Conversation
a15e95a
to
9247f24
Compare
9247f24
to
4357f21
Compare
In the new toolchain `assert` is defined as a macro. That interferes with the ASF function called `assert` so we undefined it right before that function is defined.
We also have to provide the search path to the linker to our dummy files libssp and libssp_nonshared. The actual implementation of the stack protector functions are in common_main.c.
a9e8ad2
to
2c57ea6
Compare
linux/arm64 is the default on newer macbooks with the apple cpu. The toolchain GCC 8 2018 q4 is not available for linux/arm64. So we go with the latest available, which is GCC 13.3.
2c57ea6
to
a662e21
Compare
Rebased on |
releases/build.sh
Outdated
# The firmware is only reproducible with the same host compiler. For now we force linux/amd64. | ||
# The file .containerversion does not exist in older versions of the project. | ||
containerversion=$(2>/dev/null cat .containerversion || echo "latest") | ||
docker build --pull --platform linux/amd64 --force-rm --no-cache -t bitbox02-firmware:${containerversion} . |
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.
you don't need to tag anything here, it serves no purpose. the image is built here from scratch and used in the next line, not pulled, so the local image name/tag is irrelevant, and using .containerversion
here is distracting/confusing, as it is unrelated to our shiftcrypto/firmware_v2 tagging.
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.
no problem, fixed!
Currently it is not posisble to reproducibly build the firmware due to the toolchains we have, therefore we enforce amd64.
a662e21
to
7ba38b1
Compare
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.
utACK
No description provided.