Merge pull request #249 from meteorcloudy:stardoc-dev
PiperOrigin-RevId: 683088422
Change-Id: Id6308c12494f4b591fd1d47ffbe84cb3b01b745d
diff --git a/MODULE.bazel b/MODULE.bazel
index 5fa70e9..39de0d0 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -6,7 +6,6 @@
bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "platforms", version = "0.0.10")
-bazel_dep(name = "stardoc", version = "0.7.0")
cc_configure = use_extension("//cc:extensions.bzl", "cc_configure_extension")
use_repo(cc_configure, "local_config_cc", "local_config_cc_toolchains")
@@ -14,3 +13,4 @@
register_toolchains("@local_config_cc_toolchains//:all")
bazel_dep(name = "rules_testing", version = "0.6.0", dev_dependency = True)
+bazel_dep(name = "stardoc", version = "0.7.0", dev_dependency = True)
diff --git a/cc/toolchains/BUILD b/cc/toolchains/BUILD
index 98fe2cf..aac254d 100644
--- a/cc/toolchains/BUILD
+++ b/cc/toolchains/BUILD
@@ -13,11 +13,6 @@
# limitations under the License.
load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
-load("@bazel_skylib//rules:diff_test.bzl", "diff_test")
-load("@bazel_skylib//rules:expand_template.bzl", "expand_template")
-load("@stardoc//stardoc:stardoc.bzl", "stardoc")
-load("//cc/toolchains/impl:documented_api.bzl", "DOCUMENTED_TOOLCHAIN_RULES")
-load("//cc/toolchains/impl:markdown_helpers.bzl", "xref_substitutions")
bzl_library(
name = "toolchain_rules",
@@ -42,35 +37,3 @@
]),
visibility = ["//visibility:public"],
)
-
-stardoc(
- name = "toolchain_api",
- out = "raw_generated_toolchain_api.md",
- input = "//cc/toolchains/impl:documented_api.bzl",
- deps = [":toolchain_rules"],
-)
-
-expand_template(
- name = "toolchain_api_md",
- out = "generated_toolchain_api.md",
- # Dictionary order 100% matters here!
- # buildifier: disable=unsorted-dict-items
- substitutions = {
- # Strip @rules_cc to prevent instances of @rules_cc@rules_cc//cc.
- "@rules_cc//cc": "//cc",
- # In GitHub, we prefer to clarify all the labels that come from
- # rules_cc.
- "//cc": "@rules_cc//cc",
- } | xref_substitutions({
- "`{}`".format(rule_name): "#{}".format(rule_name)
- for rule_name in DOCUMENTED_TOOLCHAIN_RULES
- }),
- # buildifier: enable=unsorted-dict-items
- template = ":raw_generated_toolchain_api.md",
-)
-
-diff_test(
- name = "toolchain_api_diff_test",
- file1 = ":generated_toolchain_api.md",
- file2 = ":toolchain_api.md",
-)
diff --git a/cc/toolchains/impl/BUILD b/cc/toolchains/impl/BUILD
index 2ad5817..f621832 100644
--- a/cc/toolchains/impl/BUILD
+++ b/cc/toolchains/impl/BUILD
@@ -9,7 +9,7 @@
exports_files(
["documented_api.bzl"],
- visibility = ["//cc/toolchains:__subpackages__"],
+ visibility = ["//docs:__pkg__"],
)
bzl_library(
diff --git a/docs/BUILD b/docs/BUILD
new file mode 100644
index 0000000..3680fb6
--- /dev/null
+++ b/docs/BUILD
@@ -0,0 +1,60 @@
+# Copyright 2024 The Bazel Authors. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+load("@bazel_skylib//rules:diff_test.bzl", "diff_test")
+load("@bazel_skylib//rules:expand_template.bzl", "expand_template")
+load("@stardoc//stardoc:stardoc.bzl", "stardoc")
+load("//cc/toolchains/impl:documented_api.bzl", "DOCUMENTED_TOOLCHAIN_RULES")
+load("//cc/toolchains/impl:markdown_helpers.bzl", "xref_substitutions")
+
+filegroup(
+ name = "srcs",
+ srcs = glob([
+ "**/*.bzl",
+ "**/BUILD",
+ ]),
+ visibility = ["//visibility:public"],
+)
+
+stardoc(
+ name = "toolchain_api",
+ out = "raw_generated_toolchain_api.md",
+ input = "//cc/toolchains/impl:documented_api.bzl",
+ deps = ["//cc/toolchains:toolchain_rules"],
+)
+
+expand_template(
+ name = "toolchain_api_md",
+ out = "generated_toolchain_api.md",
+ # Dictionary order 100% matters here!
+ # buildifier: disable=unsorted-dict-items
+ substitutions = {
+ # Strip @rules_cc to prevent instances of @rules_cc@rules_cc//cc.
+ "@rules_cc//cc": "//cc",
+ # In GitHub, we prefer to clarify all the labels that come from
+ # rules_cc.
+ "//cc": "@rules_cc//cc",
+ } | xref_substitutions({
+ "`{}`".format(rule_name): "#{}".format(rule_name)
+ for rule_name in DOCUMENTED_TOOLCHAIN_RULES
+ }),
+ # buildifier: enable=unsorted-dict-items
+ template = ":raw_generated_toolchain_api.md",
+)
+
+diff_test(
+ name = "toolchain_api_diff_test",
+ file1 = ":generated_toolchain_api.md",
+ file2 = ":toolchain_api.md",
+)
diff --git a/cc/toolchains/toolchain_api.md b/docs/toolchain_api.md
similarity index 100%
rename from cc/toolchains/toolchain_api.md
rename to docs/toolchain_api.md