-
Notifications
You must be signed in to change notification settings - Fork 571
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
i#1973 musl: Add CI workflow #7197
base: master
Are you sure you want to change the base?
Conversation
The workflow constructs an Alpine Linux chroot environment in place and build DynamoRIO in it, serving as compatibility verification against musl. Tests are disabled in CI since only half of them pass. Issue: DynamoRIO#1973
if (UNIX AND NOT APPLE AND "$ENV{DYNAMORIO_CLANG}" MATCHES "yes") | ||
set(run_tests OFF) | ||
message("Detected a CI clang suite: disabling running of tests") | ||
# XXX i#1973: our musl port passes only half of the tests. Enable tests in CI |
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.
Perhaps this should be a TODO not an XXX
.
# fortify-headers, which isn't compatible with DynamoRIO source. | ||
# TODO i#1973: simplify after fixing compatibility problem. | ||
sudo sbin/apk.static -p alpine-root -U --initdb --allow-untrusted add \ | ||
alpine-base binutils bash cmake doxygen file g++ git libunwind-dev \ |
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.
Which of these need --allow-untrusted
? Add that to 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.
It's necessary because we're creating a rootfs from scratch, thus there isn't any public key available to verify package signatures. I consider it acceptable since we're downloading packages through https (see the repository configuration)
Will add a comment on this.
echo "https://dl-cdn.alpinelinux.org/v3.21/main/" | \ | ||
sudo tee alpine-root/etc/apk/repositories | ||
# Meta-package build-base simplifies dependencies, but it pulls in | ||
# fortify-headers, which isn't compatible with DynamoRIO source. |
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.
Could you augment this comment with some more details:
- What do you mean "not compatible with DynamoRIO source"?
- What is the simplification suggested?
The workflow constructs an Alpine Linux chroot environment in place and build DynamoRIO in it, serving as compatibility verification against musl. Tests are disabled in CI since only half of them pass.
Issue: #1973