[libcxx] r237518 - libcxx: Fix ARM libc++/abi and libunwind buildbot.

Logan Chien tzuhsiang.chien at gmail.com
Sat May 16 05:44:32 PDT 2015


Author: logan
Date: Sat May 16 07:44:31 2015
New Revision: 237518

URL: http://llvm.org/viewvc/llvm-project?rev=237518&view=rev
Log:
libcxx: Fix ARM libc++/abi and libunwind buildbot.

The test cases were crashing due to the mixed usage of the unwinding
functions from both libunwind and libgcc_s.  The unwind functions are
mixed because the "llvm_unwinder" entry is not available in the
lit.site.cfg for libc++.  As a result, "-lgcc_s" is picked instead of
"-lunwind".  The extra option to lit --param=link_flags="-lunwind" won't
help either.

This CL fix the problem by adding llvm_unwinder to lit.site.cfg.in.

Modified:
    libcxx/trunk/CMakeLists.txt
    libcxx/trunk/test/lit.site.cfg.in

Modified: libcxx/trunk/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/CMakeLists.txt?rev=237518&r1=237517&r2=237518&view=diff
==============================================================================
--- libcxx/trunk/CMakeLists.txt (original)
+++ libcxx/trunk/CMakeLists.txt Sat May 16 07:44:31 2015
@@ -100,6 +100,10 @@ set(LIBCXX_CXX_ABI "${LIBCXX_CXX_ABI}" C
     "Specify C++ ABI library to use." FORCE)
 set_property(CACHE LIBCXX_CXX_ABI PROPERTY STRINGS ;${CXXABIS})
 
+# Build libc++abi with libunwind. We need this option to determine whether to
+# link with libunwind or libgcc_s while running the test cases.
+option(LIBCXXABI_USE_LLVM_UNWINDER "Build and use the LLVM unwinder." OFF)
+
 # TODO(ericwf): Remove these options by March/25/2015.
 # These CMake options have been removed in favor of a generic option
 # "LIBCXX_CXX_ABI_INCLUDE_PATHS". Issue an explicit error message explaining

Modified: libcxx/trunk/test/lit.site.cfg.in
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/lit.site.cfg.in?rev=237518&r1=237517&r2=237518&view=diff
==============================================================================
--- libcxx/trunk/test/lit.site.cfg.in (original)
+++ libcxx/trunk/test/lit.site.cfg.in Sat May 16 07:44:31 2015
@@ -23,6 +23,7 @@ config.gcc_toolchain            = "@LIBC
 config.generate_coverage        = "@LIBCXX_GENERATE_COVERAGE@"
 config.target_info              = "@LIBCXX_TARGET_INFO@"
 config.executor                 = "@LIBCXX_EXECUTOR@"
+config.llvm_unwinder            = "@LIBCXXABI_USE_LLVM_UNWINDER@"
 
 # Let the main config do the real work.
 lit_config.load_config(config, "@LIBCXX_SOURCE_DIR@/test/lit.cfg")





More information about the cfe-commits mailing list