From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: RFC: Build system hacks for Guix do not belong in 'source' Date: Fri, 06 Mar 2015 00:10:39 +0100 Message-ID: <87lhjb82hc.fsf@mango.localdomain> References: <1424552053-17323-1-git-send-email-rekado@elephly.net> <1424552053-17323-2-git-send-email-rekado@elephly.net> <878ufr6kf0.fsf@mango.localdomain> <87h9udbraa.fsf@mango.localdomain> <871tlexf9r.fsf@gnu.org> <87twy9abtb.fsf@mango.localdomain> <87lhjk61nb.fsf@gnu.org> <87h9u4akv7.fsf@mango.localdomain> <87h9u40vus.fsf@netris.org> <87zj7t8cj8.fsf@mango.localdomain> <87y4nd8cao.fsf@mango.localdomain> <87wq2x81dr.fsf@mango.localdomain> <87oao7guh3.fsf_-_@netris.org> <87d24ndrr8.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49712) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YTeuv-0002AO-Ry for guix-devel@gnu.org; Thu, 05 Mar 2015 18:10:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YTeuu-0000ki-RK for guix-devel@gnu.org; Thu, 05 Mar 2015 18:10:57 -0500 In-reply-to: <87d24ndrr8.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org Ludovic Courtès writes: > Mark H Weaver skribis: > >> I don't think we should be making these kinds of changes in 'snippets'. >> >> When I ask for the source code via "guix build -S ", I expect >> freedom fixes and other bug fixes, and maybe even enhancements needed >> for Guix that would also work fine on other systems (e.g. adding an >> environment variable). >> >> However, the package 'source' should not include build system hacks that >> are specific to Guix and would interfere with the package functionality >> on other platforms, IMO. >> >> I think that both the 'ldconfig -> true' hack and the LIBDIR >> substitution should be moved to a build phase for both of these >> packages. >> >> Other opinions? > > I think one of the goals of ‘guix build -S’ is that you can take the > source and build it *on GuixSD* with hopefully few additional > modifications. > > From that perspective, the “hacks” are really fixes or workarounds > (/sbin/ldconfig doesn’t exist on GuixSD.) > > Now, granted, there are inelegant workarounds that we’d rather hide; > these two may well fall into this category, so I’m fine with moving them > to a build phase. Ricardo? I was operating from the perspective that anything relying on "dynamic" build information (like paths to inputs) must necessarily be implemented in build phases, but that anything of a more static nature (e.g. removing build time stamping, fixing Makefile problems, removing bundled software) should be implemented with snippets. I don't like the ldconfig hack myself (and I would be happy if we had a replacement that would do the right thing in these cases without requiring patching), so I'm okay with moving this into a build phase. Expect updated patches. It would be helpful to know where to draw the line, though, or if there's a line at all. ~~ Ricardo