diff options
author | Josh Morman <jmorman@perspectalabs.com> | 2019-07-18 09:17:38 -0400 |
---|---|---|
committer | Marcus Müller <marcus@hostalia.de> | 2019-07-19 23:43:06 +0200 |
commit | 6984088ea6e67e848803c947cf83ffaaa4f8e6c1 (patch) | |
tree | a455c9a0b84738ebb614e0c463305a00093047f3 | |
parent | e97c79abff60d752574fbb1b8caae5b9a35b3fc1 (diff) |
modtool: put proper quotes when unescaped shell paths
Adds quotes to paths to prevent issues when the
user has a space in their OOT shell paths
Slight change to #2560 which should prevent CI from
broadly failing
Fixes #2443
3 files changed, 17 insertions, 7 deletions
diff --git a/cmake/Modules/GrTest.cmake b/cmake/Modules/GrTest.cmake index 5de7476f3f..2cd7d51fde 100644 --- a/cmake/Modules/GrTest.cmake +++ b/cmake/Modules/GrTest.cmake @@ -22,6 +22,13 @@ if(DEFINED __INCLUDED_GR_TEST_CMAKE) endif() set(__INCLUDED_GR_TEST_CMAKE TRUE) +function (GR_CONVERT_QUOTED_STRING path_str quoted_path) + file(TO_NATIVE_PATH "${path_str}" path_str) + string(CONCAT path_str "\"" ${path_str} "\"") + string(REPLACE "\\ " " " path_str ${path_str}) + set(${quoted_path} "${path_str}" PARENT_SCOPE) +endfunction() + ######################################################################## # Add a unit test and setup the environment for a unit test. # Takes the same arguments as the ADD_TEST function. @@ -59,8 +66,11 @@ function(GR_ADD_TEST test_name) endforeach(pydir) endif(WIN32) - file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR} srcdir) - file(TO_NATIVE_PATH "${GR_TEST_LIBRARY_DIRS}" libpath) #ok to use on dir list? + GR_CONVERT_QUOTED_STRING("${CMAKE_CURRENT_BINARY_DIR}" bindir) + GR_CONVERT_QUOTED_STRING("${CMAKE_CURRENT_SOURCE_DIR}" srcdir) + GR_CONVERT_QUOTED_STRING("${GR_TEST_LIBRARY_DIRS}" libpath) + #GR_CONVERT_QUOTED_STRING("${GR_TEST_PYTHON_DIRS}" pypath) + # Keep the original path conversion for pypath - the above commented line breaks CI tests file(TO_NATIVE_PATH "${GR_TEST_PYTHON_DIRS}" pypath) #ok to use on dir list? set(environs "VOLK_GENERIC=1" "GR_DONT_LOAD_PREFS=1" "srcdir=${srcdir}" @@ -79,7 +89,7 @@ function(GR_ADD_TEST test_name) set(LD_PATH_VAR "DYLD_LIBRARY_PATH") endif() - set(binpath "${CMAKE_CURRENT_BINARY_DIR}:$PATH") + set(binpath "${bindir}:$PATH") list(APPEND libpath "$${LD_PATH_VAR}") list(APPEND pypath "$PYTHONPATH") diff --git a/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.in b/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.in index cabbb34167..fb03bd7e13 100644 --- a/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.in +++ b/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.in @@ -654,8 +654,8 @@ WARN_LOGFILE = # directories like "/usr/src/myproject". Separate the files or directories # with spaces. -INPUT = @top_srcdir@ \ - @top_builddir@ +INPUT = "@top_srcdir@" \ + "@top_builddir@" # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is @@ -790,7 +790,7 @@ INPUT_FILTER = # info on how filters are used. If FILTER_PATTERNS is empty or if # non of the patterns match the file name, INPUT_FILTER is applied. -FILTER_PATTERNS = *.py=@top_srcdir@/doc/doxygen/other/doxypy.py +FILTER_PATTERNS = *.py="@top_srcdir@"/doc/doxygen/other/doxypy.py # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using # INPUT_FILTER) will be used to filter the input files when producing source diff --git a/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.swig_doc.in b/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.swig_doc.in index 33bc2afd07..cbe06d67ae 100644 --- a/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.swig_doc.in +++ b/gr-utils/python/modtool/templates/gr-newmod/docs/doxygen/Doxyfile.swig_doc.in @@ -54,7 +54,7 @@ PROJECT_LOGO = # If a relative path is entered, it will be relative to the location # where doxygen was started. If left blank the current directory will be used. -OUTPUT_DIRECTORY = @OUTPUT_DIRECTORY@ +OUTPUT_DIRECTORY = "@OUTPUT_DIRECTORY@" # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create # 4096 sub-directories (in 2 levels) under the output directory of each output |