blob: 3c1baae2ac77395629d56ec9150476a1c95a694c [file] [log] [blame]
Alexei Frolov0efdb112019-11-14 17:22:08 -08001# Copyright 2019 The Pigweed Authors
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4# use this file except in compliance with the License. You may obtain a copy of
5# the License at
6#
7# https://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations under
13# the License.
14
Armando Montanezfb3d3fb2020-06-09 18:12:12 -070015import("//build_overrides/pigweed.gni")
Alexei Frolov0efdb112019-11-14 17:22:08 -080016
Armando Montanezfb3d3fb2020-06-09 18:12:12 -070017import("$dir_pw_docgen/docs.gni")
Wyatt Heplerd49f8fe2020-10-15 10:13:47 -070018
Keir Mierle2c1e56b2019-11-15 16:32:11 -080019pw_doc_group("core_docs") {
Armando Montanez1d001202020-03-04 11:51:32 -080020 inputs = [
Armando Montanez4db74e12020-03-17 15:55:59 -070021 "images/pw_env_setup_demo.gif",
Armando Montanezbcc194b2020-03-10 10:23:18 -070022 "images/pw_status_test.png",
Armando Montanez1d001202020-03-04 11:51:32 -080023 "images/pw_watch_build_demo.gif",
Armando Montanezbcc194b2020-03-10 10:23:18 -070024 "images/pw_watch_on_device_demo.gif",
Armando Montanez1d001202020-03-04 11:51:32 -080025 "images/pw_watch_test_demo.gif",
26 "images/stm32f429i-disc1_connected.jpg",
27 ]
Keir Mierle2c1e56b2019-11-15 16:32:11 -080028 sources = [
29 "embedded_cpp_guide.rst",
Keir Mierleeaa7e922020-07-24 14:30:47 -070030 "faq.rst",
Armando Montanez4db74e12020-03-17 15:55:59 -070031 "getting_started.md",
Keir Mierle086ef1c2020-03-19 02:03:51 -070032 "module_structure.rst",
Keir Mierle2c1e56b2019-11-15 16:32:11 -080033 "style_guide.rst",
34 ]
35}
36
Armando Montanez08745582019-12-12 10:51:50 -080037# Documentation for upstream Pigweed targets.
38group("target_docs") {
Armando Montanez3d92e812020-03-19 12:13:36 -070039 deps = [
Anthony DiGirolamoeea0d772020-08-06 12:00:36 -070040 "$dir_pigweed/targets/arduino:target_docs",
Armando Montanez3d92e812020-03-19 12:13:36 -070041 "$dir_pigweed/targets/docs:target_docs",
42 "$dir_pigweed/targets/host:target_docs",
Armando Montanez096de552020-03-23 10:38:18 -070043 "$dir_pigweed/targets/lm3s6965evb-qemu:target_docs",
Armando Montanez3d92e812020-03-19 12:13:36 -070044 "$dir_pigweed/targets/stm32f429i-disc1:target_docs",
45 ]
Armando Montanez08745582019-12-12 10:51:50 -080046}
47
Alexei Frolov216808f2020-09-08 14:01:45 -070048group("module_docs") {
Alexei Frolov0efdb112019-11-14 17:22:08 -080049 deps = [
Rob Mohre916d322020-07-17 09:07:32 -070050 "$dir_docker:docs",
Armando Montanezccc3ee12020-06-11 16:36:11 -070051 "$dir_pw_allocator:docs",
Anthony DiGirolamo9147aa02020-09-22 10:41:05 -070052 "$dir_pw_arduino_build:docs",
Keir Mierle3cee8792020-01-22 17:08:13 -080053 "$dir_pw_assert:docs",
Keir Mierleec9bf1b2020-03-03 10:27:01 -080054 "$dir_pw_assert_basic:docs",
Keir Mierleb776cb22020-08-14 16:46:50 -070055 "$dir_pw_assert_log:docs",
Armando Montanez0054a9b2020-03-13 13:06:24 -070056 "$dir_pw_base64:docs",
Alexei Frolov0efdb112019-11-14 17:22:08 -080057 "$dir_pw_bloat:docs",
David Rogers2d195022020-07-16 14:07:47 -070058 "$dir_pw_blob_store:docs",
Armando Montanez70095662020-01-09 14:25:04 -080059 "$dir_pw_boot_armv7m:docs",
Rob Mohr49de4922019-12-10 20:10:41 -080060 "$dir_pw_build:docs",
shaneajg9c19db42020-06-11 15:49:51 -040061 "$dir_pw_bytes:docs",
Wyatt Hepler3c4e5de2020-03-03 14:37:52 -080062 "$dir_pw_checksum:docs",
Ewout van Bekkum3c61ae92020-10-30 15:52:25 -070063 "$dir_pw_chrono:docs",
Ewout van Bekkuma25df5f2021-04-09 18:10:49 -070064 "$dir_pw_chrono_embos:docs",
65 "$dir_pw_chrono_freertos:docs",
Ewout van Bekkum3c61ae92020-10-30 15:52:25 -070066 "$dir_pw_chrono_stl:docs",
Ewout van Bekkuma25df5f2021-04-09 18:10:49 -070067 "$dir_pw_chrono_threadx:docs",
Armando Montanez0054a9b2020-03-13 13:06:24 -070068 "$dir_pw_cli:docs",
Wyatt Hepler3c4e5de2020-03-03 14:37:52 -080069 "$dir_pw_containers:docs",
Armando Montanez5104cd62019-12-10 14:36:43 -080070 "$dir_pw_cpu_exception:docs",
Armando Montaneza9ca9992021-01-26 17:06:10 -080071 "$dir_pw_cpu_exception_cortex_m:docs",
Alexei Frolov8ffcb912019-11-18 11:00:20 -080072 "$dir_pw_docgen:docs",
Rob Mohrf82e7a82020-01-03 13:50:11 -080073 "$dir_pw_doctor:docs",
Rob Mohrd45e2342020-03-03 15:02:18 -080074 "$dir_pw_env_setup:docs",
Aaron Greenf3c3d2b2020-04-02 23:12:31 -070075 "$dir_pw_fuzzer:docs",
Alexei Frolovd3e5cb72021-01-08 13:08:45 -080076 "$dir_pw_hdlc:docs",
Armando Montanez593d0d52020-07-08 19:55:01 -070077 "$dir_pw_hex_dump:docs",
Ewout van Bekkumbd4906c2020-11-11 13:42:13 -080078 "$dir_pw_interrupt:docs",
79 "$dir_pw_interrupt_cortex_m:docs",
Armando Montanez0054a9b2020-03-13 13:06:24 -070080 "$dir_pw_kvs:docs",
Keir Mierleaf5e3582019-12-30 13:11:05 -080081 "$dir_pw_log:docs",
Armando Montanez0054a9b2020-03-13 13:06:24 -070082 "$dir_pw_log_basic:docs",
Prashanth Swaminathan5ef2aa22020-11-10 09:57:46 -080083 "$dir_pw_log_multisink:docs",
Wyatt Hepler24a6e272020-09-01 10:25:28 -070084 "$dir_pw_log_null:docs",
Prashanth Swaminathane9cf3762020-09-23 10:01:29 -070085 "$dir_pw_log_rpc:docs",
Prashanth Swaminathan49a4a822021-01-12 18:41:52 -080086 "$dir_pw_log_sink:docs",
Wyatt Heplercb725c12020-05-01 11:05:01 -070087 "$dir_pw_log_tokenized:docs",
Keir Mierle45fa7852020-08-10 21:09:54 -070088 "$dir_pw_metric:docs",
Wyatt Hepler0412a7d2020-01-28 16:27:32 -080089 "$dir_pw_minimal_cpp_stdlib:docs",
Keir Mierlec34f71f2019-12-06 12:44:47 -080090 "$dir_pw_module:docs",
Prashanth Swaminathanf36832a2021-01-27 16:20:32 -080091 "$dir_pw_multisink:docs",
Rob Mohr0b6a5022020-10-22 11:10:24 -070092 "$dir_pw_package:docs",
Ewout van Bekkum32dc5c52021-03-16 11:35:37 -070093 "$dir_pw_persistent_ram:docs",
Wyatt Heplerc542a5d2020-01-15 15:43:10 -080094 "$dir_pw_polyfill:docs",
Alexei Frolov0efdb112019-11-14 17:22:08 -080095 "$dir_pw_preprocessor:docs",
Wyatt Hepleree3e02f2019-12-05 10:52:31 -080096 "$dir_pw_presubmit:docs",
Alexei Frolov9c2ed462020-01-13 15:35:42 -080097 "$dir_pw_protobuf:docs",
Alexei Frolov942adf02019-12-11 17:07:28 -080098 "$dir_pw_protobuf_compiler:docs",
Armando Montanez47008e82020-08-04 11:04:45 -070099 "$dir_pw_random:docs",
Alexei Frolov41b32d32019-11-13 17:22:03 -0800100 "$dir_pw_result:docs",
Keir Mierle866cff42020-04-28 22:24:44 -0700101 "$dir_pw_ring_buffer:docs",
Alexei Frolov5af57d12021-01-12 11:38:06 -0800102 "$dir_pw_router:docs",
Alexei Frolov26e3ae62020-05-04 17:06:17 -0700103 "$dir_pw_rpc:docs",
Wyatt Hepleree3e02f2019-12-05 10:52:31 -0800104 "$dir_pw_span:docs",
105 "$dir_pw_status:docs",
Armando Montanez0bcae732020-05-27 13:28:11 -0700106 "$dir_pw_stream:docs",
Wyatt Heplerfe85de22019-11-19 17:10:20 -0800107 "$dir_pw_string:docs",
Ewout van Bekkum58901932020-11-09 12:46:52 -0800108 "$dir_pw_sync:docs",
Prashanth Swaminathanacbd0702021-01-22 11:58:15 -0800109 "$dir_pw_sync_baremetal:docs",
Ewout van Bekkum3b9eca42021-04-02 14:54:02 -0700110 "$dir_pw_sync_embos:docs",
111 "$dir_pw_sync_freertos:docs",
Ewout van Bekkum58901932020-11-09 12:46:52 -0800112 "$dir_pw_sync_stl:docs",
Ewout van Bekkum5bcd8c42020-11-23 10:46:16 -0800113 "$dir_pw_sync_threadx:docs",
Armando Montanezf7a5a742020-03-02 14:58:59 -0800114 "$dir_pw_sys_io:docs",
Anthony DiGirolamoeea0d772020-08-06 12:00:36 -0700115 "$dir_pw_sys_io_arduino:docs",
Armando Montanezf7a5a742020-03-02 14:58:59 -0800116 "$dir_pw_sys_io_baremetal_stm32f429:docs",
117 "$dir_pw_sys_io_stdio:docs",
Alexei Frolov300dcea2019-12-23 13:33:59 -0800118 "$dir_pw_target_runner:docs",
Ewout van Bekkumf4da4892021-03-05 15:05:37 -0800119 "$dir_pw_thread:docs",
Ewout van Bekkuma25df5f2021-04-09 18:10:49 -0700120 "$dir_pw_thread_embos:docs",
121 "$dir_pw_thread_freertos:docs",
122 "$dir_pw_thread_stl:docs",
Ewout van Bekkumf4da4892021-03-05 15:05:37 -0800123 "$dir_pw_thread_threadx:docs",
Wyatt Hepler80c6ee52020-01-03 09:54:58 -0800124 "$dir_pw_tokenizer:docs",
Armando Montanez0054a9b2020-03-13 13:06:24 -0700125 "$dir_pw_toolchain:docs",
Robert Oliverd1323f42020-04-27 12:05:16 -0400126 "$dir_pw_trace:docs",
Robert Oliver21dcf272020-05-12 15:41:52 -0400127 "$dir_pw_trace_tokenized:docs",
Alexei Frolovea395522020-03-13 13:35:07 -0700128 "$dir_pw_unit_test:docs",
Wyatt Hepler3c4e5de2020-03-03 14:37:52 -0800129 "$dir_pw_varint:docs",
Armando Montanezbcc194b2020-03-10 10:23:18 -0700130 "$dir_pw_watch:docs",
Matthew Soulanille376d7972020-06-01 15:50:07 -0700131 "$dir_pw_web_ui:docs",
Alexei Frolov0efdb112019-11-14 17:22:08 -0800132 ]
133}
Alexei Frolov216808f2020-09-08 14:01:45 -0700134
135pw_doc_gen("docs") {
136 conf = "conf.py"
137 sources = [
138 "../CODE_OF_CONDUCT.md",
139 "../CONTRIBUTING.md",
140 "../README.md",
141 "build_system.rst",
142 "index.rst",
143 "module_guides.rst",
Wyatt Heplerb3ea9802021-02-23 09:46:09 -0800144 "python_build.rst",
Alexei Frolov216808f2020-09-08 14:01:45 -0700145 "targets.rst",
146 ]
147 output_directory = target_gen_dir
148 deps = [
149 ":core_docs",
150 ":module_docs",
151 ":target_docs",
Wyatt Hepler752d7d32021-03-02 09:02:23 -0800152 "$dir_pw_env_setup:python.install",
Alexei Frolov216808f2020-09-08 14:01:45 -0700153 ]
154}