X-Git-Url: https://git.draconx.ca/gitweb/dxcommon.git/blobdiff_plain/e5cf340e0235a578efb05d004ec1a230d3ddb987..c01bc8e8ea99252f4249434e432896c8f2ae1199:/m4/cmdout.m4 diff --git a/m4/cmdout.m4 b/m4/cmdout.m4 index 90aa13e..c91aca1 100644 --- a/m4/cmdout.m4 +++ b/m4/cmdout.m4 @@ -22,12 +22,19 @@ AC_DEFUN_ONCE([_DX_COMMAND_OUTPUT_SETUP], [m4_divert_push([INIT_PREPARE])dnl dx_fn_cmdout_collect_output () { AS_UNSET([$][1]) # Double up backslashes as they will be stripped by read. - sed 's/\\/\\\\/g' conftest.do0 >conftest.do1 || return + # Heirloom sh read apparently just eats backslashes at EOL, so we compromise + # by adding a marker that can be stripped out afterwards. + _dx_eol='@%eol@%' + sed -e 's/\\/\\\\/g' -e 's/\\$/\\'"$_dx_eol/" conftest.do0 >conftest.do1 || + return exec 3