Revision: 76712
          http://sourceforge.net/p/brlcad/code/76712
Author:   starseeker
Date:     2020-08-11 20:54:49 +0000 (Tue, 11 Aug 2020)
Log Message:
-----------
Make a stab at getting benchmark set up to use generator expressions to launch 
the run.

Modified Paths:
--------------
    brlcad/branches/RELEASE/bench/CMakeLists.txt
    brlcad/branches/RELEASE/misc/CMake/BRLCAD_Targets.cmake
    brlcad/branches/RELEASE/src/rt/CMakeLists.txt

Modified: brlcad/branches/RELEASE/bench/CMakeLists.txt
===================================================================
--- brlcad/branches/RELEASE/bench/CMakeLists.txt        2020-08-11 20:21:19 UTC 
(rev 76711)
+++ brlcad/branches/RELEASE/bench/CMakeLists.txt        2020-08-11 20:54:49 UTC 
(rev 76712)
@@ -11,19 +11,21 @@
   run.c
   clean.c
 )
-BRLCAD_ADDEXEC(bark "${BARK_SOURCES}" libbu NO_STRICT NO_INSTALL)
+BRLCAD_ADDEXEC(bark "${BARK_SOURCES}" libbu NO_STRICT NO_INSTALL TEST_USESDATA)
 
 configure_file(run.sh "${CMAKE_CURRENT_BINARY_DIR}/benchmark" COPYONLY)
 install(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/benchmark" DESTINATION 
${BIN_DIR})
-if(CMAKE_CONFIGURATION_TYPES)
-  foreach(CFG_TYPE ${CMAKE_CONFIGURATION_TYPES})
-    string(TOUPPER "${CFG_TYPE}" CFG_TYPE_UPPER)
-    configure_file(run.sh ${CMAKE_BINARY_DIR_${CFG_TYPE_UPPER}}/bin/benchmark 
COPYONLY)
-  endforeach(CFG_TYPE ${CMAKE_CONFIGURATION_TYPES})
-else(CMAKE_CONFIGURATION_TYPES)
-  configure_file(run.sh ${CMAKE_BINARY_DIR}/bin/benchmark COPYONLY)
-endif(CMAKE_CONFIGURATION_TYPES)
 
