[llvm] r292749 - [libFuzzer] Specify the CRT considered (MT or MD) for tests on Windows.

Kostya Serebryany via llvm-commits llvm-commits at lists.llvm.org
Sat Jan 21 22:38:52 PST 2017


the libfuzzer bot became red.
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fuzzer
could you please check if one of your recent commits caused it?
Looks like some of the cmake changes broke all testing.

Thanks!

On Sat, Jan 21, 2017 at 6:28 PM, Marcos Pividori via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: mpividori
> Date: Sat Jan 21 20:28:12 2017
> New Revision: 292749
>
> URL: http://llvm.org/viewvc/llvm-project?rev=292749&view=rev
> Log:
> [libFuzzer] Specify the CRT considered (MT or MD) for tests on Windows.
>
> Differential Revision: https://reviews.llvm.org/D28439
>
> Modified:
>     llvm/trunk/lib/Fuzzer/test/CMakeLists.txt
>
> Modified: llvm/trunk/lib/Fuzzer/test/CMakeLists.txt
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/
> test/CMakeLists.txt?rev=292749&r1=292748&r2=292749&view=diff
> ============================================================
> ==================
> --- llvm/trunk/lib/Fuzzer/test/CMakeLists.txt (original)
> +++ llvm/trunk/lib/Fuzzer/test/CMakeLists.txt Sat Jan 21 20:28:12 2017
> @@ -18,6 +18,13 @@ endforeach()
>  set(CMAKE_CXX_FLAGS "${LIBFUZZER_FLAGS_BASE} -fsanitize-coverage=trace-pc-
> guard,indirect-calls,trace-cmp,trace-div,trace-gep -gline-tables-only")
>
>  if(MSVC)
> +  # For tests use the CRT specified for release build
> +  # (asan doesn't support MDd and MTd)
> +  if ("${LLVM_USE_CRT_RELEASE}" STREQUAL "")
> +    set(CRT_FLAG " /MD ")
> +  else()
> +    set(CRT_FLAG " /${LLVM_USE_CRT_RELEASE} ")
> +  endif()
>    # In order to use the sanitizers in Windows, we need to link against
> many
>    # runtime libraries which will depend on the target being created
>    # (executable or dll) and the c runtime library used (MT/MD).
> @@ -28,8 +35,8 @@ if(MSVC)
>    # the rules for linking executables and shared libraries, using the
> compiler
>    # instead of link.exe. Clang will consider the sanitizer flags, and
>    # automatically provide the required libraries to the linker.
> -  set(CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> <FLAGS>
> ${CMAKE_CXX_FLAGS} <OBJECTS> -o <TARGET> <LINK_LIBRARIES> /link
> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS>")
> -  set(CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_CXX_COMPILER>
> ${CMAKE_CXX_FLAGS} /LD <CMAKE_SHARED_LIBRARY_CXX_FLAGS>
> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG>
> <TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> /link <LINK_FLAGS>")
> +  set(CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> <FLAGS>
> ${CMAKE_CXX_FLAGS} ${CRT_FLAG} <OBJECTS> -o <TARGET> <LINK_LIBRARIES> /link
> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS>")
> +  set(CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_CXX_COMPILER>
> ${CMAKE_CXX_FLAGS} ${CRT_FLAG} /LD <CMAKE_SHARED_LIBRARY_CXX_FLAGS>
> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG>
> <TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> /link <LINK_FLAGS>")
>  endif()
>
>  # add_libfuzzer_test(<name>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170121/5b98cdc6/attachment.html>


More information about the llvm-commits mailing list