Add a CI check for the prebuild debug-mode libraries.#190
Conversation
e1d14a7 to
7bfc05e
Compare
|
The current working directory path of the build is embedded in the debug info and is different between my build and the github build. |
The existing CI code checked it for --release builds; this ensures it's checked for debug builds as well. This also updates the debug builds which became out of date after bc8ea07 added comments to the .s files, changing the line numbers in the .debug_line sections.
dc17875 to
25ceb3e
Compare
|
It looks like building the libraries in a directory named "/home/runner/work/rustix/rustix" was sufficient to reproduce the same binaries that are produced in github CI here! |
cgwalters
left a comment
There was a problem hiding this comment.
I haven't fully followed this but - are these prebuilt libraries only needed for CI? Can we skip publishing them in the crates.io source and skip the tests if they're not present?
Right now our projects vendor sources and I'd like to avoid vendoring .a files.
|
These are used to avoid requiring downstream users needing to have (cross-) compilers installed. You can build rustix without using them, by enabling the "cc" feature in cargo, and having the appropriate compilers installed. That will build everything from source. Rustix also has inline asm that it can use instead. This currently only works on nightly Rust, but it's in the process of being stabilized, so in the future it'll work on stable Rust as well. |
The existing CI code checked it for --release builds; this ensures it's
checked for debug builds as well.
This also updates the debug builds where became out of date after
bc8ea07 added comments to the .s files, changing the line numbers in
the .debug_line sections.