Oddity with cygport, debuginfo generation, and rxvt-unicode

Yaakov (Cygwin/X) yselkowitz@users.sourceforge.net
Wed Aug 22 00:13:00 GMT 2012

On 2012-08-21 12:20, Charles Wilson wrote:
> While rebuilding rxvt-unicode, I saw the following error during 'cygport
> install':
> Preparing debuginfo source files:
> realpath: unknown option -- p
> Try `realpath --help' for more information.
> 	80 files
> Preparing executables for UAC:
> A little debugging showed that realpath is being invoked during
> src_postinstall here:
> line 978:do
>                   # make sure that paths with '../' don't leave srcdir
>                   case $(realpath -m ${dbgsrc}) in
>                           ${dbgsrcdir}/*) ;;
>                           *)  continue ;;
>                   esac
>                   srcf=${dbgsrc#${dbgsrcdir}/}

FWIW, readlink is now used in git instead of realpath, as the latter is 
not available in Fedora 16 or EL6, but the result should be the same.

> I see that this line is hit many times, but here is the relevant sequence:
> ...
> realpath -m <iom_perl.xs
> realpath -m -pe
> realpath: unknown option -- p
> Try `realpath --help' for more information.
> realpath -m s/IOM_MODULE/urxvt/g,s/IOM_CLASS/urxvt/g
> realpath -m |
> realpath -m /usr/src/debug/rxvt-unicode-X-9.07-2/src/../libev/ev++.h
> ...
> Although only the second of these lines triggers the error message, each
> of the first four is problematic.
> This looks like a bug in gcc/binutils to me; debug src paths shouldn't
> include pipe line shell commands, should they?

Not AFAIK.  That is very odd, but I am able to duplicate it with your 
current package.

> In the meantime, I think a fix like this for cygport would be appropriate:

Could you confirm that just this change fixes this:

-          case $(realpath -m ${dbgsrc}) in
+          case $(readlink -m -- "${dbgsrc}") in

> ...although I'm not sure if this might cause a problem if a filename
> actually contains a shell redirection metacharacter (and the originating
> project is always careful to appropriate quote that filename).

And when was the last time you saw that?


Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

More information about the Cygwin mailing list