1# Copyright 2025 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 15load("@rules_cc//cc:cc_library.bzl", "cc_library") 16load("@rules_python//sphinxdocs:sphinx_docs_library.bzl", "sphinx_docs_library") 17load("//pw_build:compatibility.bzl", "incompatible_with_mcu") 18 19package(default_visibility = ["//visibility:public"]) 20 21licenses(["notice"]) 22 23constraint_value( 24 name = "backend", 25 constraint_setting = "//pw_interrupt:backend_constraint_setting", 26) 27 28cc_library( 29 name = "context", 30 hdrs = [ 31 "public_overrides/pw_interrupt_backend/context_inline.h", 32 ], 33 strip_include_prefix = "public_overrides", 34 target_compatible_with = [":backend"], 35 deps = [ 36 ":context_implementation", 37 "//pw_interrupt:context.facade", 38 ], 39) 40 41cc_library( 42 name = "context_implementation", 43 hdrs = [ 44 "public/pw_interrupt_freertos/context_inline.h", 45 ], 46 strip_include_prefix = "public", 47 tags = ["noclangtidy"], 48 visibility = ["//visibility:private"], 49 deps = [ 50 "@freertos", 51 ], 52) 53 54sphinx_docs_library( 55 name = "docs", 56 srcs = [ 57 "docs.rst", 58 ], 59 prefix = "pw_interrupt_freertos/", 60 target_compatible_with = incompatible_with_mcu(), 61) 62