<div dir="ltr">This is breaking my builds, which use clang 4.0:<div><br></div><div>clang: error: unsupported argument 'fuzzer-no-link' to option 'fsanitize='<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Aug 21, 2019 at 10:51 AM Mitch Phillips via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Author: hctim<br>
Date: Wed Aug 21 10:52:51 2019<br>
New Revision: 369551<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=369551&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=369551&view=rev</a><br>
Log:<br>
[GWP-ASan] Build stack_trace_compressor_fuzzer.<br>
<br>
Summary:<br>
Flips the switch to build stack_trace_compressor_fuzzer. This was recently<br>
temporarily disabled in rL369079 as it was breaking the sanitizer buildbots.<br>
<br>
My diagnosis of the problem is that on clang-only bootstrap builds, we build<br>
gwp_asan before libfuzzer. This causes a discrepancy when the clang driver<br>
attempts to link libclang_rt.fuzzer* as CMake doesn't see a dependency there.<br>
<br>
I've (hopefully) fixed the issue by adding a direct dependency for the fuzz<br>
target so CMake can resolve the build order properly. As part of this, the<br>
libFuzzer 'fuzzer' target has to be discovered before the declaration of the<br>
fuzz target.<br>
<br>
pcc@ for mild review + notification as buildcop.<br>
<br>
Reviewers: pcc<br>
<br>
Reviewed By: pcc<br>
<br>
Subscribers: mgorny, #sanitizers, llvm-commits<br>
<br>
Tags: #sanitizers, #llvm<br>
<br>
Differential Revision: <a href="https://reviews.llvm.org/D66494" rel="noreferrer" target="_blank">https://reviews.llvm.org/D66494</a><br>
<br>
Modified:<br>
    compiler-rt/trunk/lib/gwp_asan/CMakeLists.txt<br>
<br>
Modified: compiler-rt/trunk/lib/gwp_asan/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/gwp_asan/CMakeLists.txt?rev=369551&r1=369550&r2=369551&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/gwp_asan/CMakeLists.txt?rev=369551&r1=369550&r2=369551&view=diff</a><br>
==============================================================================<br>
--- compiler-rt/trunk/lib/gwp_asan/CMakeLists.txt (original)<br>
+++ compiler-rt/trunk/lib/gwp_asan/CMakeLists.txt Wed Aug 21 10:52:51 2019<br>
@@ -100,23 +100,21 @@ if (COMPILER_RT_HAS_GWP_ASAN)<br>
       CFLAGS ${GWP_ASAN_CFLAGS} ${SANITIZER_COMMON_CFLAGS})<br>
<br>
   # Build the stack trace compressor fuzzer.<br>
-  # Currently commented out in order to give me some time to figure out what the<br>
-  # issue is. Rolling back would require rolling back 5 CL's, so this should be<br>
-  # okay until I can get to a real computer and actually fix it tomorrow.<br>
-  # - hctim<br>
-  #if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")<br>
-  #  add_executable(stack_trace_compressor_fuzzer<br>
-  #    stack_trace_compressor_fuzzer.cpp<br>
-  #    ${GWP_ASAN_SOURCES}<br>
-  #    ${GWP_ASAN_HEADERS})<br>
-  #  set_target_properties(stack_trace_compressor_fuzzer<br>
-  #    PROPERTIES FOLDER "Fuzzers")<br>
-  #  target_compile_options(stack_trace_compressor_fuzzer<br>
-  #    PRIVATE -fsanitize=fuzzer-no-link)<br>
-  #  set_target_properties(<br>
-  #    stack_trace_compressor_fuzzer PROPERTIES LINK_FLAGS -fsanitize=fuzzer)<br>
-  #  add_dependencies(gwp_asan stack_trace_compressor_fuzzer)<br>
-  #endif()<br>
+  if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" AND<br>
+      COMPILER_RT_BUILD_LIBFUZZER)<br>
+    add_executable(stack_trace_compressor_fuzzer<br>
+        stack_trace_compressor_fuzzer.cpp<br>
+        ${GWP_ASAN_SOURCES}<br>
+        ${GWP_ASAN_HEADERS})<br>
+    set_target_properties(<br>
+        stack_trace_compressor_fuzzer PROPERTIES FOLDER "Fuzzers")<br>
+    target_compile_options(<br>
+        stack_trace_compressor_fuzzer PRIVATE -fsanitize=fuzzer-no-link)<br>
+    set_target_properties(<br>
+        stack_trace_compressor_fuzzer PROPERTIES LINK_FLAGS -fsanitize=fuzzer)<br>
+    add_dependencies(stack_trace_compressor_fuzzer fuzzer)<br>
+    add_dependencies(gwp_asan stack_trace_compressor_fuzzer)<br>
+  endif()<br>
 endif()<br>
<br>
 if(COMPILER_RT_INCLUDE_TESTS)<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><span style="font-family:Times;font-size:medium"><table cellspacing="0" cellpadding="0"><tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small"><td nowrap style="border-top:2px solid rgb(213,15,37)">Teresa Johnson |</td><td nowrap style="border-top:2px solid rgb(51,105,232)"> Software Engineer |</td><td nowrap style="border-top:2px solid rgb(0,153,57)"> <a href="mailto:tejohnson@google.com" target="_blank">tejohnson@google.com</a> |</td><td nowrap style="border-top:2px solid rgb(238,178,17)"><br></td></tr></tbody></table></span></div></div></div>