New issue
Advanced search Search tips

Issue 897627 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Oct 22
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocking:
issue 894363



Sign in to add a comment

clang tot android failing runhooks with "error adding symbols: File in wrong format"

Project Member Reported by h...@chromium.org, Oct 22

Issue description

From https://ci.chromium.org/buildbot/chromium.clang/ToTAndroid/5209

FAILED: lib/linux/libclang_rt.ubsan_standalone-aarch64-android.so 
: && /b/c/b/ToTAndroid/src/third_party/llvm-build/Release+Asserts/bin/clang++ -fPIC --target=aarch64-linux-android21 --sysroot=/b/c/b/ToTAndroid/src/third_party/llvm-build/Release+Asserts/android-toolchain-aarch64/sysroot -B/b/c/b/ToTAndroid/src/third_party/llvm-build/Release+Asserts/android-toolchain-aarch64 -Wall -std=c++11 -Wno-unused-parameter -O3 -DNDEBUG  -Wl,-u__cxa_demangle   -nodefaultlibs -shared -Wl,-soname,libclang_rt.ubsan_standalone-aarch64-android.so -o lib/linux/libclang_rt.ubsan_standalone-aarch64-android.so lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_allocator.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_common.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_deadlock_detector1.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_deadlock_detector2.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_errno.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_file.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_flags.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_flag_parser.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_fuchsia.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_libc.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_libignore.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_s390.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_mac.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_netbsd.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_openbsd.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_persistent_allocator.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_linux.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_netbsd.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_openbsd.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_posix.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_solaris.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_posix.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_printf.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_common.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_bsd.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_linux.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_mac.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_solaris.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_rtems.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_solaris.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_stoptheworld_mac.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_suppressions.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_tls_get_addr.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_thread_registry.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_win.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_x86_64.S.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_mips64.S.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_termination.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_common_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_allocator_checks.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_linux_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_mac_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_posix_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_stoptheworld_linux_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sancov_flags.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sanitizer_coverage_fuchsia.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sanitizer_coverage_libcdep_new.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sanitizer_coverage_win_sections.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_allocator_report.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stackdepot.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace_printer.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace_sparc.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_libbacktrace.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_mac.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_markup.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_posix_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_report.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_win.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_unwind_linux_libcdep.cc.o lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_unwind_win.cc.o lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_diag.cc.o lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_init.cc.o lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_flags.cc.o lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_handlers.cc.o lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_monitor.cc.o lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_value.cc.o lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_handlers_cxx.cc.o lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_type_hash.cc.o lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_type_hash_itanium.cc.o lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_type_hash_win.cc.o lib/ubsan/CMakeFiles/RTUbsan_standalone.aarch64.dir/ubsan_diag_standalone.cc.o lib/ubsan/CMakeFiles/RTUbsan_standalone.aarch64.dir/ubsan_init_standalone.cc.o lib/ubsan/CMakeFiles/RTUbsan_standalone.aarch64.dir/ubsan_signals_standalone.cc.o lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_linux.cc.o lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_mac.cc.o lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_win.cc.o lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_type_test.cc.o  -lc++abi -lgcc -lc -ldl -llog && :
/b/c/b/ToTAndroid/src/third_party/llvm-build/Release+Asserts/android-toolchain-aarch64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_x86_64.S.o: Relocations in generic ELF (EM: 62)
/b/c/b/ToTAndroid/src/third_party/llvm-build/Release+Asserts/android-toolchain-aarch64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_x86_64.S.o: Relocations in generic ELF (EM: 62)
/b/c/b/ToTAndroid/src/third_party/llvm-build/Release+Asserts/android-toolchain-aarch64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_x86_64.S.o: Relocations in generic ELF (EM: 62)
lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_x86_64.S.o: error adding symbols: File in wrong format
clang-8: error: linker command failed with exit code 1 (use -v to see invocation)
 
Started here: https://ci.chromium.org/buildbot/chromium.clang/ToTAndroid/5092

Revision range: 344750:344761

Suspects:

------------------------------------------------------------------------
r344751 | danalbert | 2018-10-18 11:04:28 -0700 (Thu, 18 Oct 2018) | 19 lines

[compiler-rt] Don't explicitly set CMAKE_CXX_FLAGS.

Summary:
C++ flags should not be used for not-C++ files as it may trigger
-Werror=unused-command-line-argument. CMake will use CMAKE_C_FLAGS,
CMAKE_CXX_FLAGS, and CMAKE_ASM_FLAGS as appropriate implicitly, so
this does not need to be explicitly handled here.

This change depends on https://reviews.llvm.org/D53301, since one of
the builders depended on this behavior because it was not configuring
CMAKE_ASM_FLAGS.

Reviewers: eugenis, vitalybuka

Reviewed By: eugenis, vitalybuka

Subscribers: dberris, mgorny, delcypher, #sanitizers, llvm-commits

Differential Revision: https://reviews.llvm.org/D53335
------------------------------------------------------------------------

------------------------------------------------------------------------
r344753 | danalbert | 2018-10-18 12:34:47 -0700 (Thu, 18 Oct 2018) | 16 lines

[Zorg] Reland "Fix Android sanitizer flags."

This builder uses an old version of the NDK with a just-built version
of the Clang. This builder is making use of an NDK standalone
toolchain. For older NDKs, these toolchins have the C++ stdlib headers
and libraries installed to the GNU stdlib paths.

This causes an issue when I try to update the default -stdlib for
Android targets in Clang as this builder will begin looking in the
libc++ paths when it does not have an STL available at that path.

Explicitly use `-stdlib=libstdc++` to keep the old tools working with
a new Clang until this builder is using an NDK new enough to not need
it (NDK r19).

This relands https://reviews.llvm.org/D53182.
------------------------------------------------------------------------

Not sure what's up.
Status: Started (was: Assigned)
The reverse dependency of r344751 change (r344640) shows what kind of fix we need.

This should do it: https://chromium-review.googlesource.com/c/chromium/src/+/1292883
Project Member

Comment 3 by bugdroid1@chromium.org, Oct 22

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ce26b379dbc87db634d46bbc0fbb8fdde5753eb2

commit ce26b379dbc87db634d46bbc0fbb8fdde5753eb2
Author: Hans Wennborg <hans@chromium.org>
Date: Mon Oct 22 11:06:19 2018

Clang update script: set CMAKE_ASM_FLAGS when building compiler-rt

After compiler-rt r344751, CMAKE_CXX_FLAGS doesn't get passed to all
objects.

TBR=thakis

Bug:  897627 
Change-Id: Iea0eda192c6da8d6d662732e7ad456e0ba3c0b46
Reviewed-on: https://chromium-review.googlesource.com/c/1292883
Reviewed-by: Hans Wennborg <hans@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#601523}
[modify] https://crrev.com/ce26b379dbc87db634d46bbc0fbb8fdde5753eb2/tools/clang/scripts/update.py

Status: Fixed (was: Started)

Sign in to add a comment