Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com From: "Dave Korn" To: Subject: RE: Is setup.exe _supposed_ to delete the cygwin dll before attempting to run shell scripts? Date: Mon, 27 Sep 2004 18:29:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit In-Reply-To: <4154A0D5.C117AA80@dessent.net> Message-ID: X-OriginalArrivalTime: 27 Sep 2004 17:29:44.0501 (UTC) FILETIME=[942AA650:01C4A4B7] > -----Original Message----- > From: cygwin-owner On Behalf Of Brian Dessent > Sent: 24 September 2004 23:34 > Igor Pechtchanski wrote: > > > > You first get the depth-first order: D, C, B, A. > > > > > > Properly speaking, the depth-first order will be B, D, C, A... > > > > D'oh' > > > Unfortunately, this won't work when you have circular > dependencies (e.g., > > cygwin <-> fileutils). > > Oh, did I forget to say the graph must be a DAG before starting? :) > Anyway, there are heuristics that could be used to find the best > "feedback set" of edges for which removal would result in an acyclic > graph. e.g. the one described at > > Deleting edges from a graph won't actually make a package that depends on another operate successfully without that other package present! OTOH what I think might work would be to identify loops in the full dependency graph and treat them as single packages that must be installed or uninstalled together - effectively encapsulating the loop inside a single node and thereby reducing the graph to a DAG. cheers, DaveK -- Can't think of a witty .sigline today.... -- 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/