Revision: 75992
          http://sourceforge.net/p/brlcad/code/75992
Author:   starseeker
Date:     2020-06-01 13:45:50 +0000 (Mon, 01 Jun 2020)
Log Message:
-----------
Switch to an approach that makes fewer assumptions about BIN_DIR

Modified Paths:
--------------
    brlcad/trunk/regress/burst/regress-burst.cmake.in
    brlcad/trunk/regress/nurbs/regress-nurbs-test.cmake.in
    brlcad/trunk/regress/rtwizard/regress-rtwiz.cmake.in

Modified: brlcad/trunk/regress/burst/regress-burst.cmake.in
===================================================================
--- brlcad/trunk/regress/burst/regress-burst.cmake.in   2020-06-01 00:13:07 UTC 
(rev 75991)
+++ brlcad/trunk/regress/burst/regress-burst.cmake.in   2020-06-01 13:45:50 UTC 
(rev 75992)
@@ -2,6 +2,7 @@
 set(CSDIR "@CMAKE_CURRENT_SOURCE_DIR@")
 set(BURST_CF "@BURST_CLEAN_FILES@")
 set(BURST_IF "@BURST_INPUT_FILES@")
+set(BIN_DIR "@BIN_DIR@")
 set(DDIR "@DATA_DIR@")
 set(LOGFILE "${CBDIR}/regress-burst.log")
 
@@ -28,9 +29,10 @@
   endforeach(BIF ${BURST_IF})
 endif (NOT "${CSDIR}" STREQUAL "${CBDIR}")
 
-# TODO - this breaks if BIN_DIR is not one deep
+# Find the root path from the executable, and from there the database path
 get_filename_component(BDIR "${BURST}" DIRECTORY)
-execute_process(COMMAND "@CMAKE_COMMAND@" -E copy 
"${BDIR}/../${DDIR}/db/ktank.g" "${CBDIR}/ktank.g")
+string(REGEX REPLACE "${BIN_DIR}$" "" RDIR "${BDIR}")
+execute_process(COMMAND "@CMAKE_COMMAND@" -E copy "${RDIR}/${DDIR}/db/ktank.g" 
"${CBDIR}/ktank.g")
 
 file(APPEND "${LOGFILE}" "Running burst on ktank.g:\n${BURST} -b 
${CBDIR}/ktank.b\n")
 

Modified: brlcad/trunk/regress/nurbs/regress-nurbs-test.cmake.in
===================================================================
--- brlcad/trunk/regress/nurbs/regress-nurbs-test.cmake.in      2020-06-01 
00:13:07 UTC (rev 75991)
+++ brlcad/trunk/regress/nurbs/regress-nurbs-test.cmake.in      2020-06-01 
13:45:50 UTC (rev 75992)
@@ -1,6 +1,7 @@
 # Values set at CMake configure time
 set(CBDIR "@CMAKE_CURRENT_BINARY_DIR@")
 set(CSDIR "@CMAKE_CURRENT_SOURCE_DIR@")
+set(BIN_DIR "@BIN_DIR@")
 set(LOGFILE "${CBDIR}/regress-nurbs_@[email protected]")
 
 file(WRITE "${LOGFILE}" "Starting nurbs test run\n")
@@ -22,10 +23,8 @@
 if ("${GFILE_FP}" STREQUAL "@NHIT_GFILE@")
   set(NHIT_G "@NHIT_GFILE@")
 else ("${GFILE_FP}" STREQUAL "@NHIT_GFILE@")
-  # TODO - need a better answer - if BIN_DIR isn't a single directory this
-  # won't work.  Really should come in via a generator expression, but
-  # that needs to be another argument to the cmake command...
-  set(NHIT_G "${BDIR}/../@NHIT_GFILE@")
+  string(REGEX REPLACE "${BIN_DIR}$" "" RDIR "${BDIR}")
+  set(NHIT_G "${RDIR}/@NHIT_GFILE@")
 endif ("${GFILE_FP}" STREQUAL "@NHIT_GFILE@")
 
 execute_process(

Modified: brlcad/trunk/regress/rtwizard/regress-rtwiz.cmake.in
===================================================================
--- brlcad/trunk/regress/rtwizard/regress-rtwiz.cmake.in        2020-06-01 
00:13:07 UTC (rev 75991)
+++ brlcad/trunk/regress/rtwizard/regress-rtwiz.cmake.in        2020-06-01 
13:45:50 UTC (rev 75992)
@@ -3,6 +3,7 @@
 set(INPUTFILE "@INPUT_FILE@")
 set(CTRLIMG "@CONTROL_IMAGE@")
 set(TGTIMG "@TARGET_IMAGE@")
+set(BIN_DIR "@BIN_DIR@")
 set(LOGFILE "@LOG_FILE@")
 
 file(WRITE "${LOGFILE}" "Starting rtwizard run\n")
@@ -30,8 +31,9 @@
   message(FATAL_ERROR "Unable to find pixcmp, aborting.\nSee ${LOGFILE} for 
more details.")
 endif (NOT EXISTS "${PIXCMP_EXEC}")
 
-# TODO - this will break if the binary directory is more than one deep
-set(SRCFILE "${BDIR}/../${INPUTFILE}")
+# Reconstruct the tree root from the EXEC path, and identify the input file 
location
+string(REGEX_REPLACE "${BIN_DIR}$" "" RDIR "${BDIR}")
+set(SRCFILE "${RDIR}/${INPUTFILE}")
 
 # Clean up in case we've run before
 execute_process(COMMAND "@CMAKE_COMMAND@" -E remove -f "${TGTIMG}")

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