GNU bug report logs - #66034
[PATCH gnome-team 0/3] Fix qemu

Previous Next

Package: guix-patches;

Reported by: Vivien Kraus <vivien <at> planete-kraus.eu>

Date: Sat, 16 Sep 2023 15:24:02 UTC

Severity: normal

Tags: patch

Done: Liliana Marie Prikler <liliana.prikler <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 66034 in the body.
You can then email your comments to 66034 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sat, 16 Sep 2023 15:24:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Vivien Kraus <vivien <at> planete-kraus.eu>:
New bug report received and forwarded. Copy sent to liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org. (Sat, 16 Sep 2023 15:24:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Vivien Kraus <vivien <at> planete-kraus.eu>
To: guix-patches <at> gnu.org
Subject: [PATCH gnome-team 0/3] Fix qemu
Date: Sat, 16 Sep 2023 17:19:37 +0200
Dear guix,

Qemu on gnome-team is a mess. Glib uses pcre2, but it lists pcre (not 2) as a
required.private pkg-config input. In turn, qemu uses pcre (not 2), and more
specifically its static output. There is not yet a static output for pcre2, so
it cannot be changed.

That’s why I fixed glib (requires a full recompilation of everything), fixed
pcre2 to add a static output (an even fuller recompilation), to finally fix
qemu.

What do you think?

Best regards,

Vivien

Vivien Kraus (3):
  gnu: glib: fix required.private reference to pcre.
  gnu: pcre2: install static libraries.
  gnu: qemu: Switch to pcre2.

 gnu/packages/glib.scm           |  7 ++++++-
 gnu/packages/pcre.scm           | 16 +++++++++++++---
 gnu/packages/virtualization.scm |  2 +-
 3 files changed, 20 insertions(+), 5 deletions(-)


base-commit: e9ff5d51e3297089e66c124195e1f1b42dbded65
-- 
2.41.0




Information forwarded to liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sat, 16 Sep 2023 15:26:01 GMT) Full text and rfc822 format available.

Message #8 received at 66034 <at> debbugs.gnu.org (full text, mbox):

From: Vivien Kraus <vivien <at> planete-kraus.eu>
To: 66034 <at> debbugs.gnu.org
Subject: [PATCH gnome-team 1/3] gnu: glib: fix required.private reference
 to pcre.
Date: Sat, 16 Sep 2023 11:55:07 +0200
* gnu/packages/glib.scm (glib) [#:phases 'patch-pkg-config-files]: Replace the
reference to libpcre-8 to libpcre2-8.
---
 gnu/packages/glib.scm | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 8af89d60e0..dcc61802a4 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -449,7 +449,12 @@ (define glib
                 (("^bindir=.*")
                  "")
                 (("=\\$\\{bindir\\}/")
-                 "=")))))))
+                 "="))
+              ;; Update the required.private pcre pkg-config name
+              (substitute*
+                  (list (search-input-file outputs "lib/pkgconfig/glib-2.0.pc"))
+                (("libpcre-8")
+                 "libpcre2-8")))))))
     (native-inputs
      (list dbus
            gettext-minimal
-- 
2.41.0




Information forwarded to liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sat, 16 Sep 2023 15:26:02 GMT) Full text and rfc822 format available.

Message #11 received at 66034 <at> debbugs.gnu.org (full text, mbox):

From: Vivien Kraus <vivien <at> planete-kraus.eu>
To: 66034 <at> debbugs.gnu.org
Subject: [PATCH gnome-team 2/3] gnu: pcre2: install static libraries.
Date: Sat, 16 Sep 2023 14:25:58 +0200
* gnu/packages/pcre.scm (pcre2)[#:configure-flags]: Remove "--disable-static".
[#:phases 'move-static-libs]: Same as pcre.
[outputs]: Add a "static" output.
---
 gnu/packages/pcre.scm | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/pcre.scm b/gnu/packages/pcre.scm
index ee48ad0e2b..c7471169d9 100644
--- a/gnu/packages/pcre.scm
+++ b/gnu/packages/pcre.scm
@@ -102,6 +102,7 @@ (define-public pcre2
                (base32
                 "0s4x2l6g0sb9piwkr3sxqwdswz2g6bk1hhwngv0kv4w38wybir0l"))))
     (build-system gnu-build-system)
+    (outputs '("out" "static"))
     (inputs (list bzip2 readline zlib))
     (arguments
      (list #:configure-flags
@@ -114,14 +115,23 @@ (define-public pcre2
                ;; riscv64-linux is an unsupported architecture.
                #$@(if (target-riscv64?)
                       #~()
-                      #~("--enable-jit"))
-               "--disable-static")
+                      #~("--enable-jit")))
            #:phases
            #~(modify-phases %standard-phases
                (add-after 'unpack 'patch-paths
                  (lambda _
                    (substitute* "RunGrepTest"
-                     (("/bin/echo") (which "echo"))))))))
+                     (("/bin/echo") (which "echo")))))
+               (add-after 'install 'move-static-libs
+                 (lambda _
+                   (let ((source (string-append #$output "/lib"))
+                         (static (string-append #$output:static "/lib")))
+                     (mkdir-p static)
+                     (for-each (lambda (lib)
+                                 (link lib (string-append static "/"
+                                                          (basename lib)))
+                                 (delete-file lib))
+                               (find-files source "\\.a$"))))))))
     (synopsis "Perl Compatible Regular Expressions")
     (description
      "The PCRE library is a set of functions that implement regular expression
-- 
2.41.0




Information forwarded to liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sat, 16 Sep 2023 15:26:02 GMT) Full text and rfc822 format available.

Message #14 received at 66034 <at> debbugs.gnu.org (full text, mbox):

From: Vivien Kraus <vivien <at> planete-kraus.eu>
To: 66034 <at> debbugs.gnu.org
Subject: [PATCH gnome-team 3/3] gnu: qemu: Switch to pcre2.
Date: Sat, 16 Sep 2023 14:27:26 +0200
* gnu/packages/virtualization.scm (qemu) [native-inputs]: Replace the static
output of pcre with that of pcre2.
---
 gnu/packages/virtualization.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index f5bdedd45e..49817fdbcd 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -481,7 +481,7 @@ (define-public qemu
            ;; The following static libraries are required to build
            ;; the static output of QEMU.
            `(,glib "static")
-           `(,pcre "static")
+           `(,pcre2 "static")
            `(,zlib "static")))
     (home-page "https://www.qemu.org")
     (synopsis "Machine emulator and virtualizer")
-- 
2.41.0




Information forwarded to guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sat, 16 Sep 2023 17:31:02 GMT) Full text and rfc822 format available.

