diff options
author | nkozlovskiy <nmk@ydb.tech> | 2023-10-11 19:11:46 +0300 |
---|---|---|
committer | nkozlovskiy <nmk@ydb.tech> | 2023-10-11 19:33:28 +0300 |
commit | 61b3971447e473726d6cdb23fc298e457b4d973c (patch) | |
tree | e2a2a864bb7717f7ae6138f6a3194a254dd2c7bb /contrib/libs/cxxsupp | |
parent | a674dc57d88d43c2e8e90a6084d5d2c988e0402c (diff) | |
download | ydb-61b3971447e473726d6cdb23fc298e457b4d973c.tar.gz |
add sanitizers dependencies
Diffstat (limited to 'contrib/libs/cxxsupp')
-rw-r--r-- | contrib/libs/cxxsupp/libsan/generate_symbolizer.py | 12 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libsan/inject.c | 8 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libsan/ya.make | 26 |
3 files changed, 46 insertions, 0 deletions
diff --git a/contrib/libs/cxxsupp/libsan/generate_symbolizer.py b/contrib/libs/cxxsupp/libsan/generate_symbolizer.py new file mode 100644 index 00000000000..d28c64bd926 --- /dev/null +++ b/contrib/libs/cxxsupp/libsan/generate_symbolizer.py @@ -0,0 +1,12 @@ +import os +import sys + + +def main(): + print 'const char* ya_get_symbolizer_gen() {' + print ' return "{}";'.format(os.path.join(os.path.dirname(sys.argv[1]), 'llvm-symbolizer')) + print '}' + + +if __name__ == '__main__': + main() diff --git a/contrib/libs/cxxsupp/libsan/inject.c b/contrib/libs/cxxsupp/libsan/inject.c new file mode 100644 index 00000000000..7790db5f36a --- /dev/null +++ b/contrib/libs/cxxsupp/libsan/inject.c @@ -0,0 +1,8 @@ +#include <unistd.h> + +extern const char* ya_get_symbolizer_gen(); + +const char* ya_get_symbolizer() { + const char* path = ya_get_symbolizer_gen(); + return access(path, X_OK) ? NULL : path; +} diff --git a/contrib/libs/cxxsupp/libsan/ya.make b/contrib/libs/cxxsupp/libsan/ya.make new file mode 100644 index 00000000000..2fb16630be8 --- /dev/null +++ b/contrib/libs/cxxsupp/libsan/ya.make @@ -0,0 +1,26 @@ +LIBRARY() + +WITHOUT_LICENSE_TEXTS() + +LICENSE(YandexOpen) + +NO_PLATFORM() + +NO_SANITIZE() + +NO_SANITIZE_COVERAGE() + +OWNER(somov) + +PYTHON( + generate_symbolizer.py ${CXX_COMPILER} + STDOUT symbolizer.c +) + +CFLAGS(-fPIC) + +SRCS( + GLOBAL inject.c +) + +END() |