unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Maxime Devos <maximedevos@telenet.be>
To: Mathieu Othacehe <othacehe@gnu.org>
Cc: 49437@debbugs.gnu.org
Subject: [bug#49437] [PATCH core-updates] build-system/qt: Fix build failures when
Date: Thu, 08 Jul 2021 19:51:25 +0200	[thread overview]
Message-ID: <52c57042714d524c092002e64dfd53e4ebde5b02.camel@telenet.be> (raw)
In-Reply-To: <87pmvsvp7v.fsf@gnu.org>


[-- 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 --]

  reply	other threads:[~2021-07-08 18:43 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
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

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=52c57042714d524c092002e64dfd53e4ebde5b02.camel@telenet.be \
    --to=maximedevos@telenet.be \
    --cc=49437@debbugs.gnu.org \
    --cc=othacehe@gnu.org \
    /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).