On 28 August 2007 18:52, Brian Dessent wrote: > Dave Korn wrote: > >>> So the rule is that only top level libs (here libintl8) need >>> to be mentioned in setup.hint::require? >> >> Absolutely so. And you can omit cygwin itself! > > Actually no, there are cases where that will give you incorrect or > misleading information.
(But not the "you can omit cygwin itself" bit!) > However, there should also be a "libb" at the first level of indention > because app directly imports from libb as well -- but this line was > suppressed by cygcheck because it had already printed information for > libb. Thus if you only go by what is at the first level of indentation, > then you would conclude that app's setup.hint should list only liba, > however app has a direct dependance on libb which you have failed to > indicate. > > The practical implication of this may not be severe, because app's > requiring of liba will also give it the libb that it needs. However, I > wouldn't play games with setup.hint dependencies like that. Oh, yow. Fair enough. Didn't realise the output could be misleading like that, I thought it was comprehensive and verbatim. JFTR, the commandline I posted was in no way supposed to be a recipe for generating setup.hint lines, but merely a first-approximation answer to the question "How many transitive dependencies are there in cygwin?" > I don't > think it's asking too much for the maintainer to know the direct list of > dependencies of his package, which can usually be had simply by looking > at the link command that created the binary. Well, nor do I, in general, but OTOH I don't see why we shouldn't provide tools to do automatically what would otherwise have to be done manually. That is kind of the point of computers, is it not? So here's a proposal: make cygcheck *not* suppress duplicate libraries when -v is given. (Or perhaps only when more than one -v is given, if you'd prefer). Or hey, even add a new flag/option/switch to it that is specifically for the purpose and that will actually output your requires: line for you, ready to cat straight into setup.hint? cheers, DaveK -- Can't think of a witty .sigline today....