# Copyright 2021 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. package(default_visibility = ["//visibility:public"]) licenses(["notice"]) # Allows downstream projects to provide an alternative implementation of fit. # # Intended for projects that depend on both Pigweed and Fuchsia, and want to # use the Fuchsia implementation directly to avoid ODR violations. label_flag( name = "fit", build_setting_default = ":fit_impl", ) cc_library( name = "fit_impl", srcs = [ "repo/sdk/lib/fit/include/lib/fit/internal/compiler.h", "repo/sdk/lib/fit/include/lib/fit/internal/function.h", "repo/sdk/lib/fit/include/lib/fit/internal/result.h", "repo/sdk/lib/fit/include/lib/fit/internal/utility.h", ], hdrs = [ "repo/sdk/lib/fit/include/lib/fit/defer.h", "repo/sdk/lib/fit/include/lib/fit/function.h", "repo/sdk/lib/fit/include/lib/fit/nullable.h", "repo/sdk/lib/fit/include/lib/fit/result.h", "repo/sdk/lib/fit/include/lib/fit/traits.h", ], includes = ["repo/sdk/lib/fit/include"], deps = [ ":stdcompat", "//pw_assert", ], ) cc_library( name = "stdcompat", srcs = [ "repo/sdk/lib/stdcompat/include/lib/stdcompat/bit.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/internal/constructors.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/internal/exception.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/internal/functional.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/internal/storage.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/internal/type_traits.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/internal/utility.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/memory.h", ], hdrs = [ "repo/sdk/lib/stdcompat/include/lib/stdcompat/functional.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/internal/bit.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/optional.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/type_traits.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/utility.h", "repo/sdk/lib/stdcompat/include/lib/stdcompat/version.h", ], includes = ["repo/sdk/lib/stdcompat/include"], )