blob: 495347c26b959742ba7051f5fcb42890b509f303 [file] [log] [blame]
load("//bazel:defs.bzl", "compatible_with_rp2")
package(default_visibility = ["//visibility:public"])
alias(
name = "pico_mem_ops",
actual = select({
"//bazel/constraint:rp2040": ":pico_mem_ops_pico",
"//conditions:default": ":pico_mem_ops_compiler",
}),
)
cc_library(
name = "pico_mem_ops_compiler",
hdrs = ["include/pico/mem_ops.h"],
includes = ["include"],
target_compatible_with = compatible_with_rp2(),
visibility = ["//visibility:private"],
deps = [
"//src/rp2_common:pico_platform_internal",
],
)
cc_library(
name = "pico_mem_ops_pico",
srcs = [
"mem_ops.c",
"mem_ops_aeabi.S",
],
hdrs = ["include/pico/mem_ops.h"],
includes = ["include"],
linkopts = [
"-Wl,--wrap=memcpy",
"-Wl,--wrap=memset",
"-Wl,--wrap=__aeabi_memcpy",
"-Wl,--wrap=__aeabi_memset",
"-Wl,--wrap=__aeabi_memcpy4",
"-Wl,--wrap=__aeabi_memset4",
"-Wl,--wrap=__aeabi_memcpy8",
"-Wl,--wrap=__aeabi_memset8",
],
target_compatible_with = compatible_with_rp2(),
visibility = ["//visibility:private"],
deps = [
"//src/rp2_common:pico_platform_internal",
"//src/rp2_common/pico_bootrom",
],
alwayslink = True, # Ensures the wrapped symbols are linked in.
)