[test-suite] r257059 - [test-suite] Prevent timeit/fpcmp from being rebuilt every time make is run.

Chad Rosier via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 7 05:55:54 PST 2016


Author: mcrosier
Date: Thu Jan  7 07:55:54 2016
New Revision: 257059

URL: http://llvm.org/viewvc/llvm-project?rev=257059&view=rev
Log:
[test-suite] Prevent timeit/fpcmp from being rebuilt every time make is run.

This patch adds a custom_command level underneath the custom_targets for timeit
and fpcmp to prevent the executables from being rebuilt every time make is run.

The custom_target rule will still be run every time, but the binaries will be
detected as being up to date and skip rebuilding.

http://reviews.llvm.org/D15938

Modified:
    test-suite/trunk/tools/CMakeLists.txt

Modified: test-suite/trunk/tools/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/tools/CMakeLists.txt?rev=257059&r1=257058&r2=257059&view=diff
==============================================================================
--- test-suite/trunk/tools/CMakeLists.txt (original)
+++ test-suite/trunk/tools/CMakeLists.txt Thu Jan  7 07:55:54 2016
@@ -1,4 +1,4 @@
-add_executable(timeit-target timeit.c)
+add_executable(timeit-target ${CMAKE_CURRENT_SOURCE_DIR}/timeit.c)
 
 # FIXME: Replicate Makefile.tools's logic for determining whether to use fpcmp/fpcmp.sh
 
@@ -10,10 +10,14 @@ add_executable(timeit-target timeit.c)
 set(TEST_SUITE_HOST_CC "cc" CACHE STRING "C compiler targetting the host")
 mark_as_advanced(TEST_SUITE_HOST_CC)
 add_custom_target(fpcmp
+    DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/fpcmp)
+add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/fpcmp
   COMMAND ${TEST_SUITE_HOST_CC} ${CMAKE_CURRENT_SOURCE_DIR}/fpcmp.c -o ${CMAKE_CURRENT_BINARY_DIR}/fpcmp
   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/fpcmp.c
 )
 add_custom_target(timeit
+    DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/timeit)
+add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/timeit
   COMMAND ${TEST_SUITE_HOST_CC} ${CMAKE_CURRENT_SOURCE_DIR}/timeit.c -o ${CMAKE_CURRENT_BINARY_DIR}/timeit
   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/timeit.c
 )




More information about the llvm-commits mailing list