Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ build --compilation_mode opt
common --override_module=semmle_code=%workspace%/misc/bazel/semmle_code_stub

build --repo_env=CC=clang --repo_env=CXX=clang++
# Disable Android SDK auto-detection (we don't use it, and rules_android has Bazel 9 compatibility issues)
build --repo_env=ANDROID_HOME=

# print test output, like sembuild does.
# Set to `errors` if this is too verbose.
Expand All @@ -34,7 +36,7 @@ common --@rules_dotnet//dotnet/settings:strict_deps=false
common --@rules_rust//rust/toolchain/channel=nightly

# Reduce this eventually to empty, once we've fixed all our usages of java, and https://github.com/bazel-contrib/rules_go/issues/4193 is fixed
common --incompatible_autoload_externally="+@rules_java,+@rules_shell"
common --incompatible_autoload_externally="+@rules_cc,+@rules_java,+@rules_shell"

build --java_language_version=17
build --tool_java_language_version=17
Expand Down
2 changes: 1 addition & 1 deletion .bazelversion
Original file line number Diff line number Diff line change
@@ -1 +1 @@
8.4.2
9.0.0
19 changes: 15 additions & 4 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,19 @@ local_path_override(
# see https://registry.bazel.build/ for a list of available packages

bazel_dep(name = "platforms", version = "1.0.0")
bazel_dep(name = "rules_go", version = "0.56.1")
bazel_dep(name = "rules_cc", version = "0.2.16")
bazel_dep(name = "rules_go", version = "0.59.0")
bazel_dep(name = "rules_java", version = "9.0.3")
bazel_dep(name = "rules_pkg", version = "1.0.1")
bazel_dep(name = "rules_nodejs", version = "6.2.0-codeql.1")
bazel_dep(name = "rules_nodejs", version = "6.7.3")
bazel_dep(name = "rules_python", version = "0.40.0")
bazel_dep(name = "rules_shell", version = "0.5.0")
bazel_dep(name = "bazel_skylib", version = "1.8.1")
bazel_dep(name = "abseil-cpp", version = "20240116.1", repo_name = "absl")
bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json")
bazel_dep(name = "fmt", version = "12.1.0-codeql.1")
bazel_dep(name = "rules_kotlin", version = "2.2.0-codeql.1")
bazel_dep(name = "gazelle", version = "0.40.0")
bazel_dep(name = "rules_kotlin", version = "2.2.2-codeql.1")
bazel_dep(name = "gazelle", version = "0.47.0")
bazel_dep(name = "rules_dotnet", version = "0.21.5-codeql.1")
bazel_dep(name = "googletest", version = "1.14.0.bcr.1")
bazel_dep(name = "rules_rust", version = "0.66.0")
Expand Down Expand Up @@ -188,6 +190,15 @@ pip.parse(
)
use_repo(pip, "codegen_deps")

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
is_default = True,
python_version = "3.12",
)
use_repo(python, "python_3_12", "python_versions")

register_toolchains("@python_versions//3.12:all")

swift_deps = use_extension("//swift/third_party:load.bzl", "swift_deps")

# following list can be kept in sync with `bazel mod tidy`
Expand Down
1 change: 1 addition & 0 deletions javascript/extractor/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
load("@rules_java//java:defs.bzl", "java_library")
load("@rules_pkg//pkg:mappings.bzl", "pkg_files")
load("@semmle_code//:common.bzl", "codeql_fat_jar", "codeql_java_project")

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
load("@rules_java//java:defs.bzl", "java_test")

