@@ -4,8 +4,8 @@ load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
44load("@bazel_skylib//rules:write_file.bzl", "write_file")
55load("@llvm//3rd_party/llvm-project/21.x/libcxx:libcxx_headers.bzl", "LIBCXX_HEADERS_FILES_21")
66load("@llvm//3rd_party/llvm-project/22.x/libcxx:libcxx_headers.bzl", "LIBCXX_HEADERS_FILES_22")
7- load("@llvm//toolchain/runtimes:cc_runtime_shared_library.bzl", "cc_runtime_stage1_shared_library ")
8- load("@llvm//toolchain/runtimes:cc_runtime_static_library.bzl", "cc_runtime_stage0_static_library ")
7+ load("@llvm//toolchain/runtimes:cc_runtime_shared_library.bzl", "cc_runtime_stage1_sanitized_shared_library ")
8+ load("@llvm//toolchain/runtimes:cc_runtime_static_library.bzl", "cc_runtime_stage0_sanitized_static_library ")
99load("@llvm-project//:vars.bzl", "LLVM_VERSION_MAJOR")
1010load("@rules_cc//cc:cc_library.bzl", "cc_library")
1111
@@ -40,6 +40,14 @@ _CONFIG_SITE_NO_MUSL_LINES = [
4040 "#define _LIBCPP_HAS_MUSL_LIBC 0",
4141]
4242
43+ _CONFIG_SITE_ASAN_LINES = [
44+ "#define _LIBCPP_INSTRUMENTED_WITH_ASAN 1",
45+ ]
46+
47+ _CONFIG_SITE_NO_ASAN_LINES = [
48+ "#define _LIBCPP_INSTRUMENTED_WITH_ASAN 0",
49+ ]
50+
4351_CONFIG_SITE_THREAD_API_WIN32_LINES = [
4452 "#define _LIBCPP_HAS_THREAD_API_PTHREAD 0",
4553 "#define _LIBCPP_HAS_THREAD_API_WIN32 1",
@@ -74,7 +82,6 @@ _CONFIG_SITE_GENERIC_LINES = [
7482 "#define _LIBCPP_HAS_STD_MODULES 0",
7583 "#define _LIBCPP_HAS_TIME_ZONE_DATABASE 1",
7684 "#define _LIBCPP_HAS_VENDOR_AVAILABILITY_ANNOTATIONS 0",
77- "#define _LIBCPP_INSTRUMENTED_WITH_ASAN 0",
7885 "",
7986 "#define _LIBCPP_PSTL_BACKEND_SERIAL",
8087 "// #define _LIBCPP_PSTL_BACKEND_STD_THREAD",
@@ -110,6 +117,10 @@ write_file(
110117 select({
111118 "@platforms//os:windows": _CONFIG_SITE_THREAD_API_WIN32_LINES,
112119 "//conditions:default": _CONFIG_SITE_THREAD_API_PTHREAD_LINES,
120+ }) +
121+ select({
122+ "@llvm//config:asan_enabled": _CONFIG_SITE_ASAN_LINES,
123+ "//conditions:default": _CONFIG_SITE_NO_ASAN_LINES,
113124 }),
114125 visibility = ["//visibility:public"],
115126)
@@ -349,15 +360,15 @@ cc_library(
349360 ],
350361)
351362
352- cc_runtime_stage0_static_library (
363+ cc_runtime_stage0_sanitized_static_library (
353364 name = "libcxx.static",
354365 visibility = ["//visibility:public"],
355366 deps = [
356367 ":libcxx",
357368 ],
358369)
359370
360- cc_runtime_stage1_shared_library (
371+ cc_runtime_stage1_sanitized_shared_library (
361372 name = "libcxx.shared",
362373 shared_lib_name = "libc++.so.1",
363374 user_link_flags = [
0 commit comments