New issue
Advanced search Search tips
Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jul 2017
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment
link

Issue 745773: nonsfi_loader stopped linking after libc++ switch

Reported by thakis@chromium.org, Jul 18 2017 Project Member

Issue description

https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.fyi%2FClangToTLinuxUBSanVptr%2F5925%2F%2B%2Frecipes%2Fsteps%2Fcompile%2F0%2Fstdout
[1680/46904] LINK ./nonsfi_loader
FAILED: nonsfi_loader 
python "../../build/toolchain/gcc_link_wrapper.py" --output="./nonsfi_loader" -- ../../third_party/llvm-build/Release+Asserts/bin/clang++ -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -fuse-ld=gold -B../../third_party/binutils/Linux_x64/Release/bin -Wl,--threads -Wl,--thread-count=4 -nodefaultlibs -m64 -Werror -Wl,-O1 -Wl,--gc-sections --sysroot=../../build/linux/debian_jessie_amd64-sysroot -L../../build/linux/debian_jessie_amd64-sysroot/lib/x86_64-linux-gnu -Wl,-rpath-link=../../build/linux/debian_jessie_amd64-sysroot/lib/x86_64-linux-gnu -L../../build/linux/debian_jessie_amd64-sysroot/usr/lib/x86_64-linux-gnu -Wl,-rpath-link=../../build/linux/debian_jessie_amd64-sysroot/usr/lib/x86_64-linux-gnu -fsanitize=vptr -fsanitize-coverage=trace-pc-guard -Wl,-rpath-link=. -Wl,--disable-new-dtags -Wl,-rpath=\$ORIGIN/. -Wl,-rpath-link=. -o "./nonsfi_loader" -Wl,--start-group @"./nonsfi_loader.rsp"  -Wl,--end-group   -lc -lm -lgcc_s -lrt -ldl -lpthread 
/b/c/builder/ClangToTLinuxUBSanVptr/src/third_party/llvm/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc:163: error: undefined reference to 'typeinfo for __cxxabiv1::__si_class_type_info'
/b/c/builder/ClangToTLinuxUBSanVptr/src/third_party/llvm/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc:163: error: undefined reference to 'typeinfo for __cxxabiv1::__class_type_info'
/b/c/builder/ClangToTLinuxUBSanVptr/src/third_party/llvm/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc:163: error: undefined reference to '__dynamic_cast'
/b/c/builder/ClangToTLinuxUBSanVptr/src/third_party/llvm/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc:167: error: undefined reference to 'typeinfo for __cxxabiv1::__vmi_class_type_info'
/b/c/builder/ClangToTLinuxUBSanVptr/src/third_party/llvm/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc:167: error: undefined reference to '__dynamic_cast'
/b/c/builder/ClangToTLinuxUBSanVptr/src/third_party/llvm/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc:163: error: undefined reference to '__dynamic_cast'


Nothing depends on the target, it's only built if you build 'all' (which most bots don't do, but this one does).

Looks like nonsfi_loader is C-only and doesn't need a C++ library usually. It does need abi stuff in asan mode though.

Do we just add the exe_and_shlib_deps dep anyways?
 

Comment 1 by inglorion@chromium.org, Jul 19 2017

This is causing the ClangToTLinuxASan and ClangToTLinuxUBSanVptr bots to be red, so I would like to get it fixed.

thakis, is the exe_and_shlib_deps only used to add sanitizer libraries to sanitizer builds? If so, that sounds like just the ticket to me.

Comment 2 by thomasanderson@chromium.org, Jul 19 2017

Status: Started (was: Untriaged)
c#1: yes;  I'll create a quick CL for this

Comment 3 by bugdroid1@chromium.org, Jul 20 2017

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

commit c6daaeebc89b1445d744bd1f4a456933d68ce620
Author: nacl-deps-roller@chromium.org <nacl-deps-roller@chromium.org>
Date: Thu Jul 20 01:47:37 2017

Roll src/native_client/ 015356a98..01a28a606 (1 commit)

https://chromium.googlesource.com/native_client/src/native_client.git/+log/015356a98e44..01a28a6069a9

$ git log 015356a98..01a28a606 --date=short --no-merges --format='%ad %ae %s'
2017-07-19 thomasanderson Add missing dependency on exe_and_shlib_deps

Created with:
  roll-dep src/native_client
BUG= 745773 


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_dbg_32_ng,linux_nacl_sdk_build
TBR=mseaborn@chromium.org

Change-Id: Iead54c72a7c511750ff4a4c16526e85505fd708c
Reviewed-on: https://chromium-review.googlesource.com/578714
Reviewed-by: <nacl-deps-roller@chromium.org>
Commit-Queue: <nacl-deps-roller@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488088}
[modify] https://crrev.com/c6daaeebc89b1445d744bd1f4a456933d68ce620/DEPS

Comment 4 by thomasanderson@chromium.org, Jul 20 2017

Status: Fixed (was: Started)

Sign in to add a comment