1# Copyright 2021 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_pw_build/target_types.gni") 18 19_deps = [ 20 "$dir_pw_bloat:bloat_this_binary", 21 "..:pw_function", 22] 23 24pw_executable("pointer_base") { 25 sources = [ "pointer_base.cc" ] 26 deps = _deps 27} 28 29pw_executable("basic_function") { 30 sources = [ "basic_function.cc" ] 31 deps = _deps 32} 33 34pw_executable("callable_size_base") { 35 sources = [ "callable_size.cc" ] 36 defines = [ "_BASE=1" ] 37 deps = _deps 38} 39 40pw_executable("callable_size_function_pointer") { 41 sources = [ "callable_size.cc" ] 42 defines = [ "_FUNCTION_POINTER=1" ] 43 deps = _deps 44} 45 46pw_executable("callable_size_static_lambda") { 47 sources = [ "callable_size.cc" ] 48 defines = [ "_STATIC_LAMBDA=1" ] 49 deps = _deps 50} 51 52pw_executable("callable_size_simple_lambda") { 53 sources = [ "callable_size.cc" ] 54 defines = [ "_SIMPLE_LAMBDA=1" ] 55 deps = _deps 56} 57 58pw_executable("callable_size_capturing_lambda") { 59 sources = [ "callable_size.cc" ] 60 defines = [ "_CAPTURING_LAMBDA=1" ] 61 deps = _deps 62} 63 64pw_executable("callable_size_multi_capturing_lambda") { 65 sources = [ "callable_size.cc" ] 66 defines = [ "_MULTI_CAPTURING_LAMBDA=1" ] 67 deps = _deps 68} 69 70pw_executable("callable_size_custom_class") { 71 sources = [ "callable_size.cc" ] 72 defines = [ "_CUSTOM_CLASS=1" ] 73 deps = _deps 74} 75