[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ‘snippet’ in <origin>
From: |
Mark H Weaver |
Subject: |
Re: ‘snippet’ in <origin> |
Date: |
Fri, 08 Nov 2013 10:13:39 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
address@hidden (Ludovic Courtès) writes:
> Mark H Weaver <address@hidden> skribis:
>
>> More generally, I'm not fond of this inflexible hardcoded approach. I'd
>> prefer to have a set of phases (e.g. unpack, patch, delete, repack) that
>> can be selectively overridden if needed, but with some specialized
>> constructors that make things simple in the common cases.
>>
>> What do you think?
>
> The rationale for me is that <origin> should remain simple, while the
> package’s build system would handle anything non-trivial. For that
> reason, and also because I knew it would avoid a full rebuild, I avoided
> full-blown phases.
>
> Now, I think we could replace ‘snippet’ by ‘phases’. That field would
> contain an <origin-phases> object with exactly 4 fields: unpack, patch,
> user (default to #f), and repack.
>
> In the LAPACK case, we’d do:
>
> (origin
> (uri ...)
> (sha256 ...)
> (phases (origin-phases (inherit %standard-origin-phases)
> (user '(for-each delete-file ...)))))
>
> I think that would address your problem. The set of phases would be
> fixed, though, unlike what ‘gnu-build-system’ does, but I think that’s
> fine.
>
> How does that sound?
Sounds good to me!
> If that’s workable without triggering a full rebuild, I can look at it
> by 0.5. Otherwise that’ll have to wait.
Indeed, let's not trigger a full rebuild :)
Thanks,
Mark