1*61c4878aSAndroid Build Coastguard Worker# Copyright 2023 The Pigweed Authors 2*61c4878aSAndroid Build Coastguard Worker# 3*61c4878aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); you may not 4*61c4878aSAndroid Build Coastguard Worker# use this file except in compliance with the License. You may obtain a copy of 5*61c4878aSAndroid Build Coastguard Worker# the License at 6*61c4878aSAndroid Build Coastguard Worker# 7*61c4878aSAndroid Build Coastguard Worker# https://www.apache.org/licenses/LICENSE-2.0 8*61c4878aSAndroid Build Coastguard Worker# 9*61c4878aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 10*61c4878aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11*61c4878aSAndroid Build Coastguard Worker# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12*61c4878aSAndroid Build Coastguard Worker# License for the specific language governing permissions and limitations under 13*61c4878aSAndroid Build Coastguard Worker# the License. 14*61c4878aSAndroid Build Coastguard Worker 15*61c4878aSAndroid Build Coastguard Worker# DO NOT IMPORT THIS .gni FILE DIRECTLY! Use "$dir_pw_build/defaults.gni"! 16*61c4878aSAndroid Build Coastguard Worker# 17*61c4878aSAndroid Build Coastguard Worker# When these variables were originally created, Pigweed did not have a widely 18*61c4878aSAndroid Build Coastguard Worker# adopted naming pattern for build arguments declared by GN. For backwards 19*61c4878aSAndroid Build Coastguard Worker# compatibility, these arguments will retain their naming. 20*61c4878aSAndroid Build Coastguard Worker# 21*61c4878aSAndroid Build Coastguard Worker# Unfortunately, there's two problems with this: 22*61c4878aSAndroid Build Coastguard Worker# 23*61c4878aSAndroid Build Coastguard Worker# 1. It's not clear these variables come from Pigweed since they don't follow 24*61c4878aSAndroid Build Coastguard Worker# the established naming patterns. 25*61c4878aSAndroid Build Coastguard Worker# 2. The names conflict with the attributes of pw_* wrapped targets, which 26*61c4878aSAndroid Build Coastguard Worker# means you'll get confusing behavior if this declare_args() block gets 27*61c4878aSAndroid Build Coastguard Worker# imported into the context of a regular build file. That is why this 28*61c4878aSAndroid Build Coastguard Worker# .gni file is imported into a scope rather than handled like a regular 29*61c4878aSAndroid Build Coastguard Worker# import. It truly is an amusing workaround, but it works. 30*61c4878aSAndroid Build Coastguard Worker# 31*61c4878aSAndroid Build Coastguard Worker# While it's possible to migrate away from these names, it's unlikely that will 32*61c4878aSAndroid Build Coastguard Worker# ever happen. 33*61c4878aSAndroid Build Coastguard Workerdeclare_args() { 34*61c4878aSAndroid Build Coastguard Worker default_configs = [] 35*61c4878aSAndroid Build Coastguard Worker default_public_deps = [] 36*61c4878aSAndroid Build Coastguard Worker remove_default_configs = [] 37*61c4878aSAndroid Build Coastguard Worker remove_default_public_deps = [] 38*61c4878aSAndroid Build Coastguard Worker} 39