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_semihosting", 8 actual = select({ 9 "//bazel/constraint:pico_stdio_semihosting_enabled": ":pico_stdio_semihosting_enabled", 10 "//conditions:default": ":pico_stdio_semihosting_disabled", 11 }), 12) 13 14pico_sdk_define( 15 name = "LIB_PICO_STDIO_SEMIHOSTING", 16 define_name = "LIB_PICO_STDIO_SEMIHOSTING", 17 from_flag = "//bazel/config:PICO_STDIO_SEMIHOSTING", 18) 19 20cc_library( 21 name = "pico_stdio_semihosting_enabled", 22 srcs = ["stdio_semihosting.c"], 23 hdrs = ["include/pico/stdio_semihosting.h"], 24 includes = ["include"], 25 target_compatible_with = compatible_with_rp2() + compatible_with_config( 26 "//bazel/constraint:pico_stdio_semihosting_enabled", 27 ), 28 deps = [ 29 ":LIB_PICO_STDIO_SEMIHOSTING", 30 "//src/common/pico_binary_info", 31 "//src/rp2_common/pico_stdio:pico_stdio_headers", 32 ], 33) 34 35# Stub library that does NOT link in stdio semihosting support libs. 36cc_library( 37 name = "pico_stdio_semihosting_disabled", 38 hdrs = ["include/pico/stdio_semihosting.h"], 39 includes = ["include"], 40 target_compatible_with = compatible_with_rp2() + incompatible_with_config( 41 "//bazel/constraint:pico_stdio_semihosting_enabled", 42 ), 43 deps = [ 44 ":LIB_PICO_STDIO_SEMIHOSTING", 45 "//src/rp2_common/pico_stdio:pico_stdio_headers", 46 ], 47) 48