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

Robert Goldman rpgoldman at sift.net
Mon Mar 21 20:10:18 UTC 2016


On 3/21/16 Mar 21 -3:01 PM, Jason Miller wrote:
> Mingw translates command-line arguments that look like a path into
> windows style pathnames if the DLL is present.

I'm wondering what happens if you have a Lisp running under Mingw.
Might the environment variables that the Lisp sees be populated with
pathnames that aren't good Windows PNs?


> On 12:43 Mon 21 Mar     , Robert Goldman wrote:
>> 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