unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
@ 2021-07-06 11:25 Maxime Devos
  2021-07-08 14:45 ` Mathieu Othacehe
  0 siblings, 1 reply; 11+ messages in thread
From: Maxime Devos @ 2021-07-06 11:25 UTC (permalink / raw)
  To: 49437

[-- Attachment #1: Type: text/plain, Size: 700 bytes --]

Hi guix,

From the commit message:

‘One of the features of 'qt-build-system' is that it automatically
creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
so.  If "bin/bash" doesn't exist among the 'inputs', then
'search-input-file' (used by 'wrap-all-programs') will raise an
exception.  Address this exception by adding "bash-minimal" to
'host-inputs' when cross-compiling.

This change does not impact native compilation; the derivations
for natively-compiled packages remain identical.’

I am unable to test this at the moment (too little substitutes
for core-updates, too little processing power locally ...), but
I intent to do so later.

Greetings,
Maxime/

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2021-07-06 11:25 [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when Maxime Devos
@ 2021-07-08 14:45 ` Mathieu Othacehe
  2021-07-08 17:51   ` Maxime Devos
  0 siblings, 1 reply; 11+ messages in thread
From: Mathieu Othacehe @ 2021-07-08 14:45 UTC (permalink / raw)
  To: Maxime Devos; +Cc: 49437


Hey Maxime,

> I am unable to test this at the moment (too little substitutes
> for core-updates, too little processing power locally ...), but
> I intent to do so later.

I think you are missing the attached patch here.

Thanks,

Mathieu




^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2021-07-08 14:45 ` Mathieu Othacehe
@ 2021-07-08 17:51   ` Maxime Devos
  2021-07-08 19:37     ` Mathieu Othacehe
  2024-01-20 21:11     ` bug#49437: " Maxim Cournoyer
  0 siblings, 2 replies; 11+ messages in thread
From: Maxime Devos @ 2021-07-08 17:51 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: 49437


[-- Attachment #1.1: Type: text/plain, Size: 343 bytes --]

Mathieu Othacehe schreef op do 08-07-2021 om 16:45 [+0200]:
> Hey Maxime,
> 
> > I am unable to test this at the moment (too little substitutes
> > for core-updates, too little processing power locally ...), but
> > I intent to do so later.
> 
> I think you are missing the attached patch here.

Now attached!

Greetings,
Maxime.

[-- Attachment #1.2: 0001-build-system-qt-Fix-build-failures-when-cross-compil.patch --]
[-- Type: text/x-patch, Size: 2549 bytes --]

From b9e46156e1f35303b56fbe2ed4694385b6104214 Mon Sep 17 00:00:00 2001
From: Maxime Devos <maximedevos@telenet.be>
Date: Tue, 6 Jul 2021 10:57:49 +0200
Subject: [PATCH core-updates] build-system/qt: Fix build failures when
 cross-compiling.

One of the features of 'qt-build-system' is that it automatically
creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
so.  If "bin/bash" doesn't exist among the 'inputs', then
'search-input-file' (used by 'wrap-all-programs') will raise an
exception.  Address this exception by adding "bash-minimal" to
'host-inputs' when cross-compiling.

This change does not impact native compilation; the derivations
for natively-compiled packages remain identical.

* guix/build-system/qt.scm
  (bash-for-wrappers): New procedure.
  (lower): Add 'bash-minimal' to 'host-inputs' when cross-compiling.
---
 guix/build-system/qt.scm | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/guix/build-system/qt.scm b/guix/build-system/qt.scm
index ccee89d5ef..9fa90baeeb 100644
--- a/guix/build-system/qt.scm
+++ b/guix/build-system/qt.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -63,6 +64,13 @@
   (let ((module (resolve-interface '(gnu packages cmake))))
     (module-ref module 'cmake-minimal)))
 
+(define (bash-for-wrappers)
+  "Return the bash package to use for wrappers."
+
+  ;; Do not use `@' to avoid introducing circular dependencies.
+  (let ((module (resolve-interface '(gnu packages bash))))
+    (module-ref module 'bash-minimal)))
+
 ;; This barely is a copy from (guix build-system cmake), only adjusted to use
 ;; the variables defined here.
 (define* (lower name
@@ -91,7 +99,12 @@
                           '())
                     ;; Keep the standard inputs of 'gnu-build-system'.
                     ,@(standard-packages)))
-    (host-inputs inputs)
+    ;; Make sure the 'qt-wrap' phase has a cross-compiled bash
+    ;; for wrappers when cross-compiling.
+    (host-inputs `(,@(if target
+                         `(("bash-minimal" ,(bash-for-wrappers)))
+                         '())
+                   ,@inputs))
 
     ;; The cross-libc is really a target package, but for bootstrapping
     ;; reasons, we can't put it in 'host-inputs'.  Namely, 'cross-gcc' is a
-- 
2.32.0


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2021-07-08 17:51   ` Maxime Devos
@ 2021-07-08 19:37     ` Mathieu Othacehe
  2021-07-08 20:59       ` Maxime Devos
  2024-01-20 21:11     ` bug#49437: " Maxim Cournoyer
  1 sibling, 1 reply; 11+ messages in thread
From: Mathieu Othacehe @ 2021-07-08 19:37 UTC (permalink / raw)
  To: Maxime Devos; +Cc: 49437


Hey,

> One of the features of 'qt-build-system' is that it automatically
> creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
> so.  If "bin/bash" doesn't exist among the 'inputs', then
> 'search-input-file' (used by 'wrap-all-programs') will raise an
> exception.  Address this exception by adding "bash-minimal" to
> 'host-inputs' when cross-compiling.

I'd like to test it but it looks like qt-build-system drags glib which
uses the meson-build-system that doesn't support cross-compilation.

Did you test this patch, on top of your meson series?

Otherwise, it looks fine to me.

Thanks,

Mathieu




^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2021-07-08 19:37     ` Mathieu Othacehe
@ 2021-07-08 20:59       ` Maxime Devos
  2021-09-23  3:53         ` Maxim Cournoyer
  0 siblings, 1 reply; 11+ messages in thread
From: Maxime Devos @ 2021-07-08 20:59 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: 49437

[-- Attachment #1: Type: text/plain, Size: 815 bytes --]

Mathieu Othacehe schreef op do 08-07-2021 om 21:37 [+0200]:
> Hey,
> 
> > One of the features of 'qt-build-system' is that it automatically
> > creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
> > so.  If "bin/bash" doesn't exist among the 'inputs', then
> > 'search-input-file' (used by 'wrap-all-programs') will raise an
> > exception.  Address this exception by adding "bash-minimal" to
> > 'host-inputs' when cross-compiling.
> 
> I'd like to test it but it looks like qt-build-system drags glib which
> uses the meson-build-system that doesn't support cross-compilation.
> 
> Did you test this patch, on top of your meson series?

I had started "./pre-inst-env guix build qtsvg" but that's no
cross-compilation.  I'll rebase the meson series and test it!

Greetings,
Maxime.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2021-07-08 20:59       ` Maxime Devos
@ 2021-09-23  3:53         ` Maxim Cournoyer
  2021-10-03  8:56           ` Maxime Devos
  0 siblings, 1 reply; 11+ messages in thread
From: Maxim Cournoyer @ 2021-09-23  3:53 UTC (permalink / raw)
  To: Maxime Devos; +Cc: Mathieu Othacehe, 49437

Hello,

Maxime Devos <maximedevos@telenet.be> writes:

> Mathieu Othacehe schreef op do 08-07-2021 om 21:37 [+0200]:
>> Hey,
>> 
>> > One of the features of 'qt-build-system' is that it automatically
>> > creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
>> > so.  If "bin/bash" doesn't exist among the 'inputs', then
>> > 'search-input-file' (used by 'wrap-all-programs') will raise an
>> > exception.  Address this exception by adding "bash-minimal" to
>> > 'host-inputs' when cross-compiling.
>> 
>> I'd like to test it but it looks like qt-build-system drags glib which
>> uses the meson-build-system that doesn't support cross-compilation.
>> 
>> Did you test this patch, on top of your meson series?
>
> I had started "./pre-inst-env guix build qtsvg" but that's no
> cross-compilation.  I'll rebase the meson series and test it!

Did it test fine?

Thanks,

Maxim




^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2021-09-23  3:53         ` Maxim Cournoyer
@ 2021-10-03  8:56           ` Maxime Devos
  2023-03-29  2:15             ` Maxim Cournoyer
  0 siblings, 1 reply; 11+ messages in thread
From: Maxime Devos @ 2021-10-03  8:56 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: Mathieu Othacehe, 49437

[-- Attachment #1: Type: text/plain, Size: 1205 bytes --]

Maxim Cournoyer schreef op wo 22-09-2021 om 23:53 [-0400]:
> Hello,
> 
> Maxime Devos <maximedevos@telenet.be> writes:
> 
> > Mathieu Othacehe schreef op do 08-07-2021 om 21:37 [+0200]:
> > > Hey,
> > > 
> > > > One of the features of 'qt-build-system' is that it automatically
> > > > creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
> > > > so.  If "bin/bash" doesn't exist among the 'inputs', then
> > > > 'search-input-file' (used by 'wrap-all-programs') will raise an
> > > > exception.  Address this exception by adding "bash-minimal" to
> > > > 'host-inputs' when cross-compiling.
> > > 
> > > I'd like to test it but it looks like qt-build-system drags glib which
> > > uses the meson-build-system that doesn't support cross-compilation.
> > > 
> > > Did you test this patch, on top of your meson series?
> > 
> > I had started "./pre-inst-env guix build qtsvg" but that's no
> > cross-compilation.  I'll rebase the meson series and test it!
> 
> Did it test fine?

Didn't test it yet, because I first wanted the meson series merged.
Now the meson series and the gtk+ cross-compilation fixes are merged,
I'll take a look again.

> Thanks,
> 
> Maxim

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2021-10-03  8:56           ` Maxime Devos
@ 2023-03-29  2:15             ` Maxim Cournoyer
  2023-04-04 18:59               ` Maxime Devos
  0 siblings, 1 reply; 11+ messages in thread
From: Maxim Cournoyer @ 2023-03-29  2:15 UTC (permalink / raw)
  To: Maxime Devos; +Cc: Mathieu Othacehe, 49437

Hi Maxime,

I hope you are doing well.

Maxime Devos <maximedevos@telenet.be> writes:

> Maxim Cournoyer schreef op wo 22-09-2021 om 23:53 [-0400]:
>> Hello,
>> 
>> Maxime Devos <maximedevos@telenet.be> writes:
>> 
>> > Mathieu Othacehe schreef op do 08-07-2021 om 21:37 [+0200]:
>> > > Hey,
>> > > 
>> > > > One of the features of 'qt-build-system' is that it automatically
>> > > > creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
>> > > > so.  If "bin/bash" doesn't exist among the 'inputs', then
>> > > > 'search-input-file' (used by 'wrap-all-programs') will raise an
>> > > > exception.  Address this exception by adding "bash-minimal" to
>> > > > 'host-inputs' when cross-compiling.
>> > > 
>> > > I'd like to test it but it looks like qt-build-system drags glib which
>> > > uses the meson-build-system that doesn't support cross-compilation.
>> > > 
>> > > Did you test this patch, on top of your meson series?
>> > 
>> > I had started "./pre-inst-env guix build qtsvg" but that's no
>> > cross-compilation.  I'll rebase the meson series and test it!
>> 
>> Did it test fine?
>
> Didn't test it yet, because I first wanted the meson series merged.
> Now the meson series and the gtk+ cross-compilation fixes are merged,
> I'll take a look again.

core-updates is pretty "hot" at the moment, so it may be a good time to
test.

On the other hand, there aren't that many Qt packages, so it could also
go to staging IMO.  And if it only touches cross-compilation drv,
perhaps it's good for master too?

It just needs testing.

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2023-03-29  2:15             ` Maxim Cournoyer
@ 2023-04-04 18:59               ` Maxime Devos
  2023-04-07 21:15                 ` Maxim Cournoyer
  0 siblings, 1 reply; 11+ messages in thread
From: Maxime Devos @ 2023-04-04 18:59 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: Mathieu Othacehe, 49437


[-- Attachment #1.1.1: Type: text/plain, Size: 610 bytes --]

Op 29-03-2023 om 04:15 schreef Maxim Cournoyer:
> Hi Maxime,
> 
> I hope you are doing well.
> 
> [...]
> 
> core-updates is pretty "hot" at the moment, so it may be a good time to
> test.
> 
> On the other hand, there aren't that many Qt packages, so it could also
> go to staging IMO.  And if it only touches cross-compilation drv,
> perhaps it's good for master too?
> 
> It just needs testing.

I am not participating in Guix development anymore, except perhaps for 
bug reports and for when Guix intersects GNUnet, and currently it 
appears a permanent decision.

Greetings,
Maxime.

[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 929 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
  2023-04-04 18:59               ` Maxime Devos
@ 2023-04-07 21:15                 ` Maxim Cournoyer
  0 siblings, 0 replies; 11+ messages in thread
From: Maxim Cournoyer @ 2023-04-07 21:15 UTC (permalink / raw)
  To: Maxime Devos; +Cc: Mathieu Othacehe, 49437

Hi,

Maxime Devos <maximedevos@telenet.be> writes:

> Op 29-03-2023 om 04:15 schreef Maxim Cournoyer:
>> Hi Maxime,
>> I hope you are doing well.
>> [...]
>> core-updates is pretty "hot" at the moment, so it may be a good time
>> to
>> test.
>> On the other hand, there aren't that many Qt packages, so it could
>> also
>> go to staging IMO.  And if it only touches cross-compilation drv,
>> perhaps it's good for master too?
>> It just needs testing.
>
> I am not participating in Guix development anymore, except perhaps for
> bug reports and for when Guix intersects GNUnet, and currently it
> appears a permanent decision.

OK.  It's sad that it's come to this, but I respect your decision;
thanks for making it clear.  Your thoughtful inputs and high-impact Guix
contributions will be missed!

-- 
Maxim




^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#49437: [PATCH core-updates] build-system/qt: Fix build failures when
  2021-07-08 17:51   ` Maxime Devos
  2021-07-08 19:37     ` Mathieu Othacehe
@ 2024-01-20 21:11     ` Maxim Cournoyer
  1 sibling, 0 replies; 11+ messages in thread
From: Maxim Cournoyer @ 2024-01-20 21:11 UTC (permalink / raw)
  To: Maxime Devos; +Cc: Mathieu Othacehe, 49437-done

Hi,

Maxime Devos <maximedevos@telenet.be> writes:

> Mathieu Othacehe schreef op do 08-07-2021 om 16:45 [+0200]:
>> Hey Maxime,
>> 
>> > I am unable to test this at the moment (too little substitutes
>> > for core-updates, too little processing power locally ...), but
>> > I intent to do so later.
>> 
>> I think you are missing the attached patch here.
>
> Now attached!
>
> Greetings,
> Maxime.
>
> From b9e46156e1f35303b56fbe2ed4694385b6104214 Mon Sep 17 00:00:00 2001
> From: Maxime Devos <maximedevos@telenet.be>
> Date: Tue, 6 Jul 2021 10:57:49 +0200
> Subject: [PATCH core-updates] build-system/qt: Fix build failures when
>  cross-compiling.
>
> One of the features of 'qt-build-system' is that it automatically
> creates wrappers, but it needs 'bash' (or 'bash-minimal') to do
> so.  If "bin/bash" doesn't exist among the 'inputs', then
> 'search-input-file' (used by 'wrap-all-programs') will raise an
> exception.  Address this exception by adding "bash-minimal" to
> 'host-inputs' when cross-compiling.
>
> This change does not impact native compilation; the derivations
> for natively-compiled packages remain identical.
>
> * guix/build-system/qt.scm
>   (bash-for-wrappers): New procedure.
>   (lower): Add 'bash-minimal' to 'host-inputs' when cross-compiling.

I don't think our Qt packages can be already cross-built; hence there's
no current value in adding this before addressing cross-compilation of
the qt-build-system in the first place.

Also, 'guix lint' would still complain, so for now I'm opting to close
this without applying it.

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2024-01-20 21:12 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-07-06 11:25 [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when Maxime Devos
2021-07-08 14:45 ` Mathieu Othacehe
2021-07-08 17:51   ` Maxime Devos
2021-07-08 19:37     ` Mathieu Othacehe
2021-07-08 20:59       ` Maxime Devos
2021-09-23  3:53         ` Maxim Cournoyer
2021-10-03  8:56           ` Maxime Devos
2023-03-29  2:15             ` Maxim Cournoyer
2023-04-04 18:59               ` Maxime Devos
2023-04-07 21:15                 ` Maxim Cournoyer
2024-01-20 21:11     ` bug#49437: " Maxim Cournoyer

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).