Subject: [PATCH] gnu: libxcb: Fix build for Hurd.
From: [email-masked]
To: [email-masked]
Cc: 宋文武 <[email-masked]>
Date: Tue, 4 Feb 2025 20:45:07 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

From: 宋文武 <[email-masked]>

* 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
@@ -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

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