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=lB5Efl7PnBe/Atz+ lpRFzSbWENByQ/2vBej5dfDIimDxamZw7AMZyOefoqtGU8gLBlcuY8xfiqWG1aF2 d1kMjvOu1ZrSgsX8NguWmFmDkrbJBKQ50TkYTqfWfdOR0INe3mXJsVY6Sxu3mXGh vs6uii4UJKhTFBrO2TSwBGtG/FU= 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=Ck5xzMkxf6HctNOY4ebFCc FQtYs=; b=VLRdt8tXjLXgttS4FUFXZLK5UOzSQkRYXX3uLUgyArMAJ2eCI7dT4x mwafJnqjO7WMAxEMbJl79zt+KZEwMIljPYK0yLU4QiMHdga1IrXZquTwPGqdmcxo im8Y2HxsNHt/bCjh4NPatX9HnKLICtAAVP193AmBrMvQEacjLKLH0= 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.2 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:2218, among X-HELO: limerock04.mail.cornell.edu X-CornellRouted: This message has been Routed already. Subject: Re: Making a package obsolete To: Jon Turney , The Cygwin Mailing List References: <0996331f-befd-6f4f-2979-a906d8895063 AT cornell DOT edu> <46439427-ebcd-8b95-5be5-e9eff4daac6f AT cornell DOT edu> <20762138-fb8e-3842-6b06-928f264b4549 AT dronecode DOT org DOT uk> From: Ken Brown Message-ID: Date: Mon, 15 May 2017 12:15:18 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <20762138-fb8e-3842-6b06-928f264b4549@dronecode.org.uk> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-PMX-Cornell-Gauge: Gauge=XXXXX X-PMX-CORNELL-AUTH-RESULTS: dkim-out=none; X-IsSubscribed: yes On 5/15/2017 11:56 AM, Jon Turney wrote: > On 15/05/2017 15:30, Ken Brown wrote: >> On 5/14/2017 1:38 PM, Jon Turney wrote: >>> On 13/05/2017 20:44, Ken Brown wrote: >>>> On 5/13/2017 7:12 AM, Jon Turney wrote: >>>>> On 12/05/2017 22:02, Ken Brown wrote: >>>>>> I have a package that is going to become obsolete, but its contents >>>>>> will >>>>>> be distributed among several other packages. So I can't handle >>>>>> this by >>>>>> defining OBSOLETES in any one .cygport file. Is there a standard >>>>>> way to >>>>>> deal with this using cygport, or should I just create the necessary >>>>>> tarballs and .hint file manually? >>>>> >>>>> I think the best way to do that is to bump your package revision, >>>>> change >>>>> it's category to _obsolete, make it's contents empty, and make it >>>>> depend >>>>> on the packages which are replacing it. >>>> >>>> Yes, that was my first thought. But there's no longer a source file >>>> for >>>> the obsolete package[1], and cygport complains that SRC_URI must be >>>> defined. Maybe cygport should be patched to allow an empty SRC_URI >>>> when >>>> the category is _obsolete. Or do you see another way around this? >>> >>> I would think you can use the same SRC_URI as previously, but set >>> PKG_CONTENTS="" and PKG_IGNORE="*" ? >> >> You're right, I can do something like that. I was being overly pedantic >> in wanting SRC_URI to be "accurate". Sorry for the noise. > > You can always make an empty tarball called > texlive-collection-htmlxml-20170515.tar.xz or whatever, and use that for > SRC_URI. Good idea, thanks. But it turns out that there's another problem: cygport won't actually create an empty binary tarball in this situation. The relevant code is in pkg_pkg.cygpart around lines 149--163, especially this part: elif (( pkg_count == 1 )) then pkg_contents="*" else pkg_contents= We get here if PKG_CONTENTS is unset or empty. (There's actually no test to see if it's set but empty.) In the situation under discussion, this results in pkg_contents="*" followed by a tar error. Yaakov, shouldn't the user be allowed to explicitly set PKG_CONTENTS empty and have cygport honor that, at least for obsolete packages? 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