<div dir="ltr"><div>There is some generic filename escaping logic in scons which should likely be used there.</div><div><br></div><div>env['ESCAPE'] should have the current platform's escaping function.</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Fri, Jun 6, 2025 at 9:55 AM Mats Wichmann <<a href="mailto:mats@wichmann.us">mats@wichmann.us</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 6/6/25 10:42, Julien Pommier wrote:<br>
> <br>
> <br>
>> There's another layer of "quoting problem" here, beyond the URL-quoting that I'm trying to understand.<br>
>><br>
>> As written, the rule in build.ninja looks like:<br>
>><br>
>> build run$ me.sh: TEMPLATE | .ninja/scons_daemon_dirty<br>
>><br>
>> I'm assuming the '$' is some kind of space-escape syntax for ninja. This fails with<br>
>><br>
>> scons: *** Do not know how to make File target `run'<br>
>><br>
>> so we ended up seeing the target back in SCons as being just "run". Adding a layer of quotes doesn't work, as those are carefully preserved and the target names don't match.<br>
>><br>
>> Not familiar with this code beyond the fiddling I did in Utils.py, hopefully someone else has some ideas, else we'll have to dig into it.<br>
> <br>
> It seems the quoting need to be applied to the line 234 in ninja_scons_daemon.py. Using:<br>
> <br>
>                      input_command = "build \"" + building_node + "\"\n"<br>
> <br>
> instead of<br>
>                     input_command = "build " + building_node + "\n"<br>
> <br>
> makes it work for my test-case<br>
<br>
yeah, that looks good.<br>
<br>
<br>
_______________________________________________<br>
Scons-users mailing list<br>
<a href="mailto:Scons-users@scons.org" target="_blank">Scons-users@scons.org</a><br>
<a href="https://pairlist4.pair.net/mailman/listinfo/scons-users" rel="noreferrer" target="_blank">https://pairlist4.pair.net/mailman/listinfo/scons-users</a><br>
</blockquote></div>