From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 8DDC51396D0 for ; Fri, 29 Sep 2017 08:36:31 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E4B1DE0C11; Fri, 29 Sep 2017 08:36:25 +0000 (UTC) Received: from smx-7fb.smtp.startmail.com (smx-7fb.smtp.startmail.com [37.153.204.247]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8BC61E0BE0 for ; Fri, 29 Sep 2017 08:36:25 +0000 (UTC) Received: from smx-6f5.int1.startmail.com (smx-6f5.int1.startmail.com [10.116.2.63]) by smx-7fb.smtp.startmail.com (Postfix) with ESMTPS id 6058BB7AD7; Fri, 29 Sep 2017 10:36:24 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=startmail.com; s=dkim; t=1506674184; bh=UoxcO4jQ187IdXPV3svGR2IJZtH7eYRBh7MOe+Vjw3U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=abnpIkgQidWwQx0GrcXDlxzh2bZowqGrXT8hsKXptyqBj2RMCiheB29CrDIjvW9xo rFEM1Ga3PfZNHWuKoxxcDEQZtFM0F6MwgbmN5T8fk8YnLb1/+yYHWSzrVdO37tiAwH 2bm+N4fU26flfRzct0FsVhkGS8Ioziwd7V0P9CNzEI2Vi69bSwgD4SRztm3uG3YIFU Ot2SNSehAF0gk4EuGzcFh0ExWL+q/UOgxE1xIQBOBmTdmoUqy7NbjMrgTBmxjQMu6T QDfmYkTBs713KC1fk6syKBh2/GOf8K4HY3gYYl/dYcVy+NhMrJcHBaFwcKiyojr3a4 Ji/gzW1TLvq0A== Date: Fri, 29 Sep 2017 03:33:53 -0500 From: "Marty E. Plummer" To: Michael Haubenwallner Cc: gentoo-dev@lists.gentoo.org Subject: [gentoo-dev] Re: sys-libs/ncurses: erronious deletion of *.dll.a files; possibly other packages affected Message-ID: <20170929083346.hmhvulf5oul4daet@proprietary-killer.fossland> References:<20170921020139.kp4664tanr7cj77d@proprietary-killer.fossland> <20170929013637.gz7ntmg4fb62mzel@proprietary-killer.fossland> <9ffbcbe2-fc70-aff9-4a9f-1bcaead3f035@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To:<9ffbcbe2-fc70-aff9-4a9f-1bcaead3f035@gentoo.org> X-Archives-Salt: 6005b2b4-cfe2-471b-bac2-c5a1228885bf X-Archives-Hash: e26ca23bb8cd0335b4c8d1fba1d2ea25 On Fri, Sep 29, 2017 at 08:29:07AM +0000, Michael Haubenwallner wrote: > On 09/29/2017 03:36 AM, Marty E. Plummer wrote: > > On Thu, Sep 28, 2017 at 07:35:20PM +0000, Mike Gilbert wrote: > >> On Wed, Sep 20, 2017 at 10:01 PM, Marty E. Plummer > >> wrote: > >>> arfrever suggests I send a mail here, as there are other packages which > >>> may be affected by this issue and perhaps a more generalized fix is > >>> required instead of an explicit fix in sys-libs/ncurses and other ebuilds > >>> that may require it. > >> > >> I think the solution here is to remove those overly broad "find > >> -delete" statements and replace them with something safer. > >> > >> Ideally the build system(s) would be patched to not compile static > >> libs in the first place. > >> > >> If that's not possible, perhaps an eclass function could be created to > >> safely remove static libs. > >> > > Honestly I already have a pr up that fixes this particular package's > > issue, fairly simple fix https://github.com/gentoo/gentoo/pull/5734 > > > > --- a/sys-libs/ncurses/ncurses-6.0-r1.ebuild > > +++ b/sys-libs/ncurses/ncurses-6.0-r1.ebuild > > @@ -241,7 +241,8 @@ multilib_src_install() { > > # Provide a link for -lcurses. > > ln -sf libncurses$(get_libname) "${ED}"/usr/$(get_libdir)/libcurses$(get_libname) || die > > fi > > - use static-libs || find "${ED}"/usr/ -name '*.a' -delete > > + # don't delete '*.dll.a', needed for linking #631468 > > + use static-libs || find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete > > In prefix overlay we have this version: > > use static-libs || find "${ED}"/usr/ -name '*.a' -not -name "*$(get_libname)" -delete > > /haubi/ Won't work here, as $(get_libname) returns .dll in this case, which is why the symlinking is busted