[llvm] [mlgo] bazel rules for mlgo-utils (PR #79217)

Mircea Trofin via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 23 14:01:38 PST 2024


https://github.com/mtrofin created https://github.com/llvm/llvm-project/pull/79217

Akin the `py_binary` rules for `lit`, these are scoped to binaries, rather than exposing the library - binary split. The latter is available to the package (pip package) users.

Tested:

```
cd utils/bazel
bazel build @llvm-project//llvm:extract_ir
bazel-bin/external/llvm-project/llvm/extract_ir --help
```
...and observed expected output (rather than import not found errors)

(Same for the other 2 targets).

>From 33baf8080582cc07f6617ea3791b9f9eaf3374a4 Mon Sep 17 00:00:00 2001
From: Mircea Trofin <mtrofin at google.com>
Date: Tue, 23 Jan 2024 13:57:05 -0800
Subject: [PATCH] [mlgo] bazel rules for mlgo-utils

Akin the `py_binary` rules for `lit`, these are scoped to binaries,
rather than exposing the library - binary split. The latter is available
to the package (pip package) users.
---
 .../llvm-project-overlay/llvm/BUILD.bazel     | 30 +++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel b/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
index b22ec01376be6d..2117bc5cba784e 100644
--- a/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
@@ -4958,6 +4958,36 @@ py_binary(
     srcs = ["utils/lit/lit.py"] + glob(["utils/lit/lit/**/*.py"]),
 )
 
+py_binary(
+    name = "extract_ir",
+    srcs = [
+        "utils/mlgo-utils/mlgo/__init__.py",
+        "utils/mlgo-utils/mlgo/corpus/extract_ir.py",
+        "utils/mlgo-utils/mlgo/corpus/extract_ir_lib.py"
+    ],
+    imports = ["utils/mlgo-utils"]
+)
+
+py_binary(
+    name = "combine_training_corpus",
+    srcs = [
+        "utils/mlgo-utils/mlgo/__init__.py",
+        "utils/mlgo-utils/mlgo/corpus/combine_training_corpus.py",
+        "utils/mlgo-utils/mlgo/corpus/combine_training_corpus_lib.py"
+    ],
+    imports = ["utils/mlgo-utils"]
+)
+
+py_binary(
+    name = "make_corpus",
+    srcs = [
+        "utils/mlgo-utils/mlgo/__init__.py",
+        "utils/mlgo-utils/mlgo/corpus/make_corpus.py",
+        "utils/mlgo-utils/mlgo/corpus/make_corpus_lib.py"
+    ],
+    imports = ["utils/mlgo-utils"]
+)
+
 cc_library(
     name = "TestingADT",
     testonly = True,



More information about the llvm-commits mailing list