blob: f34fda296a594981111b1cfb018b007ebc7bcef9 [file] [log] [blame]
cparsons5d85e752018-06-26 13:47:28 -07001# Description:
2# Skydoc is a documentation generator for skylark files.
3#
4# It is currently experimental and in development.
5#
6# Usage:
7# skydoc <target_file> <output_file>
8
9package(
10 default_visibility = ["//src:__subpackages__"],
11)
12
13licenses(["notice"]) # Apache 2.0
14
15filegroup(
16 name = "srcs",
17 srcs = glob(["**"]) + [
18 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi:srcs",
cparsons6645e912018-06-29 11:18:05 -070019 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/android:srcs",
cparsons030448a2018-06-28 12:32:46 -070020 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple:srcs",
cparsons574eb162018-06-29 07:19:22 -070021 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/config:srcs",
cparsons636f5c02018-06-29 12:34:37 -070022 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp:srcs",
cparsons2fd48282018-06-29 13:20:56 -070023 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java:srcs",
cparsons574eb162018-06-29 07:19:22 -070024 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/platform:srcs",
Googlerbd81bf02019-02-01 14:00:14 -080025 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/proto:srcs",
brandjonddfc4302019-01-29 13:21:23 -080026 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/python:srcs",
cparsons574eb162018-06-29 07:19:22 -070027 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/repository:srcs",
28 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/test:srcs",
cparsons5d85e752018-06-26 13:47:28 -070029 "//src/main/java/com/google/devtools/build/skydoc/rendering:srcs",
cparsons5ece6502019-04-17 10:19:41 -070030 "//src/main/java/com/google/devtools/build/skydoc/rendering/proto:srcs",
cparsons5d85e752018-06-26 13:47:28 -070031 ],
32)
33
34java_binary(
35 name = "skydoc",
Liam Miller-Cushon4566a422018-09-07 00:32:41 -070036 jvm_flags = [
37 # quiet warnings from com.google.protobuf.UnsafeUtil,
38 # see: https://github.com/google/protobuf/issues/3781
39 # and: https://github.com/bazelbuild/bazel/issues/5599
40 "--add-opens=java.base/java.nio=ALL-UNNAMED",
41 "--add-opens=java.base/java.lang=ALL-UNNAMED",
42 # ... but only on JDK >= 9
43 "-XX:+IgnoreUnrecognizedVMOptions",
44 ],
cparsons5d85e752018-06-26 13:47:28 -070045 main_class = "com.google.devtools.build.skydoc.SkydocMain",
cparsons458bcb52018-07-26 11:49:23 -070046 visibility = ["//visibility:public"],
cparsons5d85e752018-06-26 13:47:28 -070047 runtime_deps = [
48 ":skydoc_lib",
49 ],
50)
51
52java_library(
53 name = "skydoc_lib",
54 srcs = glob(["*.java"]),
cparsons37fbbf32018-11-21 15:13:24 -080055 visibility = ["//src/test:__subpackages__"],
cparsons5d85e752018-06-26 13:47:28 -070056 deps = [
57 "//src/main/java/com/google/devtools/build/lib:events",
cparsons37fbbf32018-11-21 15:13:24 -080058 "//src/main/java/com/google/devtools/build/lib:skylark_semantics",
59 "//src/main/java/com/google/devtools/build/lib:skylark_semantics_options",
cparsons62675102019-02-07 11:47:51 -080060 "//src/main/java/com/google/devtools/build/lib:starlark_context",
cparsons5d85e752018-06-26 13:47:28 -070061 "//src/main/java/com/google/devtools/build/lib:syntax",
cparsons6964a0b2018-07-26 16:02:23 -070062 "//src/main/java/com/google/devtools/build/lib/cmdline",
cparsons5d85e752018-06-26 13:47:28 -070063 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi",
cparsons6645e912018-06-29 11:18:05 -070064 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android",
cparsons030448a2018-06-28 12:32:46 -070065 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple",
cparsons574eb162018-06-29 07:19:22 -070066 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config",
cparsons636f5c02018-06-29 12:34:37 -070067 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp",
cparsons2fd48282018-06-29 13:20:56 -070068 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java",
cparsons574eb162018-06-29 07:19:22 -070069 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform",
Googlerbd81bf02019-02-01 14:00:14 -080070 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/proto",
brandjonddfc4302019-01-29 13:21:23 -080071 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/python",
cparsons574eb162018-06-29 07:19:22 -070072 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository",
73 "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test",
cparsons5d85e752018-06-26 13:47:28 -070074 "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
75 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi",
cparsons6645e912018-06-29 11:18:05 -070076 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/android",
cparsons030448a2018-06-28 12:32:46 -070077 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple",
cparsons574eb162018-06-29 07:19:22 -070078 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/config",
cparsons636f5c02018-06-29 12:34:37 -070079 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp",
cparsons2fd48282018-06-29 13:20:56 -070080 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java",
cparsons574eb162018-06-29 07:19:22 -070081 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/platform",
Googlerbd81bf02019-02-01 14:00:14 -080082 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/proto",
brandjonddfc4302019-01-29 13:21:23 -080083 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/python",
cparsons574eb162018-06-29 07:19:22 -070084 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/repository",
85 "//src/main/java/com/google/devtools/build/skydoc/fakebuildapi/test",
cparsons5d85e752018-06-26 13:47:28 -070086 "//src/main/java/com/google/devtools/build/skydoc/rendering",
cparsons37fbbf32018-11-21 15:13:24 -080087 "//src/main/java/com/google/devtools/common/options",
cparsons5d85e752018-06-26 13:47:28 -070088 "//third_party:guava",
cparsons5d85e752018-06-26 13:47:28 -070089 ],
90)