This is the mail archive of the
mailing list for the Cygwin project.
Re: New Setup for Cygwin 1.7 on cygwin.com
On Thu, Aug 28, 2008 at 09:37:10AM +0200, Corinna Vinschen wrote:
>On Aug 27 14:35, Christopher Faylor wrote:
>> On Wed, Aug 27, 2008 at 07:14:32PM +0200, Corinna Vinschen wrote:
>> >Anybody having another funny idea?
>> Your patch may be a good idea but I still think that base-cygwin (and
>> maybe base-passwd) should be a dependency of every package in the
>> distribution. I think that every package which currently relies on
>> cygwin should instead rely on base-cygwin and every package which does
>> not have a cygwin dependency (and there are a quite a few of those)
>> should be forced to rely on base-cygwin.
>> In my experiments, that forces base-cygwin first in the dependency order
>> without any setup.exe changes required.
>That really shouldn't be necessary. cygwin is the only package
>depending on base-cygwin and if every other package depends on cygwin,
>base-cygwin should go first, too.
But, as I said, every package does not rely on cygwin. Perhaps if every
package did rely on cygwin that would solve a problem but, in reality,
every package *does* rely on what base-cygwin does and doesn't actually
rely on cygwin1.dll.
>If it doesn't, it's still a problem of the dependency algorithm. If we
>can't make sure that the algorithm works as we need it to, it would be
>a lot of change with questionable outcome. You'd never know if a new
>package or a different package selection wouldn't screw up the order
I'm rather familiar with this argument since I've been making it
consistently in this mailing list whenever you want to remove a valid
dependency to tweak order.
Your approach relies on the fact what are "leaf nodes" today will always
be "leaf nodes" tomorrow so there is still the potential of questionable
outcome in the future. As I said, I'm all in favor of improving
setup.exe's algorithm but I think that the dependencies in setup.ini
should be accurate too. They aren't now, for cygwin 1.7.
I'm not talking about something that every package maintainer has to
remember here. I'm talking about adding logic to upset to ensure that a
package is always included as a dependency. I'll do that in the next
couple of days.
(And, no, I'm not going to special case "cygwin" or "base-cygwin")