-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Ruby: Start building the language pack using bazel. #15656
Conversation
eecdfdb
to
b3ea60f
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.
Looks alright to me, but let's keep the centos 7 test.
b3ea60f
to
c097397
Compare
52e4adc
to
c097397
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.
Looks good to me. Thanks for looking into this!
This PR introduces a bazel and `rules_rust`-based build system for the ruby extractor and language pack. This replacese the existing, `cargo` and `cross`-based build system. For local development, nothing changes, and the existing `cargo`-based build still keeps working as-is. We no longer need to use `cross` to compile our Linux binaries, as we now can link against our hermetic C++ toolchain, which ships with an old enough glibc, so that we don't run into symbol version issues when deploying the binaries to older systems. Besides the one change in dependency (explained in detail in `Cargo.toml` and in #15595), nothing ought to change in how we build the extractor.
As we're now checking out the `codeql` repo in a sub-path, we need to enable long paths on Windows.
debfe1b
to
1657b31
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.
🚀
This PR introduces a bazel and
rules_rust
-based build system for the ruby extractor and language pack.This replaces the existing,
cargo
andcross
-based build system.For local development, nothing changes, and the existing
cargo
-based build still keeps working as-is.We no longer need to use
cross
to compile our Linux binaries, as we now can link against our hermetic C++ toolchain, which ships with an old enough glibc, so that we don't run into symbol version issues when deploying the binaries to older systems. However, this means that we no longer can run the centos-test with thegithub/codeql
/cargo
-based buildsystem, as the correct binaries will only be produced by the internal bazel setup.Besides the one change in dependency (explained in detail in
Cargo.toml
and in #15595), nothing ought to change in how we build the extractor.