blob: 4e8a704ab1a97e35fd9e755f5695d83b10c8bc67 [file] [log] [blame]
load("//bazel:defs.bzl", "compatible_with_config", "compatible_with_rp2", "incompatible_with_config")
package(default_visibility = ["//visibility:public"])
alias(
name = "pico_multicore",
actual = select({
"//bazel/constraint:pico_multicore_enabled": ":pico_multicore_enabled",
"//conditions:default": ":pico_multicore_disabled",
}),
)
cc_library(
name = "pico_multicore_enabled",
srcs = ["multicore.c"],
hdrs = ["include/pico/multicore.h"],
defines = ["LIB_PICO_MULTICORE=1"],
includes = ["include"],
target_compatible_with = compatible_with_rp2() + compatible_with_config("//bazel/constraint:pico_multicore_enabled"),
deps = [
"//src/common/hardware_claim",
"//src/common/pico_sync",
"//src/rp2_common:hardware_regs",
"//src/rp2_common:hardware_structs",
"//src/rp2_common:pico_platform",
"//src/rp2_common/hardware_irq",
"//src/rp2_common/hardware_sync",
"//src/rp2_common/pico_runtime",
],
)
# Stub library that does NOT link in multicore support libs.
cc_library(
name = "pico_multicore_disabled",
hdrs = ["include/pico/multicore.h"],
defines = ["LIB_PICO_MULTICORE=0"],
includes = ["include"],
target_compatible_with = compatible_with_rp2() + incompatible_with_config("//bazel/constraint:pico_multicore_enabled"),
deps = [
"//src/common/pico_sync",
"//src/rp2_common:hardware_structs",
"//src/rp2_common:pico_platform",
],
)