[bug#76050] gnu: libxcb: Fix build for Hurd.

Message ID f7ff2d019717b9468eee7b477ec5252fabba9704.1738673058.git.iyzsong@member.fsf.org
State New
Headers
Series [bug#76050] gnu: libxcb: Fix build for Hurd. |

Commit Message

vasilii.smirnov--- via Guix-patches" via Feb. 4, 2025, 12:45 p.m. UTC
  From: 宋文武 <iyzsong@member.fsf.org>

* gnu/packages/xorg.scm (libxcb) [propagated-inputs]: Add libpthread-stubs
when targeting hurd.
[arguments]: Add fix-PATH_MAX phase when targeting hurd.

Authored-by: yelninei on IRC.
Change-Id: Id673045c0c1a94a2d63bac7ea10a49174131d0ed
---
 gnu/packages/xorg.scm | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)


base-commit: 4fa41a04802c43dc4c064b7ac4c2e6a4e92f63b6
prerequisite-patch-id: c6037eae461ad0d2c2229c9dd69de59b8a86827a
  

Comments

Janneke Nieuwenhuizen Feb. 4, 2025, 12:49 p.m. UTC | #1
iyzsong--- via Guix-patches via writes:

Hello!

> From: 宋文武 <iyzsong@member.fsf.org>
>
> * gnu/packages/xorg.scm (libxcb) [propagated-inputs]: Add libpthread-stubs
> when targeting hurd.
> [arguments]: Add fix-PATH_MAX phase when targeting hurd.
>
> Authored-by: yelninei on IRC.
> Change-Id: Id673045c0c1a94a2d63bac7ea10a49174131d0ed
> ---
>  gnu/packages/xorg.scm | 15 +++++++++++++--
>  1 file changed, 13 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
> index 22e576395a..5cdc3a215e 100644
> --- a/gnu/packages/xorg.scm
> +++ b/gnu/packages/xorg.scm

Please add a Copyright line.

+ ;;; Copyright © 2025 Sou Bunnbu <iyzsong@gmail.com>

Otherwise LGTM!

Greetings,
Janneke
  
宋文武 Feb. 4, 2025, 1:43 p.m. UTC | #2
> Otherwise LGTM!
>
> Greetings,
> Janneke

Pushed to master, thank you for the review!
  

Patch

diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 22e576395a..5cdc3a215e 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -5045,7 +5045,10 @@  (define-public libxcb
     (build-system gnu-build-system)
     (outputs '("out" "doc"))                      ;5.5 MiB of man pages
     (propagated-inputs
-      (list libxau libxdmcp))
+      (append (list libxau libxdmcp)
+              (if (target-hurd?)
+                  (list libpthread-stubs)         ;still checked on Hurd
+                  '())))
     (inputs
       (list xcb-proto
             check))                               ;for tests
@@ -5056,7 +5059,15 @@  (define-public libxcb
                                "--disable-static"
                                (string-append "--mandir="
                                               (assoc-ref %outputs "doc")
-                                              "/share/man"))))
+                                              "/share/man"))
+       #:phases ,(if (target-hurd?)
+                     '(modify-phases %standard-phases
+                        (add-after 'unpack 'fix-PATH_MAX
+                          (lambda _
+                            ;; Hurd doesn't define PATH_MAX.
+                            (substitute* "src/xcb_util.c"
+                              (("PATH_MAX") "4096")))))
+                     '%standard-phases)))
     (home-page "https://xcb.freedesktop.org/")
     (synopsis "The X C Binding (XCB) library")
     (description