From mboxrd@z Thu Jan 1 00:00:00 1970 From: Myles English Subject: Re: Recursively propagate build-system 'arguments' to dependency packages? Date: Tue, 07 Feb 2017 19:07:30 +0000 Message-ID: <87r3394y6l.fsf@gmail.com> References: Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40182) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cbB77-0005tG-8a for help-guix@gnu.org; Tue, 07 Feb 2017 14:07:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cbB72-0006AZ-BN for help-guix@gnu.org; Tue, 07 Feb 2017 14:07:41 -0500 Received: from mail-wr0-x243.google.com ([2a00:1450:400c:c0c::243]:35246) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cbB72-00069r-4w for help-guix@gnu.org; Tue, 07 Feb 2017 14:07:36 -0500 Received: by mail-wr0-x243.google.com with SMTP id o16so6367782wra.2 for ; Tue, 07 Feb 2017 11:07:36 -0800 (PST) In-reply-to: List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Federico Beffa Cc: help-guix Hello Fede, Eric, on [2017-02-07] at 15:15 Federico Beffa writes: > Eric Bavier writes: > >> On Mon, 06 Feb 2017 21:09:33 +0000 >> Myles English wrote: >> >>> Trying to define a package to be compiled by ghc-8, and I think all of >>> its dependencies must also be compiled by ghc-8 rather than ghc (which >>> is version 7). This is easy to do with one package, e.g..: >>> >>> (define-module (my-packages myhaskell) >>> ... >>> #:use-module ((gnu packages haskell) #:prefix haskellmain:)) >>> >>> (define-public ghc-hunit8 >>> (package >>> (inherit haskellmain:ghc-hunit) >>> (arguments `(#:haskell ,ghc-8)))) >>> >>> To do that recursively for all the dependencies seems Too Difficult so, >>> is there a way to do something like --with-input=ghc=ghc-8 but with the >>> build-system arguments? Perhaps doing the work in between the Bag and >>> the Derivation? Thanks Eric for your suggestion. I made a start on this... >> You may take a look at the 'package-with-python2' procedure in >> guix/build-system/python.scm, which seems like it could be adapted to >> work with haskell/ghc packages. > > Hi Eric, Myles, > > it seems that the only Python specific part of > 'package-with-explicit-python' is the keyword '#:python'. What do you > think of generalizing it by making it a function keyword argument and > move the procedure to its own module (maybe (guix build-system > utils)?). ...I came the same conclusion as Fede: it could be generalised. It is probably close to working for me (with respect to ghc) so I will keep going for now. I am not competent enough to generalise it but if someone else does I can help test it. Myles