>> Does anyone know what the following might be about?
>>
>> % ./build/ctwm
>> /usr/bin/m4: syscmd subprocess: No child processes
>> /usr/bin/m4:/tmp/monnier/ctwmrc.XXgtqmy0:31: cannot run command `/bin/rm
>> /tmp/monnier/ctwmrc.XXgtqmy0': No child processes
>
> As a sterling example of the Obviously Right Way To Do Things(tm), we
> clean up the temporary file used for m4 processing by having as its
> last entry a syscmd() call (which makes m4 run a process), which calls
> /bin/rm on itself[0]. So, that's failing on your system for whatever
> reason, hence the complaints from m4. You probably have multiple
> /tmp/moonier/ctwmrc.abcdefg temp files left lying around.
>
> It's a pretty outrageous thing to do. Still, I'm a little surprised
> it's failing for you often enough to notice.
It's not just "often enough", it's "every time".
> I wonder why that is.
That's my question. When I try to run `m4` manually with
/usr/bin/m4 -s ~/tmp/foo.m4 -
and a dummy foo.m4 file which has pretty much the same content as the
file generated by ctwm, m4 runs it just fine (including the
`syscmd(rm...)`). So it seems that there's something about the way ctwm
runs `m4` that triggers the problem.
Stefan