Windows will no longer be supported by ASDF, or ASDF, Windows, Cygwin -- oh, my!

Robert Goldman rpgoldman at sift.net
Mon Mar 21 17:43:33 UTC 2016


On 3/21/16 Mar 21 -10:47 AM, Stas Boukarev wrote:
> Robert Goldman <rpgoldman at sift.net> writes:
> 
>> On 3/21/16 Mar 21 -9:34 AM, Stas Boukarev wrote:
>>> I never liked the idea of cygwin, mingw (via msys2) seems to be
>>> working pretty well for me.
>>
>> Any chance you could grab a copy of the git repo and run the tests on
>> Windows?
>>
>> I'm relatively confident that everything works the same across lisp
>> implementations on Windows now.  The same tests fail for me everywhere.
>>
>> The tests failing, AFAICT, are mostly due to Cygwin environment bleeding
>> into the environment used by the Lisp (which interacts with Windows
>> through CMD.EXE).  My guess is that these will fail in pretty much the
>> same way under mingw, but I have never used mingw, so I can't really
>> say.  Does it have its own pathname syntax, the way cygwin does?  (You
>> can tell I don't use windows -- except for testing ASDF!).
> Two tests fail:
> test-run-program.script test-sysdef-asdf.script
> 
> test-sysdef-asdf fails because sb-ext:run-program doesn't yet support
> output redirection on windows.
> 
> test-run-program because it can't find "echo" which turns out to be a
> shell script with echo "$@", cmd.exe has trouble executing that.
> Found some bsd echo.c, compiled and stuffed it instead of the shell
> script, the test now passes.
> 
> So, ASDF works as much as it can be expected to work.
> 

I've got some additional failures: the tests that involve
re-initializing the ASDF search paths.  Somehow they grab up cygwin
paths (for me /cygdrive/f/....), which of course doesn't work.

I could fix those tests probably -- I use a special environment variable
to load ASDF on Windows under Cygwin -- but that would be just fixing
the test and leaving ASDF broken.  ASDF simply doesn't reliably work
under Cygwin because of the Cygwin paths.

How does mingw do this stuff?  Cygwin gives me /cygdrive/f/ instead of
f:/, and that's what shows up in pwd....

thanks,
r




More information about the asdf-devel mailing list