Running `make check-all` fails on Solaris 11/SPARC since the clang python
tests FAIL:
............................
======================================================================
FAIL: test_extent (tests.cindex.test_location.TestLocation)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/cindex/test_location.py", line 87, in test_extent
self.assert_location(one.extent.start,line=1,column=1,offset=0)
File "tests/cindex/test_location.py", line 22, in assert_location
self.assertEqual(loc.column, column)
AssertionError: 5 != 1
======================================================================
FAIL: test_get_children (tests.cindex.test_cursor.TestCursor)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/cindex/test_cursor.py", line 70, in test_get_children
self.assertEqual(tu_nodes[0].is_definition(), True)
AssertionError: False != True
----------------------------------------------------------------------
Ran 126 tests in 2.123s
FAILED (failures=2, skipped=6)
Unfortunately, this aborts the rest of `make check-all`, even with `-k`, so
this patch disables the test as is already done on a couple of other
targets.
This allowed the `sparc-sun-solaris2.11` test to finish.
Differential Revision: https://reviews.llvm.org/D60046
llvm-svn: 357917
47 lines
1.5 KiB
CMake
47 lines
1.5 KiB
CMake
# Test target to run Python test suite from main build.
|
|
|
|
add_custom_target(check-clang-python
|
|
COMMAND ${CMAKE_COMMAND} -E env
|
|
CLANG_LIBRARY_PATH=$<TARGET_FILE_DIR:libclang>
|
|
${PYTHON_EXECUTABLE} -m unittest discover
|
|
DEPENDS libclang
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..)
|
|
|
|
set(RUN_PYTHON_TESTS TRUE)
|
|
set_target_properties(check-clang-python PROPERTIES FOLDER "Clang tests")
|
|
|
|
# Tests require libclang.so which is only built with LLVM_ENABLE_PIC=ON
|
|
if(NOT LLVM_ENABLE_PIC)
|
|
set(RUN_PYTHON_TESTS FALSE)
|
|
endif()
|
|
|
|
# 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.
|
|
list(FIND LLVM_USE_SANITIZER "Address" LLVM_USE_ASAN_INDEX)
|
|
if(NOT LLVM_USE_ASAN_INDEX EQUAL -1)
|
|
set(RUN_PYTHON_TESTS FALSE)
|
|
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(WIN32)
|
|
set(RUN_PYTHON_TESTS FALSE)
|
|
endif()
|
|
|
|
# AArch64, Hexagon, and Sparc have known test failures that need to be
|
|
# addressed.
|
|
# SystemZ has broken Python/FFI interface:
|
|
# https://reviews.llvm.org/D52840#1265716
|
|
if(${LLVM_NATIVE_ARCH} MATCHES "^(AArch64|Hexagon|Sparc|SystemZ)$")
|
|
set(RUN_PYTHON_TESTS FALSE)
|
|
endif()
|
|
|
|
if(RUN_PYTHON_TESTS)
|
|
set_property(GLOBAL APPEND PROPERTY
|
|
LLVM_ADDITIONAL_TEST_TARGETS check-clang-python)
|
|
endif()
|