java_test(
name = "test",
srcs = glob(["**/*.java"]),
Expand Down
2 changes: 2 additions & 0 deletions misc/bazel/cmake/cmake.bzl
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
load("@rules_cc//cc/common:cc_info.bzl", "CcInfo")

CmakeInfo = provider(
fields = {
"name": "",
Expand Down
4 changes: 3 additions & 1 deletion misc/bazel/internal/zipmerge/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_test")

cc_library(
name = "lib",
srcs = [
Expand Down Expand Up @@ -28,7 +30,7 @@ cc_test(
linkstatic = True, # required to build the test in the internal repo
deps = [
":lib",
"@bazel_tools//tools/cpp/runfiles",
"@googletest//:gtest_main",
"@rules_cc//cc/runfiles",
],
)
4 changes: 2 additions & 2 deletions misc/bazel/internal/zipmerge/zipmerge_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@

#include <gtest/gtest.h>
#include <gmock/gmock.h>
#include "tools/cpp/runfiles/runfiles.h"
#include "rules_cc/cc/runfiles/runfiles.h"

using bazel::tools::cpp::runfiles::Runfiles;
using rules_cc::cc::runfiles::Runfiles;
using namespace std::string_literals;
namespace fs = std::filesystem;

Expand Down
4 changes: 2 additions & 2 deletions misc/bazel/registry/fix.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@ def update(data):
patch_json(
version / "source.json",
patches={
p.name: sha256(p) for p in patches.iterdir()
p.name: sha256(p) for p in sorted(patches.iterdir())
} if patches.is_dir() else None,
patch_strip=1 if patches.is_dir() else None,
overlay={
o.name: sha256(o) for o in overlay.iterdir()
o.name: sha256(o) for o in sorted(overlay.iterdir())
} if overlay.is_dir() else None,
)

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,19 +1,21 @@
module(
name = "rules_kotlin",
version = "2.2.0-codeql.1",
version = "2.2.2-codeql.1",
compatibility_level = 1,
repo_name = "rules_kotlin",
)

bazel_dep(name = "platforms", version = "0.0.11")
bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "rules_java", version = "7.2.0")
bazel_dep(name = "rules_java", version = "8.9.0")
bazel_dep(name = "rules_android", version = "0.6.4")
bazel_dep(name = "bazel_features", version = "1.25.0")
bazel_dep(name = "protobuf", version = "29.0", repo_name = "com_google_protobuf")
bazel_dep(name = "rules_proto", version = "6.0.2", repo_name = "rules_proto")
bazel_dep(name = "abseil-py", version = "2.1.0", repo_name = "py_absl")
bazel_dep(name = "rules_cc", version = "0.0.16")
bazel_dep(name = "bazel_worker_api", version = "0.0.8")
bazel_dep(name = "bazel_worker_java", version = "0.0.8")

rules_java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains")
use_repo(rules_java_toolchains, "remote_java_tools")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
Emitting jdeps is broken for the 2.0.0 kotlin extractor, and we don't need those files.
Patching it here rather than passing `--@rules_kotlin//kotlin/settings:jvm_emit_jdeps=false`
allows us to not have to specify that option (and therefore pull in `rules_kotlin`) in `semmle-code`.
allows us to not have to specify that option (and therefore pull in `rules_kotlin`) in the
internal repo.
--- a/kotlin/settings/BUILD.bazel
+++ b/kotlin/settings/BUILD.bazel
@@ -16,6 +16,6 @@ release_archive(
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"integrity": "sha256-QR2yavs0ksyDUbW1NJkxUir+LFTyZRttEncwoSVtD2A=",
"url": "https://github.com/bazelbuild/rules_kotlin/releases/download/v2.2.2/rules_kotlin-v2.2.2.tar.gz",
"patches": {
"codeql_add_language_version_option.patch": "sha256-HoH8NWXxmYHmm/SxaugRdXgMntvcQx5gRLW2yQIvWhM=",
"codeql_do_not_emit_jdeps.patch": "sha256-cg06knW+Eq13qHCaelbnZka/WnGPvRrcqXHtpXsy/rA="
},
"patch_strip": 1
}
2 changes: 1 addition & 1 deletion misc/bazel/registry/modules/rules_kotlin/metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"github:bazelbuild/rules_kotlin"
],
"versions": [
"2.2.0-codeql.1",
"2.2.2-codeql.1"
],
"yanked_versions": {}
}
3 changes: 3 additions & 0 deletions misc/codegen/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ py_binary(
srcs = ["codegen.py"],
data = [
"//misc/codegen/templates:cpp",
"//misc/codegen/templates:dbscheme",
"//misc/codegen/templates:ql",
"//misc/codegen/templates:rust",
"//misc/codegen/templates:trap",
],
visibility = ["//visibility:public"],
Expand Down
15 changes: 15 additions & 0 deletions misc/codegen/templates/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
package(default_visibility = ["//misc/codegen:__subpackages__"])

filegroup(
name = "dbscheme",
srcs = ["dbscheme.mustache"],
)

filegroup(
name = "trap",
srcs = glob(["trap_*.mustache"]),
Expand All @@ -9,3 +14,13 @@ filegroup(
name = "cpp",
srcs = glob(["cpp_*.mustache"]),
)

filegroup(
name = "ql",
srcs = glob(["ql_*.mustache"]),
)

filegroup(
name = "rust",
srcs = glob(["rust_*.mustache"]),
)
2 changes: 2 additions & 0 deletions shared/cpp/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
load("@rules_cc//cc:defs.bzl", "cc_library")

cc_library(
name = "extractor_shared",
srcs = glob(["*.cpp"]),
Expand Down
2 changes: 2 additions & 0 deletions swift/logging/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
load("@rules_cc//cc:defs.bzl", "cc_library")

cc_library(
name = "logging",
srcs = glob(["*.cpp"]),
Expand Down
5 changes: 3 additions & 2 deletions swift/rules.bzl
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
load("@rules_cc//cc:defs.bzl", "CcInfo", "cc_binary", "cc_library")
load("//misc/bazel:os.bzl", "os_select")

# TODO: make a shared library with the internal repos for transitions
Expand Down Expand Up @@ -124,7 +125,7 @@ def _wrap_cc(rule, kwargs):
)

def swift_cc_binary(**kwargs):
_wrap_cc(native.cc_binary, kwargs)
_wrap_cc(cc_binary, kwargs)

def swift_cc_library(**kwargs):
_wrap_cc(native.cc_library, kwargs)
_wrap_cc(cc_library, kwargs)
Loading