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