[PATCH] D53239: [python] [tests] Disable python binding tests when building with LLVM_USE_SANITIZER=Address

Artem Dergachev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Oct 12 19:19:01 PDT 2018


NoQ created this revision.
NoQ added reviewers: mgorny, delcypher.
Herald added a subscriber: cfe-commits.

@mgorny: These fail for me on macOS too, if LLVM is configured as

  cmake ../llvm/ -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_SANITIZER=Address

I guess we might have to outright disable them under `-DLLVM_USE_SANITIZER=Address`.

Patch actually by Dan "@delcypher" Liew, I'm just passing by.


Repository:
  rC Clang

https://reviews.llvm.org/D53239

Files:
  bindings/python/tests/CMakeLists.txt


Index: bindings/python/tests/CMakeLists.txt
===================================================================
--- bindings/python/tests/CMakeLists.txt
+++ bindings/python/tests/CMakeLists.txt
@@ -7,9 +7,24 @@
     DEPENDS libclang
     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..)
 
+# Check if we are building with ASan
+list(FIND LLVM_USE_SANITIZER "Address" LLVM_USE_ASAN_INDEX)
+if (LLVM_USE_ASAN_INDEX EQUAL -1)
+  set(LLVM_USE_ASAN FALSE)
+else()
+  set(LLVM_USE_ASAN TRUE)
+endif()
+
 # Tests fail on Windows, and need someone knowledgeable to fix.
 # It's not clear whether it's a test or a valid binding problem.
-if(NOT WIN32)
+#
+# Do not try to run if libclang was built with ASan because
+# the sanitizer library will likely be loaded too late to perform
+# interception and will then fail.
+# We could use LD_PRELOAD/DYLD_INSERT_LIBRARIES but this isn't
+# portable so its easier just to not run the tests when building
+# with ASan.
+if((NOT WIN32) AND (NOT LLVM_USE_ASAN))
     set_property(GLOBAL APPEND PROPERTY
                  LLVM_ADDITIONAL_TEST_TARGETS check-clang-python)
 endif()


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D53239.169535.patch
Type: text/x-patch
Size: 1113 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20181013/6f05b9e1/attachment.bin>


More information about the cfe-commits mailing list