Subject: bug#7785: rgrep is broken on woe32

From: Eli Zaretskii <[email-masked]>
Date: Thu, 06 Jan 2011 20:45:32 +0200

> Date: Thu, 6 Jan 2011 12:09:12 -0500
> From: Sam Steingold <[email-masked]>
> Cc: [email-masked], [email-masked]
> 
> >> find . "(" -path "*/SCCS" -o -path "*/RCS"...-o -name "*.pyo" ")"
> >> -prune -o  -type f "(" -iname "*" -o -iname ".*" ")" -print0 | xargs
> >> -0 -e grep -i -nH "asdf"
> >> xargs: grep: No such file or directory
> >> ./src/clisp/current/src/ChangeLog:29: * modules/asdf/asdf.lisp: update
> >> to upstream "2.011"
> >> ./src/clisp/current/src/ChangeLog:512:        bundle ASDF2 as a module
> >> ./src/clisp/current/src/ChangeLog:513:        * Makefile.devel (update-asdf):
> >> new .PHONY target
> >> ./src/clisp/current/src/ChangeLog:515:        * modules/asdf: add (based on asdf 2.008)
> >> ./src/clisp/current/src/ChangeLog:516:        * makemake.in, unix/INSTALL:
> >> mention asdf in the docs
> >> ./src/clisp/current/src/ChangeLog:590:        (require): use the above, now
> >> one can hook asdf into clisp
> >> grep: ./src/clisp/c: No such file or directory
> >> find: write error: Invalid argument
> >
> > Does this command work from the Windows shell, if you tweak PATH to
> > have the gnuwin32 directory be at the beginning?
> 
> yes, the same way.
> I started cmd; prepended gnuwin to path, started emacs -Q from the
> cmd; got the above in rgrep, then copied the command into the cmd and
> got the exact same output there,
> EXCEPT that neither emacs nor cmd contain the
> "grep: ./src/clisp/c: No such file or directory"

So at least this error is somehow related to the fact that you invoke
Emacs from the Cygwin bash.  Can you see what are the differences in
process-environment between the invocations from bash and from cmd?

> error (the other two:
> "xargs: grep: No such file or directory"
> and
> "find: write error: Invalid argument"
> are present both in emacs and cmd).

So this is no longer just an Emacs problem, it seems.

What happens if you repeat this experiment, but this time give an
explicit absolute file name for each program, find, xargs, and grep?
(I'd like to be sure we know what binaries are involved.)  To avoid
hassles with quoting, please use backslashes in the file names.