Message #17 received at 66034 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Vivien Kraus <vivien <at> planete-kraus.eu>, 66034 <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: Re: [bug#66034] [PATCH gnome-team 0/3] Fix qemu
Date: Sat, 16 Sep 2023 19:30:07 +0200
Am Samstag, dem 16.09.2023 um 17:19 +0200 schrieb Vivien Kraus:
> Dear guix,
> 
> Qemu on gnome-team is a mess. Glib uses pcre2, but it lists pcre (not
> 2) as a required.private pkg-config input. In turn, qemu uses pcre
> (not 2), and more specifically its static output. There is not yet a
> static output for pcre2, so it cannot be changed.
> 
> That’s why I fixed glib (requires a full recompilation of
> everything), fixed pcre2 to add a static output (an even fuller
> recompilation), to finally fix qemu.
> 
> What do you think?
Thanks for catching this.  As always, I'll do my ChangeLog rewordings,
but assuming it builds on CI, it should be fine to push this.  The Vala
update from another thread also forces a world rebuild, so it's fine. 
Anyone aiming to upgrade libxml2 while we're at it?

Cheers




Information forwarded to guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sat, 16 Sep 2023 18:53:02 GMT) Full text and rfc822 format available.

Message #20 received at 66034 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Vivien Kraus <vivien <at> planete-kraus.eu>, 66034 <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: Re: [bug#66034] [PATCH gnome-team 1/3] gnu: glib: fix
 required.private reference to pcre.
Date: Sat, 16 Sep 2023 20:52:11 +0200
Am Samstag, dem 16.09.2023 um 11:55 +0200 schrieb Vivien Kraus:
> * gnu/packages/glib.scm (glib) [#:phases 'patch-pkg-config-files]:
> Replace the reference to libpcre-8 to libpcre2-8.
> ---
Logic-wise LGTM, but…
>  gnu/packages/glib.scm | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> index 8af89d60e0..dcc61802a4 100644
> --- a/gnu/packages/glib.scm
> +++ b/gnu/packages/glib.scm
> @@ -449,7 +449,12 @@ (define glib
>                  (("^bindir=.*")
>                   "")
>                  (("=\\$\\{bindir\\}/")
> -                 "=")))))))
> +                 "="))
> +              ;; Update the required.private pcre pkg-config name
> +              (substitute*
> +                  (list (search-input-file outputs
> "lib/pkgconfig/glib-2.0.pc"))
Is there a reason to use a list here?  Also, can we not do this
earlier?
> +                (("libpcre-8")
> +                 "libpcre2-8")))))))
This fits in one line.

Cheers

Information forwarded to guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sun, 17 Sep 2023 04:08:02 GMT) Full text and rfc822 format available.

Message #23 received at 66034 <at> debbugs.gnu.org (full text, mbox):

