6 from pathlib
import Path
11 on_readthedocs = os.environ.get(
"READTHEDOCS",
None) ==
"True"
16 author =
"The Acts authors"
18 f
"2014–{datetime.date.today().year} CERN for the benefit of the Acts project"
25 sys.path.insert(0,
str(Path(__file__).parent /
"_extensions"))
34 warnings_filter_config =
str(Path(__file__).parent /
"known-warnings.txt")
35 warnings_filter_silent =
True
38 ".rst":
"restructuredtext",
43 exclude_patterns = [
"_build",
"api/api_stub.rst",
"api/api_index.rst"]
45 primary_domain =
"cpp"
46 highlight_language =
"cpp"
50 myst_enable_extensions = [
"dollarmath",
"colon_fence",
"amsmath"]
51 myst_heading_anchors = 3
55 r"https://doi.org/.*",
56 r"https://cernvm.cern.ch/.*",
57 r"https://tavianator.com/.*",
58 r"http://eigen.tuxfamily.org.*",
59 r"https://pythia.org.*",
64 html_theme =
"sphinx_rtd_theme"
65 extensions.append(
"sphinx_rtd_theme")
67 html_theme_options = {
68 "collapse_navigation":
False,
69 "navigation_depth": 4,
70 "prev_next_buttons_location":
None,
71 "style_external_links":
True,
73 html_logo =
"figures/acts_logo_white.svg"
80 html_copy_source =
False
81 html_show_sourcelink =
False
82 html_show_sphinx =
False
87 "Acts":
"_build/doxygen-xml",
89 breathe_default_project =
"Acts"
90 breathe_domain_by_extension = {
95 breathe_default_members = (
102 env = os.environ.copy()
103 env[
"DOXYGEN_WARN_AS_ERROR"] =
"NO"
104 cwd = Path(__file__).parent
106 if on_readthedocs
or tags.has(
"run_doxygen"):
108 print(
"Executing doxygen in", cwd)
111 subprocess.check_output([
"doxygen",
"--version"], encoding=
"utf-8"),
114 subprocess.check_call(
115 [
"doxygen",
"Doxyfile"], stdout=subprocess.PIPE, cwd=cwd, env=env
118 api_index_target = cwd /
"api/api.rst"
120 if on_readthedocs
or tags.has(
"run_apidoc"):
121 print(
"Executing breathe apidoc in", cwd)
122 subprocess.check_call(
123 [sys.executable,
"-m",
"breathe.apidoc",
"_build/doxygen-xml",
"-o",
"api"],
124 stdout=subprocess.DEVNULL,
128 if not api_index_target.exists():
129 shutil.copyfile(cwd /
"api/api_index.rst", api_index_target)
130 print(
"breathe apidoc completed")
132 if not api_index_target.exists():
133 shutil.copyfile(cwd /
"api/api_stub.rst", api_index_target)