X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:subject:to:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=YjvDY677qgRBEQda sWcPlazo1f/EEGPsqTERp7xfrKxwWX/ydr6cu1LAMZvQh3JYtsXFb6L9xmMqcHNr 9cxLPeWyAK62Ya2PaSImquRuQq4C9ZrIvixYo2+WqkUom4IqXiTVg/0uFsoIKOqZ 9Yw1TToATr5fYAXRDiENTmjGiEA= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:subject:to:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=0qAw7cYlwYcogkZag/bo4I enC0A=; b=Pk0ZP5K++OqAKcw0QR7C/Vww6Z+QMIaHq+GITuqg4grlKfZpI3mKy7 ZuHuyhj3S0YByGjTvHmU1cdiDBw4SFbvDosKTVHgaX1flzwm7uQdavl7iDSvUzl+ nO32qcZ3vS/d3Dj3PYXaL6V6BXjQ/sv2eHHOTG/rAo+gA0hRiQ7LM= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: 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 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=H*MI:sk:65f6090, H*i:sk:65f6090, H*f:sk:65f6090 X-HELO: limerock04.mail.cornell.edu X-CornellRouted: This message has been Routed already. Subject: Re: Anecdotal: Rebase and Visual Studio 2015 and /etc To: cygwin AT cygwin DOT com References: <693uFCmXF1392S07 DOT 1467203045 AT web07 DOT cms DOT usa DOT net> <3334CBDB-BF42-4CDA-83B5-CCA5B251A746 AT etr-usa DOT com> <98C319EE-D0EF-48CD-85D7-3384DA5051A9 AT etr-usa DOT com> <44F329F2-C5FE-47D9-BCC5-BF7F9D85F68F AT etr-usa DOT com> <65f60907-79df-ce12-5a61-75caffc7e825 AT cornell DOT edu> From: Ken Brown Message-ID: Date: Tue, 5 Jul 2016 16:09:47 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 MIME-Version: 1.0 In-Reply-To: <65f60907-79df-ce12-5a61-75caffc7e825@cornell.edu> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-PMX-Cornell-Gauge: Gauge=X X-IsSubscribed: yes On 7/5/2016 9:59 AM, Ken Brown wrote: > On 7/3/2016 10:02 AM, Ken Brown wrote: >> This script has a couple of problems. First, it doesn't take dependency >> loops into account. For example, if package p requires q and q requires >> p, then both will be marked as non-root. Second, if the mirror was used >> for both an x86 and x86_64 installation, it always uses the x86 >> setup.ini, regardless of the current architecture. > > The second problem is easy to fix. I think you can fix the first > problem by using the dependency order computed by setup and recorded in > /var/log/setup.log.full: > > $ grep "Dependency order" /var/log/setup.log.full > Dependency order of packages: base-cygwin cygwin libdbus1_3 libiconv2 > libintl8 libffi6 libpcre1 liblzma5 libgcc1 libstdc++6 terminfo... > > You should only mark a package as a non-root if it is required by a > package that occurs later in the list. Sorry, this isn't quite right, at least if your goal is to produce a minimal set of roots. [It will, however, produce a set of roots that is not necessarily minimal.] To get a minimal set you would have to find the strongly-connected components of the dependency graph. [This is what is done internally by setup.exe in order to compute the dependency order.] Then when a package is marked as a non-root, all packages in the same component should also be marked as non-root. Ken -- 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