Setup 2.774 texlive postinstall takes 10+ hours

Yaakov Selkowitz yselkowitz@cygwin.com
Tue Nov 11 04:23:00 GMT 2014


On 2014-11-04 02:59, Corinna Vinschen wrote:
> On Nov  3 19:03, Achim Gratz wrote:
>> Dependencies are not evaluated at all when installing or running
>> scripts.
>
> That's not correct.  From the dependencies, setup generates a dependency
> graph which is used to get a sequential order in which to call
> the scripts.  See /var/log/setup.log.full, it contains the dependency
> order before starting the scripts.
>
> Years ago we had some trouble to get the base-cygwin script running
> first due to a couple of dependency loops.  And we have such loops
> again, apparently.  My dependency list on 64 bit (not all packages
> installed) now starts like this:
>
>    libbz2_1 _autorebase cygwin zlib0 libpng15 ...
>
> The worst thing AFAICS is that base-cygwin only comes after lots and
> lots of other packages for some reason.
>
> This needs some investigation.

There are two issues here:

1) upset was adding a requires: _autorebase to cygwin, which is 
incorrect because it requires dash and rebase, each of which (should) 
require cygwin (resulting in a dependency loop), not to mention that 
cygwin1.dll is never rebased.

2) Several libraries were missing requires: cygwin _autorebase, causing 
them to precede cygwin (and hence base-cygwin) in the dependency chain. 
  I still have yet to understand why for some packages the autodep works 
and for others not.  But by adding those requires to a downloaded 
setup.ini, resulting in the following:

Dependency order of packages: libgcc1 base-cygwin cygwin dash tzcode 
libstdc++6 terminfo sed gzip libpcre1 grep libreadline7 bash 
libncursesw10 info _update-info-dir libgmp10 libiconv2 libintl8 libattr1 
coreutils rebase _autorebase ...

What libgcc1 is doing there first, I still don't know (it does have a 
requires: _autorebase cygwin).

The other thing I realized is that Ports packages are missing these 
autodeps; only by chance (and that many of them depend on other distro 
libraries) do they not seem to interfere with the dependency order.

The question is, can we just make the incver_ifdep code not dependent on 
autodep, then just have cygport add these dependencies to setup.hint and 
drop the apparently fragile autodep code from upset?


Yaakov


--
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