Stas Boukarev stassats@gmail.com writes:
Robert Goldman rpgoldman@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.
Actually, the sysdef-asdf test not only succumbs to missing output redirection it also does 0: (SB-EXT:RUN-PROGRAM "C:\Windows\System32\cmd.exe" ("/c" ""C:\Windows\System32\cmd.exe" /c make.bat driver _files") :INPUT T :OUTPUT T :WAIT T :ALLOW-OTHER-KEYS T :ERROR T :IF-INPUT-DOES-NOT-EXIST :ERROR :IF-OUTPUT-EXISTS :OVERWRITE :IF-ERROR-EXISTS :OVERWRITE :SEARCH T :IF-OUTPUT-DOES-NOT-EXIST :CREATE :IF-ERROR-DOES-NOT-EXIST :CREATE :WAIT T :INPUT :INTERACTIVE :OUTPUT :INTERACTIVE :ERROR-OUTPUT :INTERACTIVE :INPUT :INTERACTIVE :ERROR-OUTPUT :INTERACTIVE :IF-INPUT-DOES-NOT-EXIST :ERROR :IF-OUTPUT-EXISTS :OVERWRITE :IF-ERROR-OUTPUT-EXISTS :OVERWRITE :ELEMENT-TYPE :DEFAULT :EXTERNAL-FORMAT :UTF-8 :FORCE-SHELL T :DIRECTORY #P"c:/Users/stas/asdf/" :OUTPUT :INTERACTIVE)
Which results in '"C:\Windows\System32\cmd.exe"' is not recognized as an internal or external c ommand, operable program or batch file.
the current asdf in SBCL doesn't do that.