1load("//bazel:defs.bzl", "compatible_with_config", "compatible_with_rp2", "incompatible_with_config") 2load("//bazel/util:sdk_define.bzl", "pico_sdk_define") 3 4package(default_visibility = ["//visibility:public"]) 5 6alias( 7 name = "pico_stdio_rtt", 8 actual = select({ 9 "//bazel/constraint:pico_stdio_rtt_enabled": ":pico_stdio_rtt_enabled", 10 "//conditions:default": ":pico_stdio_rtt_disabled", 11 }), 12) 13 14pico_sdk_define( 15 name = "LIB_PICO_STDIO_RTT", 16 define_name = "LIB_PICO_STDIO_RTT", 17 from_flag = "//bazel/config:PICO_STDIO_RTT", 18) 19 20cc_library( 21 name = "pico_stdio_rtt_enabled", 22 srcs = [ 23 "SEGGER/RTT/SEGGER_RTT.c", 24 "stdio_rtt.c", 25 ], 26 hdrs = [ 27 "SEGGER/Config/SEGGER_RTT_Conf.h", 28 "SEGGER/RTT/SEGGER_RTT.h", 29 "include/pico/stdio_rtt.h", 30 ], 31 includes = [ 32 "SEGGER/RTT", 33 "include", 34 ], 35 target_compatible_with = compatible_with_rp2() + compatible_with_config( 36 "//bazel/constraint:pico_stdio_rtt_enabled", 37 ), 38 deps = [ 39 ":LIB_PICO_STDIO_RTT", 40 "//src/common/pico_binary_info", 41 "//src/rp2_common/pico_stdio:pico_stdio_headers", 42 ], 43) 44 45# Stub library that does NOT link in stdio rtt support libs. 46cc_library( 47 name = "pico_stdio_rtt_disabled", 48 hdrs = [ 49 "SEGGER/Config/SEGGER_RTT_Conf.h", 50 "SEGGER/RTT/SEGGER_RTT.h", 51 "include/pico/stdio_rtt.h", 52 ], 53 includes = [ 54 "SEGGER/RTT", 55 "include", 56 ], 57 target_compatible_with = compatible_with_rp2() + incompatible_with_config( 58 "//bazel/constraint:pico_stdio_rtt_enabled", 59 ), 60 deps = [ 61 ":LIB_PICO_STDIO_RTT", 62 "//src/rp2_common/pico_stdio:pico_stdio_headers", 63 ], 64) 65