-
Notifications
You must be signed in to change notification settings - Fork 5
Closed
Description
This is a great repo, thanks so much for creating it, and for the excellent examples.
I was wondering if it is possible to instantiate multiple Doxygen runs from a single BUILD file/package?
Example
# docs/doxygen/BUILD
doxygen(
name = "main_project",
srcs = [
"//src:main_project_sources",
]
deps = ["//x:main_project_deps"],
project_name = "Main Project",
generate_html = True,
generate_tagfile = "$(OUTDIR)/main/html/tagfile.xml"
tags = ["manual"]
)
doxygen(
name = "sub_project_1",
srcs = [
"//src:project_1_sources",
]
deps = ["//x:project_1_deps"],
project_name = "Project 1",
generate_html = True,
generate_tagfile = "$(OUTDIR)/project_1/html/tagfile_project_1.xml"
tags = ["manual"]
)
doxygen(
name = "sub_project_2",
srcs = [
"//src:project_2_sources",
]
deps = ["//x:project_2_deps"],
project_name = "Project 2",
generate_html = True,
generate_tagfile = "$(OUTDIR)/html/project_2/tagfile_project_2.xml"
tags = ["manual"]
)
What I want is some kind of output like:
bazel-out/k8-fastbuild/docs/doxygen/main_project/html
bazel-out/k8-fastbuild/docs/doxygen/main_project/Doxyfile
bazel-out/k8-fastbuild/docs/doxygen/project_1/html
bazel-out/k8-fastbuild/docs/doxygen/project_1/Doxyfile
bazel-out/k8-fastbuild/docs/doxygen/project_2/html
bazel-out/k8-fastbuild/docs/doxygen/project_2/Doxyfile
When I try this I get errors like
ERROR: file 'docs/doxygen/Doxyfile' is generated by these conflicting actions: Label: //docs/doxygen:sub_project_1, //docs/doxygen:sub_project_2`.
Of course it makes sense all these rules cannot generate a file called Doxyfile in the same location. But is there a way I can direct the output to subdirectories beneath the package staging area so that there is no collision?
The reason I don't just create subpackages is because in the real project, the subprojects are actually generated by another rule. So it's not easy to know pre-build what all the subprojects are.
TendTo
Metadata
Metadata
Assignees
Labels
No labels