1package(default_visibility = ["//visibility:public"]) 2 3# This constraint represents the dimension that guides the Pico SDK build. This 4# constraint will only ever enumerate specific MCUs (and the host), and does NOT 5# cover the differences from board-to-board. 6constraint_setting( 7 name = "sdk_target", 8 default_constraint_value = "host", 9) 10 11# This constraint value is used to guide the host build. 12constraint_value( 13 name = "host", 14 constraint_setting = ":sdk_target", 15) 16 17# This constraint value is used to guide parts of the build that are specific 18# to the rp2040. 19constraint_value( 20 name = "rp2040", 21 constraint_setting = ":sdk_target", 22) 23 24# This constraint value is used to guide parts of the build that are specific 25# to the rp2350. 26constraint_value( 27 name = "rp2350", 28 constraint_setting = ":sdk_target", 29) 30 31constraint_setting( 32 name = "wireless_support", 33 default_constraint_value = "no_wireless", 34) 35 36constraint_value( 37 name = "no_wireless", 38 constraint_setting = ":wireless_support", 39) 40 41constraint_value( 42 name = "cyw43_wireless", 43 constraint_setting = ":wireless_support", 44) 45 46config_setting( 47 name = "is_pico_w", 48 flag_values = {"//bazel/config:PICO_BOARD": "pico_w"}, 49) 50 51config_setting( 52 name = "pico_toolchain_clang_enabled", 53 flag_values = {"//bazel/config:PICO_TOOLCHAIN": "clang"}, 54) 55 56config_setting( 57 name = "pico_toolchain_gcc_enabled", 58 flag_values = {"//bazel/config:PICO_TOOLCHAIN": "gcc"}, 59) 60 61config_setting( 62 name = "pico_baremetal_enabled", 63 flag_values = {"//bazel/config:PICO_BARE_METAL": "True"}, 64) 65 66config_setting( 67 name = "pico_no_gc_sections_enabled", 68 flag_values = {"//bazel/config:PICO_NO_GC_SECTIONS": "True"}, 69) 70 71config_setting( 72 name = "pico_cxx_enable_exceptions_enabled", 73 flag_values = {"//bazel/config:PICO_CXX_ENABLE_EXCEPTIONS": "True"}, 74) 75 76config_setting( 77 name = "pico_cxx_enable_rtti_enabled", 78 flag_values = {"//bazel/config:PICO_CXX_ENABLE_RTTI": "True"}, 79) 80 81config_setting( 82 name = "pico_cxx_enable_cxa_atexit_enabled", 83 flag_values = {"//bazel/config:PICO_CXX_ENABLE_RTTI": "True"}, 84) 85 86config_setting( 87 name = "pico_stdio_uart_enabled", 88 flag_values = {"//bazel/config:PICO_STDIO_UART": "True"}, 89) 90 91config_setting( 92 name = "pico_stdio_usb_enabled", 93 flag_values = {"//bazel/config:PICO_STDIO_USB": "True"}, 94) 95 96config_setting( 97 name = "pico_stdio_semihosting_enabled", 98 flag_values = {"//bazel/config:PICO_STDIO_SEMIHOSTING": "True"}, 99) 100 101config_setting( 102 name = "pico_stdio_rtt_enabled", 103 flag_values = {"//bazel/config:PICO_STDIO_RTT": "True"}, 104) 105 106config_setting( 107 name = "pico_multicore_enabled", 108 flag_values = {"//bazel/config:PICO_MULTICORE_ENABLED": "True"}, 109) 110 111config_setting( 112 name = "pico_float_auto_enabled", 113 flag_values = {"//bazel/config:PICO_DEFAULT_FLOAT_IMPL": "auto"}, 114) 115 116config_setting( 117 name = "pico_float_compiler_enabled", 118 flag_values = {"//bazel/config:PICO_DEFAULT_FLOAT_IMPL": "compiler"}, 119) 120 121config_setting( 122 name = "pico_float_dcp_enabled", 123 flag_values = {"//bazel/config:PICO_DEFAULT_FLOAT_IMPL": "dcp"}, 124) 125 126config_setting( 127 name = "pico_float_rp2040_enabled", 128 flag_values = {"//bazel/config:PICO_DEFAULT_FLOAT_IMPL": "rp2040"}, 129) 130 131config_setting( 132 name = "pico_float_vfp_enabled", 133 flag_values = {"//bazel/config:PICO_DEFAULT_FLOAT_IMPL": "vfp"}, 134) 135 136config_setting( 137 name = "pico_double_auto_enabled", 138 flag_values = {"//bazel/config:PICO_DEFAULT_DOUBLE_IMPL": "auto"}, 139) 140 141config_setting( 142 name = "pico_double_compiler_enabled", 143 flag_values = {"//bazel/config:PICO_DEFAULT_DOUBLE_IMPL": "compiler"}, 144) 145 146config_setting( 147 name = "pico_double_dcp_enabled", 148 flag_values = {"//bazel/config:PICO_DEFAULT_DOUBLE_IMPL": "dcp"}, 149) 150 151config_setting( 152 name = "pico_double_rp2040_enabled", 153 flag_values = {"//bazel/config:PICO_DEFAULT_DOUBLE_IMPL": "rp2040"}, 154) 155 156config_setting( 157 name = "pico_divider_hardware_enabled", 158 flag_values = {"//bazel/config:PICO_DEFAULT_DIVIDER_IMPL": "hardware"}, 159) 160 161config_setting( 162 name = "pico_divider_auto_enabled", 163 flag_values = {"//bazel/config:PICO_DEFAULT_DIVIDER_IMPL": "auto"}, 164) 165 166config_setting( 167 name = "pico_printf_pico_enabled", 168 flag_values = {"//bazel/config:PICO_DEFAULT_PRINTF_IMPL": "pico"}, 169) 170 171config_setting( 172 name = "pico_printf_compiler_enabled", 173 flag_values = {"//bazel/config:PICO_DEFAULT_PRINTF_IMPL": "compiler"}, 174) 175 176config_setting( 177 name = "pico_use_default_max_page_size_enabled", 178 flag_values = {"//bazel/config:PICO_USE_DEFAULT_MAX_PAGE_SIZE": "True"}, 179) 180 181config_setting( 182 name = "pico_no_target_name_enabled", 183 flag_values = {"//bazel/config:PICO_NO_TARGET_NAME": "True"}, 184) 185 186config_setting( 187 name = "pico_clib_llvm_libc_enabled", 188 flag_values = {"//bazel/config:PICO_CLIB": "llvm_libc"}, 189) 190 191config_setting( 192 name = "pico_clib_newlib_enabled", 193 flag_values = {"//bazel/config:PICO_CLIB": "newlib"}, 194) 195 196config_setting( 197 name = "pico_clib_picolibc_enabled", 198 flag_values = {"//bazel/config:PICO_CLIB": "picolibc"}, 199) 200 201config_setting( 202 name = "pico_btstack_config_unset", 203 flag_values = {"//bazel/config:PICO_BTSTACK_CONFIG": "//bazel:empty_cc_lib"}, 204) 205 206config_setting( 207 name = "pico_lwip_config_unset", 208 flag_values = {"//bazel/config:PICO_LWIP_CONFIG": "//bazel:empty_cc_lib"}, 209) 210 211config_setting( 212 name = "pico_freertos_unset", 213 flag_values = {"//bazel/config:PICO_FREERTOS_LIB": "//bazel:empty_cc_lib"}, 214) 215