GNU bug report logs -
#54599
[PATCH] gnu: libdaemon: fix build for riscv64
Previous Next
To reply to this bug, email your comments to 54599 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#54599
; Package
guix-patches
.
(Sun, 27 Mar 2022 19:25:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
fesoj000 <fesoj000 <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Sun, 27 Mar 2022 19:25:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
* 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
---
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
--
2.34.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#54599
; Package
guix-patches
.
(Mon, 28 Mar 2022 19:36:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 54599 <at> debbugs.gnu.org (full text, mbox):
Actually, this fixex cross compiling using --target=riscv64-linux-gnu,
on real hardware it works without the patch.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#54599
; Package
guix-patches
.
(Tue, 29 Mar 2022 01:41:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 54599 <at> debbugs.gnu.org (full text, mbox):
Hello,
Thanks for this patch! Just a few comments:
fesoj000 <fesoj000 <at> 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
Added tag(s) moreinfo.
Request was from
Ludovic Courtès <ludo <at> gnu.org>
to
control <at> debbugs.gnu.org
.
(Mon, 04 Apr 2022 20:46:01 GMT)
Full text and
rfc822 format available.
This bug report was last modified 3 years and 69 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.