Skip to content

Commit

Permalink
Rust/bazel: Port to bzlmod.
Browse files Browse the repository at this point in the history
This gets rid of our last workspace dependency.
In particular, this change also gets rid of the checked-in extra
lock files that took forever to generate.
  • Loading branch information
criemen committed Jun 10, 2024
1 parent 7ecf1f9 commit 092bc64
Show file tree
Hide file tree
Showing 8 changed files with 48 additions and 8,892 deletions.
23 changes: 23 additions & 0 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,32 @@ bazel_dep(name = "rules_kotlin", version = "1.9.4-codeql.1")
bazel_dep(name = "gazelle", version = "0.36.0")
bazel_dep(name = "rules_dotnet", version = "0.15.1")
bazel_dep(name = "googletest", version = "1.14.0.bcr.1")
bazel_dep(name = "rules_rust", version = "0.46.0")

bazel_dep(name = "buildifier_prebuilt", version = "6.4.0", dev_dependency = True)

crate = use_extension(
"@rules_rust//crate_universe:extension.bzl",
"crate",
)
crate.from_cargo(
name = "py_deps",
cargo_lockfile = "//python/extractor/tsg-python:Cargo.lock",
manifests = [
"//python/extractor/tsg-python:Cargo.toml",
"//python/extractor/tsg-python/tsp:Cargo.toml",
],
)
crate.from_cargo(
name = "ruby_deps",
cargo_lockfile = "//ruby/extractor:Cargo.lock",
manifests = [
"//ruby/extractor:Cargo.toml",
"//ruby/extractor/codeql-extractor-fake-crate:Cargo.toml",
],
)
use_repo(crate, "py_deps", "ruby_deps")

dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet")
dotnet.toolchain(dotnet_version = "8.0.101")
use_repo(dotnet, "dotnet_toolchains")
Expand Down
23 changes: 23 additions & 0 deletions misc/bazel/rust.bzl
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
load("@rules_rust//rust:defs.bzl", "rust_binary")
load("@semmle_code//buildutils-internal:glibc_symbols_check.bzl", "glibc_symbols_check")
load("@semmle_code//buildutils-internal:lipo.bzl", "universal_binary")

def codeql_rust_binary(
name,
target_compatible_with = None,
visibility = None,
symbols_test = True,
**kwargs):
rust_label_name = name + "_single_arch"
universal_binary(
name = name,
dep = ":" + rust_label_name,
target_compatible_with = target_compatible_with,
visibility = visibility,
)
rust_binary(
name = rust_label_name,
**kwargs
)
if symbols_test:
glibc_symbols_check(name = name + "symbols-test", binary = name)
2 changes: 1 addition & 1 deletion python/extractor/tsg-python/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
load("@py_deps//:defs.bzl", "aliases", "all_crate_deps")
load("@semmle_code//:common.bzl", "codeql_rust_binary")
load("//misc/bazel:rust.bzl", "codeql_rust_binary")

codeql_rust_binary(
name = "tsg-python",
Expand Down
Loading

0 comments on commit 092bc64

Please sign in to comment.