[llvm] r294389 - [libFuzzer] Use custom target instead of list of binaries for tests.

Marcos Pividori via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 7 16:03:26 PST 2017


Author: mpividori
Date: Tue Feb  7 18:03:26 2017
New Revision: 294389

URL: http://llvm.org/viewvc/llvm-project?rev=294389&view=rev
Log:
[libFuzzer] Use custom target instead of list of binaries for tests.

Update cmake to use a custom target TestBinaries instead of a list of targets.
This simplifies cmake, and fix some errors. This way, we don't have to propagate
the values into parents directories. We only need to use add_dependencies.

Differential Revision: https://reviews.llvm.org/D29593

Modified:
    llvm/trunk/lib/Fuzzer/test/CMakeLists.txt
    llvm/trunk/lib/Fuzzer/test/no-coverage/CMakeLists.txt
    llvm/trunk/lib/Fuzzer/test/ubsan/CMakeLists.txt
    llvm/trunk/lib/Fuzzer/test/uninstrumented/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=294389&r1=294388&r2=294389&view=diff
==============================================================================
--- llvm/trunk/lib/Fuzzer/test/CMakeLists.txt (original)
+++ llvm/trunk/lib/Fuzzer/test/CMakeLists.txt Tue Feb  7 18:03:26 2017
@@ -39,6 +39,8 @@ if(MSVC)
   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_custom_target(TestBinaries)
+
 # add_libfuzzer_test(<name>
 #   SOURCES source0.cpp [source1.cpp ...]
 #   )
@@ -63,12 +65,9 @@ function(add_libfuzzer_test name)
     PROPERTIES RUNTIME_OUTPUT_DIRECTORY
     "${CMAKE_BINARY_DIR}/lib/Fuzzer/test"
     )
-  set(TestBinaries ${TestBinaries} LLVMFuzzer-${name} PARENT_SCOPE)
+  add_dependencies(TestBinaries LLVMFuzzer-${name})
 endfunction()
 
-# Variable to keep track of all test targets
-set(TestBinaries)
-
 ###############################################################################
 # Basic tests
 ###############################################################################
@@ -166,13 +165,13 @@ target_include_directories(LLVMFuzzer-Un
   "${LLVM_MAIN_SRC_DIR}/utils/unittest/googletest/include"
   )
 
-set(TestBinaries ${TestBinaries} LLVMFuzzer-Unittest)
+add_dependencies(TestBinaries LLVMFuzzer-Unittest)
 set_target_properties(LLVMFuzzer-Unittest
   PROPERTIES RUNTIME_OUTPUT_DIRECTORY
   "${CMAKE_CURRENT_BINARY_DIR}"
 )
 
-set(TestBinaries ${TestBinaries} LLVMFuzzer-StandaloneInitializeTest)
+add_dependencies(TestBinaries LLVMFuzzer-StandaloneInitializeTest)
 set_target_properties(LLVMFuzzer-StandaloneInitializeTest
   PROPERTIES RUNTIME_OUTPUT_DIRECTORY
   "${CMAKE_CURRENT_BINARY_DIR}"
@@ -218,7 +217,7 @@ else(MSVC)
     LIBRARY_DIR "${CMAKE_BINARY_DIR}/lib/Fuzzer/lib")
 endif()
 
-set(TestBinaries ${TestBinaries} LLVMFuzzer-DSOTest)
+add_dependencies(TestBinaries LLVMFuzzer-DSOTest)
 
 ###############################################################################
 # Configure lit to run the tests
@@ -243,7 +242,7 @@ configure_lit_site_cfg(
 
 add_lit_testsuite(check-fuzzer "Running Fuzzer tests"
     ${CMAKE_CURRENT_BINARY_DIR}
-    DEPENDS ${TestBinaries}
+    DEPENDS TestBinaries
     )
 
 # Don't add dependencies on Windows. The linker step would fail on Windows,

Modified: llvm/trunk/lib/Fuzzer/test/no-coverage/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/test/no-coverage/CMakeLists.txt?rev=294389&r1=294388&r2=294389&view=diff
==============================================================================
--- llvm/trunk/lib/Fuzzer/test/no-coverage/CMakeLists.txt (original)
+++ llvm/trunk/lib/Fuzzer/test/no-coverage/CMakeLists.txt Tue Feb  7 18:03:26 2017
@@ -25,6 +25,5 @@ if(NOT MSVC)
       "${CMAKE_BINARY_DIR}/lib/Fuzzer/test"
       )
 
-  # Propagate value into parent directory
-  set(TestBinaries ${TestBinaries} AFLDriverTest PARENT_SCOPE)
+  add_dependencies(TestBinaries AFLDriverTest)
 endif()

Modified: llvm/trunk/lib/Fuzzer/test/ubsan/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/test/ubsan/CMakeLists.txt?rev=294389&r1=294388&r2=294389&view=diff
==============================================================================
--- llvm/trunk/lib/Fuzzer/test/ubsan/CMakeLists.txt (original)
+++ llvm/trunk/lib/Fuzzer/test/ubsan/CMakeLists.txt Tue Feb  7 18:03:26 2017
@@ -10,6 +10,3 @@ set(UbsanTests
 foreach(Test ${UbsanTests})
   add_libfuzzer_test(${Test}-Ubsan SOURCES ../${Test}.cpp)
 endforeach()
-
-# Propagate value into parent directory
-set(TestBinaries ${TestBinaries} PARENT_SCOPE)

Modified: llvm/trunk/lib/Fuzzer/test/uninstrumented/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/test/uninstrumented/CMakeLists.txt?rev=294389&r1=294388&r2=294389&view=diff
==============================================================================
--- llvm/trunk/lib/Fuzzer/test/uninstrumented/CMakeLists.txt (original)
+++ llvm/trunk/lib/Fuzzer/test/uninstrumented/CMakeLists.txt Tue Feb  7 18:03:26 2017
@@ -11,6 +11,3 @@ set(UninstrumentedTests
 foreach(Test ${UninstrumentedTests})
   add_libfuzzer_test(${Test}-Uninstrumented SOURCES ../${Test}.cpp)
 endforeach()
-
-# Propagate value into parent directory
-set(TestBinaries ${TestBinaries} PARENT_SCOPE)




More information about the llvm-commits mailing list