3.2rc on MKCL (Was: ASDF 22.214.171.124 is 3.2 release candidate)
fahree at gmail.com
Mon Dec 19 12:23:03 UTC 2016
Oh. Is it the case that you don't even try to properly escape commands
as with uiop:escape-windows-command or GetCommandLineW?
Grepping your source code, it looks like it has a lot of bogus
escaping, on Unix as well as on Windows :-(
mkcl needs an interface that works, and then asdf can use it.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
My knowledge is finite. My ignorance is infinite. — Faré
On Mon, Dec 19, 2016 at 7:08 AM, Jean-Claude Beaudoin
<jean.claude.beaudoin at gmail.com> wrote:
> On Mon, Dec 19, 2016 at 3:36 AM, Faré <fahree at gmail.com> wrote:
>> On Mon, Dec 19, 2016 at 2:32 AM, Jean-Claude Beaudoin
>> <jean.claude.beaudoin at gmail.com> wrote:
>> > 2) test-run-program.script
>> > .../uiop/launch-program.lisp is incomplete for MKCL on windows and needs
>> > to
>> > be patched
>> > as per attached file to be in any way functional in that context.
>> > Once patched accordingly and applied to very latest MKCL repo master
>> > head
>> > this test now passes.
>> + #+(or mkcl) (list "cmd" (strcat "/c " command))
>> The list seems very wrong, unless MKCL doesn't quote its arguments to
>> the win32 spawn function, which is probably wrong in its own right.
> You lost me entirely here. It does look like something that works pretty
> well for being so wrong...
> No "spawn" function involved here, just a very native and basic Win32
> CreateProcessW() call.
>> Can you confirm how to execute
>> a raw CMD command line with MKCL?
> Are you looking for something like
> (mkcl:run-program "cmd" '("/c echo ok 1") :output t)
> (mkcl:run-program "cmd" '("/c" "echo" "ok" "1") :output t)
> both produce the same output (sent to stdout here by the ":output t" pair,
> adjust to your need).
> Any slicing or concatenation of the arguments produce the same result.
More information about the asdf-devel