Bazel을 사용하는 프로젝트에 ASAN sanitize를 추가하려고하는데 다음과 같은 문제가 있습니다. 나는 우리 bazel.rcBazel 규칙에 clang의 sanitize-blacklist에 대한 의존성이 없습니다.
build:asan --copt -fsanitize=address
build:asan --linkopt -fsanitize=address
build:asan --copt -fsanitize-blacklist=blacklist.txt
하지만 대상을 만들 때 누락받을 의존성 오류에 살균에 대한 블랙리스트를 추가 한
ERROR: memory/main/BUILD:1:1: undeclared inclusion(s) in rule '//main:memory_leak':
this rule is missing dependency declarations for the following files included by 'main/memory_leak.cpp':
'memory/blacklist.txt'
Target //main:memory_leak failed to build
그 blacklist.txt 빌드 규칙을 추가해야합니다 보인다 BUILD 파일에 있지만 우리가 이미 가지고있는 모든 gazillion 규칙에 대해 그렇게 할 수는 없습니다. 모든 규칙이나 이와 비슷한 전역 종속성을 추가하는 방법이 있습니까?
'// main : memory_leak' 규칙의 정의는 어떻게 생겼습니까? 왜 gazillion 규칙에 blacklist.txt를 추가해야한다고 생각하십니까? –
'// main : memory_leak'은 그 예입니다. 우리는 프로젝트에 수백 가지의 규칙을 가지고 있습니다. – user1767432