From: Vivien Kraus <vivien <at> planete-kraus.eu>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>, 66034 <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: Re: [bug#66034] [PATCH gnome-team 1/3] gnu: glib: fix
 required.private reference to pcre.
Date: Sun, 17 Sep 2023 06:07:34 +0200
Le samedi 16 septembre 2023 à 20:52 +0200, Liliana Marie Prikler a
écrit :
> Am Samstag, dem 16.09.2023 um 11:55 +0200 schrieb Vivien Kraus:
> > * gnu/packages/glib.scm (glib) [#:phases 'patch-pkg-config-files]:
> > Replace the reference to libpcre-8 to libpcre2-8.
> > ---
> Logic-wise LGTM, but…
> >  gnu/packages/glib.scm | 7 ++++++-
> >  1 file changed, 6 insertions(+), 1 deletion(-)
> > 
> > diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> > index 8af89d60e0..dcc61802a4 100644
> > --- a/gnu/packages/glib.scm
> > +++ b/gnu/packages/glib.scm
> > @@ -449,7 +449,12 @@ (define glib
> >                  (("^bindir=.*")
> >                   "")
> >                  (("=\\$\\{bindir\\}/")
> > -                 "=")))))))
> > +                 "="))
> > +              ;; Update the required.private pcre pkg-config name
> > +              (substitute*
> > +                  (list (search-input-file outputs
> > "lib/pkgconfig/glib-2.0.pc"))
> Is there a reason to use a list here?  Also, can we not do this
> earlier?

I am confused. This is not required at all, glib already points to the
correct libpcre2-8.pc. I don’t know why I thought this would not be the
case; maybe I checked the glib output on the wrong branch.

Anyway, can you just ignore this patch, or do you prefer that I send
the series again, without this one?

Vivien

Information forwarded to guix-patches <at> gnu.org:
bug#66034; Package guix-patches. (Sun, 17 Sep 2023 05:20:02 GMT) Full text and rfc822 format available.

Message #26 received at 66034 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Vivien Kraus <vivien <at> planete-kraus.eu>, 66034 <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: Re: [bug#66034] [PATCH gnome-team 1/3] gnu: glib: fix
 required.private reference to pcre.
Date: Sun, 17 Sep 2023 07:19:14 +0200
Am Sonntag, dem 17.09.2023 um 06:07 +0200 schrieb Vivien Kraus:
> Le samedi 16 septembre 2023 à 20:52 +0200, Liliana Marie Prikler a
> écrit :
> > Am Samstag, dem 16.09.2023 um 11:55 +0200 schrieb Vivien Kraus:
> > > * gnu/packages/glib.scm (glib) [#:phases 'patch-pkg-config-
> > > files]:
> > > Replace the reference to libpcre-8 to libpcre2-8.
> > > ---
> > Logic-wise LGTM, but…
> > >  gnu/packages/glib.scm | 7 ++++++-
> > >  1 file changed, 6 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> > > index 8af89d60e0..dcc61802a4 100644
> > > --- a/gnu/packages/glib.scm
> > > +++ b/gnu/packages/glib.scm
> > > @@ -449,7 +449,12 @@ (define glib
> > >                  (("^bindir=.*")
> > >                   "")
> > >                  (("=\\$\\{bindir\\}/")
> > > -                 "=")))))))
> > > +                 "="))
> > > +              ;; Update the required.private pcre pkg-config
> > > name
> > > +              (substitute*
> > > +                  (list (search-input-file outputs
> > > "lib/pkgconfig/glib-2.0.pc"))
> > Is there a reason to use a list here?  Also, can we not do this
> > earlier?
> 
> I am confused. This is not required at all, glib already points to
> the correct libpcre2-8.pc. I don’t know why I thought this would not
> be the case; maybe I checked the glib output on the wrong branch.
> 
> Anyway, can you just ignore this patch, or do you prefer that I send
> the series again, without this one?
Nah, it's fine, I'll skip it.




Reply sent to Liliana Marie Prikler <liliana.prikler <at> gmail.com>:
You have taken responsibility. (Sun, 24 Sep 2023 10:02:02 GMT) Full text and rfc822 format available.

Notification sent to Vivien Kraus <vivien <at> planete-kraus.eu>:
bug acknowledged by developer. (Sun, 24 Sep 2023 10:02:02 GMT) Full text and rfc822 format available.

Message #31 received at 66034-done <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Vivien Kraus <vivien <at> planete-kraus.eu>, 66034-done <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: Re: [bug#66034] [PATCH gnome-team 3/3] gnu: qemu: Switch to pcre2.
Date: Sun, 24 Sep 2023 12:00:49 +0200
Am Samstag, dem 16.09.2023 um 14:27 +0200 schrieb Vivien Kraus:
> * gnu/packages/virtualization.scm (qemu) [native-inputs]: Replace the
> static
> output of pcre with that of pcre2.
> ---
Pushed without the 1/3, as discussed.

Cheers




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 22 Oct 2023 11:24:09 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 239 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.