On Tue, 16 Sep 2003, Rick Rankin wrote:I ran into a situation I hadn't seen before a few days ago when I used setup to update my Cygwin installation from 1.5.3 to 1.5.4. What happened was that there were several packages, in addition to cygwin-1.5.4, that had updates available. Setup downloaded the updates, then uninstalled the old packages, including cygwin-1.5.3. When it went to install the updates, cygwin-1.5.4 was *not* the first package that got installed, so any postinstallion scripts failed with a dialog box from the O/S saying that "Windows cannot find cygwin1.dll in <path list>" until after cygwin itself was updated. After setup installed the cygwin package, the rest of the postinstall scripts ran fine.
Is the cygwin package given any special consideration during the install process (e.g., last to be uninstalled, first to be (re)installed), or is this something that's expected to be handled by the dependency list? I've been perusing the setup sources, but I haven't quite figured out the dependency processing, yet. So far, I haven't found anything related via Google searches, either.
--Rick
The setup program simply performs a topological sort of the package dependence graph, and then traverses the packages in that order. Of course, since the graph is cyclic, topological order is not unique. In any case, the postinstall scripts should run after *all* the packages are unpacked, so you shouldn't be missing cygwin1.dll on postinstall.
However, preremove scripts are run just before the corresponding package is removed (in alphabetical order, IIRC). This presents a problem, but noone so far has considered it a large enough problem to invest the effort in a fix. It's likely that you saw this particular problem in your upgrade. <http://cygwin.com/acronyms/#PTC>. Igor
Wouldn't it make sence to call each preremove script before any packages are actually removed?
-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/