Subject: Re: bug#10949: bug in ltmain.m4sh (cygwin/mingw environment)

From: Peter Rosin <[email-masked]>
Date: Mon, 05 Mar 2012 20:51:57 +0100

tags 10949 + notabug
close 10949

Hi Glenn!

Thanks for your report.

Glenn Ganz skrev 2012-03-05 17:51:
> Hi
>  
> In the function func_convert_core_msys_to_w32 the command cmd will be invoked wrong.
>  
>  
> There should be only 1 slash in the argument.
>  
> The line 
>   func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
>  
> should be 
>   func_convert_core_msys_to_w32_result=`( cmd /c echo "$1" ) 2>/dev/null |
>  
>  
> ð  with two slashes the linking will hang (on windows xp)
>  
> Regards 
> Glenn

The double slash is intentional.  In MSYS, you need the double slash in
order to differentiate from an absolute POSIX path.  My guess is that
you are trying to use a native MinGW tool chain from a Cygwin environment,
in which case func_convert_core_msys_to_w32_result is not what you want.

Please study the Cygwin to MinGW Cross chapter in the manual.  If I'm
right, you are in the case that needs

     export lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
     export lt_cv_to_tool_file_cmd=func_convert_file_cygwin_to_w32

But, this is a mine field if you don't know what you are doing so please
read through the entire section in the manual to check if there is
any option that makes more sense than the "fake cross compiler case".

Please reopen the bug if I have misunderstood things.

Cheers,
Peter