1# Copyright 2020 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 15import("//build_overrides/pigweed.gni") 16 17import("$dir_pigweed/targets/stm32f429i_disc1/target_toolchains.gni") 18import("$dir_pw_docgen/docs.gni") 19import("$dir_pw_log_tokenized/backend.gni") 20import("$dir_pw_protobuf_compiler/proto.gni") 21import("$dir_pw_third_party/nanopb/nanopb.gni") 22import("$dir_pw_toolchain/arm_gcc/toolchains.gni") 23import("$dir_pw_toolchain/generate_toolchain.gni") 24import("$dir_pw_toolchain/traits.gni") 25 26if (current_toolchain != default_toolchain) { 27 pw_source_set("tokenized_log_handler") { 28 deps = [ 29 "$dir_pw_bytes", 30 "$dir_pw_log_tokenized:handler.facade", 31 "$dir_pw_sys_io", 32 ] 33 sources = [ "tokenized_log_handler.cc" ] 34 } 35} 36 37# Toolchain for generating upstream Pigweed documentation. 38generate_toolchain("docs") { 39 # Use the stm32f429i-disc1 toolchain for pw_size_diff targets. 40 _base_toolchain = pw_target_toolchain_stm32f429i_disc1.size_optimized 41 forward_variables_from(_base_toolchain, 42 "*", 43 [ 44 "defaults", 45 "name", 46 ]) 47 48 # Docs assume output binary location, and don't support extensions. 49 final_binary_extension = "" 50 51 defaults = { 52 forward_variables_from(_base_toolchain.defaults, "*") 53 54 # This is the docs target. 55 pw_docgen_BUILD_DOCS = true 56 57 # Disable NC tests in case the base toolchain has them enabled. 58 pw_compilation_testing_NEGATIVE_COMPILATION_ENABLED = false 59 60 pw_assert_BACKEND = dir_pw_assert_log 61 pw_log_BACKEND = dir_pw_log_tokenized 62 pw_log_tokenized_HANDLER_BACKEND = 63 get_path_info(":tokenized_log_handler", "abspath") 64 65 pw_toolchain_CXX_STANDARD = pw_toolchain_STANDARD.CXX20 66 } 67} 68 69pw_doc_group("target_docs") { 70 sources = [ "target_docs.rst" ] 71} 72