g-b-s patch - dependency calculation

Eric Blake ericblake@comcast.net
Tue Sep 27 15:25:00 GMT 2005


> You also included a few whitespace changes in your patch -- while I don't
> mind cleanups, it would've been nice to explicitly mention them.  Also,
> your RE to detect dependencies ('/^  [[:alpha:]]/') seems wrong -- IMO,
> it'll miss DLLs that start with digits or underscores.  I've changed it
> accordingly (to '/^  [A-Za-z0-9_]/') and checked in the patch with that
> change.

Neither version is correct.  Cygcheck output is the absolute windows
pathname, indented by spaces according to the depth of the
dependency.  My regex was looking for exactly two spaces, followed
by a drive letter (the exact two spaces was the important part, as
that is what determines the direct dependencies).  Your regex also
looks for 1:\ and _:\, but since drive 1 and drive _ don't exist, it was
a pointless change!  What we did wrong, however, was forgetting
about UNC pathnames on the PATH.  So the corrected regex should
be either:

'/^  [A-Za-z\\]/'
or:
'/^  [\\[:alpha:]]/'
or:
'/^  [^ ]/'

By the way, now that I have an upload account, am I allowed to
make CVS checkins for g-b-s?  I don't have employer copyright
disclaimer, so I know that I can't touch the winsup tree, but I
was under the impression that the cygwin-apps tree (including
g-b-s) have looser checkin rules.

--
Eric Blake




More information about the Cygwin-apps mailing list