unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Thiago Jung Bauermann via Guix-patches via <guix-patches@gnu.org>
To: fesoj000 <fesoj000@gmail.com>
Cc: 54599@debbugs.gnu.org
Subject: [bug#54599] [PATCH] gnu: libdaemon: fix build for riscv64
Date: Mon, 28 Mar 2022 22:25:20 -0300	[thread overview]
Message-ID: <87sfr14juy.fsf@kolabnow.com> (raw)
In-Reply-To: <b19763fb-6671-4410-77c8-aa6989a55805@gmail.com>


Hello,

Thanks for this patch! Just a few comments:

fesoj000 <fesoj000@gmail.com> writes:

> * gnu/packages/libdaemon.scm: (native-inputs): Add check for riscv64 to
> include config
> * gnu/packages/libdaemon.scm: (arguments): Add check for riscv64 to add
> update-config.sub build step

In the changelog, the name of the package goes in the parentheses, and
the package attribute being changed in square brackets. For example:

* gnu/packages/libdaemon.scm (libdaemon)[native-inputs]: Add check for
riscv64 to include config.

Also the sentences should have a period at the end.

> ---
>  gnu/packages/libdaemon.scm | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/libdaemon.scm b/gnu/packages/libdaemon.scm
> index 9dc851e823..e91b651e5a 100644
> --- a/gnu/packages/libdaemon.scm
> +++ b/gnu/packages/libdaemon.scm
> @@ -49,7 +49,8 @@ (define-public libdaemon
>               (file-name (string-append name "-" version ".tar.gz"))))
>      (build-system gnu-build-system)
>      (native-inputs
> -     (if (and=> (%current-target-system) target-aarch64?)
> +     (if (or (target-aarch64?)
> +             (target-riscv64?))
>           `(("config" ,config)) ; for config.sub
>           '()))
>      (arguments
> @@ -66,7 +67,8 @@ (define-public libdaemon
>                                         ;; Hurd's console client.
>                                         "--localstatedir=/var"))
>               '())
> -       ,@(if (and=> (%current-target-system) target-aarch64?)
> +       ,@(if (or (target-aarch64?)
> +                 (target-riscv64?))
>               `(#:phases
>                 (modify-phases %standard-phases
>                   (add-before 'configure 'update-config.sub

Before the patch, ‘native-inputs’ and ‘arguments’ were only changed when
cross-compiling on aarch64. After your patch, they are changed even for
native builds.

Functionally, it's not a problem but this changes the package's
derivation. Since the package has many dependents, it causes a lot of
other packages to be rebuilt:

popigai: guix refresh --list-dependent libdaemon 
Building the following 1496 packages would ensure 3175 dependent packages are rebuilt: …

Because of this, the patch can't be applied on the master branch. It
would have to go to core-updates.

So for the master branch, you need to keep the property of only making
changes to ‘native-inputs’ and ‘arguments’ when cross-compiling.

But I also suggest sending an additional patch for the core-updates
branch which unconditionally updates config.sub, regardless of the
architecture and regardless of whether it's a native compilation or a
cross one. This way, the next time Guix is ported to a new architecture
we won't need to update this package again.

-- 
Thanks
Thiago




      parent reply	other threads:[~2022-03-29  1:41 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-27 19:24 [bug#54599] [PATCH] gnu: libdaemon: fix build for riscv64 fesoj000
     [not found] ` <handler.54599.B.16484090674305.ack@debbugs.gnu.org>
2022-03-28 19:35   ` fesoj000
2022-03-29  1:25 ` Thiago Jung Bauermann via Guix-patches via [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87sfr14juy.fsf@kolabnow.com \
    --to=guix-patches@gnu.org \
    --cc=54599@debbugs.gnu.org \
    --cc=bauermann@kolabnow.com \
    --cc=fesoj000@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).