blob: 7e9a8d6d84fd3a1635d382505b99f9bf83dffe82 [file] [log] [blame] [edit]
# Copyright 2022 The Pigweed Authors
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
# use this file except in compliance with the License. You may obtain a copy of
# the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.
# Generate a .gni file with a GN arg for each module and lists of modules and
# tests. Then, import the generated .gni file.
#
# To avoid generating it multiple times, the modules list is only generated by
# the default toolchain. The default toolchain runs before any other toolchains,
# so the module list will be created before it is used by other toolchains.
import("pw_build/generated_pigweed_modules_lists.gni")
declare_args() {
# This is retained for backwards compatibility. Prefer using the pw_external_*
# variables instead.
dir_pw_third_party = get_path_info("third_party", "abspath")
}
# When referencing an external dependency, prefer to use these names to prevent
# multiple definitions of the same build rules. These default to Pigweed's GN
# integrations in Pigweed's third_party directory.
#
# Warning: If your project overrides these, keep in mind that you'll need to
# chase any changes in exposed build targets, their semantics, and any other
# changes Pigweed might make.
declare_args() {
pw_external_abseil_cpp =
get_path_info("$dir_pw_third_party/abseil-cpp", "abspath")
pw_external_ambiq = get_path_info("$dir_pw_third_party/ambiq", "abspath")
pw_external_apollo4 = get_path_info("$dir_pw_third_party/apollo4", "abspath")
pw_external_arduino = get_path_info("$dir_pw_third_party/arduino", "abspath")
pw_external_boringssl =
get_path_info("$dir_pw_third_party/boringssl", "abspath")
pw_external_chre = get_path_info("$dir_pw_third_party/chre", "abspath")
pw_external_chromium_verifier =
get_path_info("$dir_pw_third_party/chromium_verifier", "abspath")
pw_external_embos = get_path_info("$dir_pw_third_party/embos", "abspath")
pw_external_emboss = get_path_info("$dir_pw_third_party/emboss", "abspath")
pw_external_freertos =
get_path_info("$dir_pw_third_party/freertos", "abspath")
pw_external_fuchsia = get_path_info("$dir_pw_third_party/fuchsia", "abspath")
pw_external_fuzztest =
get_path_info("$dir_pw_third_party/fuzztest", "abspath")
pw_external_googletest =
get_path_info("$dir_pw_third_party/googletest", "abspath")
pw_external_llvm_builtins =
get_path_info("$dir_pw_third_party/llvm_builtins", "abspath")
pw_external_llvm_libc =
get_path_info("$dir_pw_third_party/llvm_libc", "abspath")
pw_external_llvm_libcxx =
get_path_info("$dir_pw_third_party/llvm_libcxx", "abspath")
pw_external_mbedtls = get_path_info("$dir_pw_third_party/mbedtls", "abspath")
pw_external_mcuxpresso =
get_path_info("$dir_pw_third_party/mcuxpresso", "abspath")
pw_external_nanopb = get_path_info("$dir_pw_third_party/nanopb", "abspath")
pw_external_perfetto =
get_path_info("$dir_pw_third_party/perfetto", "abspath")
pw_external_pico_sdk =
get_path_info("$dir_pw_third_party/pico_sdk", "abspath")
pw_external_protobuf =
get_path_info("$dir_pw_third_party/protobuf", "abspath")
pw_external_repo = get_path_info("$dir_pw_third_party/repo", "abspath")
pw_external_smartfusion_mss =
get_path_info("$dir_pw_third_party/smartfusion_mss", "abspath")
pw_external_stm32cube =
get_path_info("$dir_pw_third_party/stm32cube", "abspath")
pw_external_threadx = get_path_info("$dir_pw_third_party/threadx", "abspath")
pw_external_tinyusb = get_path_info("$dir_pw_third_party/tinyusb", "abspath")
}