third_party.pigweed.src/pw_build/pw_executable.gni
Alexei Frolov 1a82c146ff
Initial Pigweed modules
This change adds Pigweed's first few (incomplete) modules: pw_build,
pw_status, and pw_toolchain. The main scaffolding for Pigweed's GN-based
build system is also included, with a root BUILDCONFIG and BUILD.gn file
defining a top-level modules build target.

Change-Id: I09599443d50696343d6c5b85853cb5cee3ce0026
2019-10-31 17:43:53 -07:00

31 lines
1.1 KiB
Plaintext

# Copyright 2019 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.
# Wrapper for Pigweed executable build targets which uses a globally-defined,
# configurable target type.
template("pw_executable") {
assert(defined(pw_executable_target_type),
"build argument pw_executable_target_type must be defined")
assert(defined(pw_executable_target_path),
"build argument pw_executable_target_path must be defined")
if (pw_executable_target_path != "") {
import(invoker.pw_executable_target_path)
}
target(invoker.pw_executable_target_type, target_name) {
forward_variables_from(invoker, "*")
}
}