+add_custom_command(
+  OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/benchmark-${CMAKE_CFG_INTDIR}-done
+  COMMAND "${CMAKE_COMMAND}" -E copy_if_different 
${CMAKE_CURRENT_SOURCE_DIR}/run.sh $<TARGET_FILE_DIR:bark>/benchmark
+  COMMAND "${CMAKE_COMMAND}" -E touch  
${CMAKE_CURRENT_BINARY_DIR}/benchmark-${CMAKE_CFG_INTDIR}-done
+  DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/run.sh
+  )
+add_custom_target(benchmark_cp DEPENDS 
${CMAKE_CURRENT_BINARY_DIR}/benchmark-${CMAKE_CFG_INTDIR}-done)
+set_target_properties(benchmark_cp PROPERTIES FOLDER "Benchmark")
+DISTCLEAN($<TARGET_FILE_DIR:bark>/benchmark)
+
 file(WRITE  "${CMAKE_BINARY_DIR}/CMakeTmp/benchmsg.cmake" "message(\"---\")\n")
 file(APPEND "${CMAKE_BINARY_DIR}/CMakeTmp/benchmsg.cmake" "message(\"Run 'make 
benchmark-clean' in the bench directory to delete the logic\")\n")
 file(APPEND "${CMAKE_BINARY_DIR}/CMakeTmp/benchmsg.cmake" "message(\"and image 
files generated during the benchmark analysis.\")\n")
@@ -38,13 +40,14 @@
 
 if(SH_EXEC AND TARGET m35.g)
   # CTest enabled short run of the benchmark suite
-  add_test(NAME benchmark COMMAND ${SH_EXEC} 
"${CMAKE_BINARY_DIR}/bin/benchmark" run TIMEFRAME=1)
+  add_test(NAME benchmark COMMAND ${SH_EXEC} 
"$<TARGET_FILE_DIR:bark>/benchmark" run TIMEFRAME=1)
   set_tests_properties(benchmark PROPERTIES LABELS "Benchmark")
   add_custom_target(benchmark-check
     COMMAND ${CMAKE_CTEST_COMMAND} -L Benchmark --output-on-failure
-    DEPENDS rt pixcmp BENCHMARK_PIX_cp PIX_LOG_cp
+    DEPENDS rt pixcmp BENCHMARK_PIX_cp PIX_LOG_cp benchmark_cp
     )
   add_dependencies(benchmark-check bldg391.g m35.g moss.g sphflake.g star.g 
world.g)
+  set_target_properties(benchmark-check PROPERTIES FOLDER "Benchmark")
   if(TARGET check)
     add_dependencies(check benchmark-check)
   endif(TARGET check)
@@ -51,19 +54,22 @@
 
   # Full run of the benchmark suite
   add_custom_target(benchmark
-    COMMAND ${SH_EXEC} ${CMAKE_BINARY_DIR}/bin/benchmark run
+    COMMAND ${SH_EXEC} $<TARGET_FILE_DIR:bark>/benchmark run
     COMMAND ${CMAKE_COMMAND} -P "${CMAKE_BINARY_DIR}/CMakeTmp/benchmsg.cmake"
-    DEPENDS rt pixcmp BENCHMARK_PIX_cp PIX_LOG_cp
+    DEPENDS rt pixcmp BENCHMARK_PIX_cp PIX_LOG_cp benchmark_cp
     )
   add_dependencies(benchmark bldg391.g m35.g moss.g sphflake.g star.g world.g)
+  set_target_properties(benchmark PROPERTIES FOLDER "Benchmark")
 
   # benchmark cleanup targets
   add_custom_target(benchmark-clean
     ${SH_EXEC} ${CMAKE_BINARY_DIR}/bin/benchmark clean
     )
+  set_target_properties(benchmark-clean PROPERTIES FOLDER "Benchmark")
   add_custom_target(benchmark-clobber
     ${SH_EXEC} ${CMAKE_BINARY_DIR}/bin/benchmark clobber
     )
+  set_target_properties(benchmark-clobber PROPERTIES FOLDER "Benchmark")
 endif(SH_EXEC AND TARGET m35.g)
 
 # Local Variables:

Modified: brlcad/branches/RELEASE/misc/CMake/BRLCAD_Targets.cmake
===================================================================
--- brlcad/branches/RELEASE/misc/CMake/BRLCAD_Targets.cmake     2020-08-11 
20:21:19 UTC (rev 76711)
+++ brlcad/branches/RELEASE/misc/CMake/BRLCAD_Targets.cmake     2020-08-11 
20:54:49 UTC (rev 76712)
@@ -354,7 +354,7 @@
   # If we *are* installing, do so to the binary directory (BIN_DIR)
   if(E_NO_INSTALL OR E_TEST)
     # Unfortunately, we currently need Windows binaries in the same 
directories as their DLL libraries
-    if(NOT WIN32)
+    if(NOT WIN32 AND NOT E_TEST_USESDATA)
       if(NOT CMAKE_CONFIGURATION_TYPES)
        set_target_properties(${execname} PROPERTIES RUNTIME_OUTPUT_DIRECTORY 
"${CMAKE_CURRENT_BINARY_DIR}")
       else(NOT CMAKE_CONFIGURATION_TYPES)
@@ -363,7 +363,7 @@
          set_target_properties(${execname} PROPERTIES 
RUNTIME_OUTPUT_DIRECTORY_${CFG_TYPE_UPPER} 
"${CMAKE_CURRENT_BINARY_DIR}/${CFG_TYPE}")
        endforeach(CFG_TYPE ${CMAKE_CONFIGURATION_TYPES})
       endif(NOT CMAKE_CONFIGURATION_TYPES)
-    endif(NOT WIN32)
+    endif(NOT WIN32 AND NOT E_TEST_USESDATA)
   else(E_NO_INSTALL OR E_TEST)
     if (NOT E_TEST_USESDATA)
       install(TARGETS ${execname} DESTINATION ${BIN_DIR})

Modified: brlcad/branches/RELEASE/src/rt/CMakeLists.txt
===================================================================
--- brlcad/branches/RELEASE/src/rt/CMakeLists.txt       2020-08-11 20:21:19 UTC 
(rev 76711)
+++ brlcad/branches/RELEASE/src/rt/CMakeLists.txt       2020-08-11 20:54:49 UTC 
(rev 76712)
@@ -63,7 +63,7 @@
 ADD_TARGET_DEPS(rtscale dm-ogl dm-wgl)
 
 BRLCAD_ADDEXEC(rt "${LIBRTUIF_SOURCES};view.c" 
"${OPENCL_LIBS};${RT_STD_LIBS};libdm")
-ADD_TARGET_DEPS(rt dm-ogl dm-wgl)
+ADD_TARGET_DEPS(rt dm-ogl dm-wgl dm-txt)
 
 BRLCAD_ADDEXEC(rtarea "${LIBRTUIF_SOURCES};viewarea.c" "${RT_STD_LIBS}")
 set_property(TARGET rtarea APPEND PROPERTY COMPILE_DEFINITIONS "RT_TXT_OUTPUT")

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to