Hi! This patch together with [1] and [2] will make "Run tests with low max_cmd_len" on MSYS/MSVC behave the same as the individual tests.
The patch fixes a couple more of the /abs/path issues already fixed in [1] and [2]. However, I fear that these hunks may be more controversial, as they touch code that affects other platforms as well. Cheers, Peter [1] http://lists.gnu.org/archive/html/libtool-patches/2009-01/msg00090.html [2] http://lists.gnu.org/archive/html/libtool-patches/2009-01/msg00092.html 2009-01-21 Peter Rosin <p...@lysator.liu.se> Convert paths to host format * libltdl/config/ltmain.m4sh (func_mode_link): When exporting symbols, linking and creating archives using command files (or response files), make sure that both the name of the command file and the content are made up of file names in a format appropriate for the host. Fixes stresstest.at on MSYS/MSVC when run with low command line length.
diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh index 36dd3fb..7047339 100644 --- a/libltdl/config/ltmain.m4sh +++ b/libltdl/config/ltmain.m4sh @@ -6833,11 +6833,13 @@ EOF save_libobjs=$libobjs save_output=$output output=${output_objdir}/${output_la}.nm - libobjs=$nm_file_list_spec$output + func_to_host_path "$output" + libobjs=$nm_file_list_spec$func_to_host_path_result delfiles="$delfiles $output" func_verbose "creating $NM input file list: $output" for obj in $save_libobjs; do - $ECHO "$obj" + func_to_host_path "$obj" + $ECHO "$func_to_host_path_result" done > "$output" eval cmd=\"$cmd1\" func_show_eval "$cmd" 'exit $?' @@ -6999,10 +7001,12 @@ EOF fi for obj do - $ECHO "$obj" >> $output + func_to_host_path "$obj" + $ECHO "$func_to_host_path_result" >> $output done delfiles="$delfiles $output" - output=$firstobj\"$file_list_spec$output\" + func_to_host_path "$output" + output=$firstobj\"$file_list_spec$func_to_host_path_result\" else if test -n "$save_libobjs"; then func_verbose "creating reloadable object files..." @@ -7839,10 +7843,12 @@ EOF elif test -n "$archiver_list_spec"; then func_verbose "using command file archive linking..." for obj in $oldobjs; do - $ECHO \""$obj"\" + func_to_host_path "$obj" + $ECHO "\"$func_to_host_path_result\"" done > $output_objdir/$libname.libcmd save_oldobjs="$oldobjs" - oldobjs=" $archiver_list_spec$output_objdir/$libname.libcmd" + func_to_host_path "$output_objdir/$libname.libcmd" + oldobjs=" $archiver_list_spec$func_to_host_path_result" eval cmds=\"\$old_archive_cmds\" oldobjs="$save_oldobjs" else