summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2018-11-10 20:07:48 +0200
committerEfraim Flashner <efraim@flashner.co.il>2018-11-10 20:07:56 +0200
commitf268b744b84734b374a15feae1f02b9f2c4085c7 (patch)
treede3f50b532a1327dcc03d4a0ee093e27a9077038 /gnu/packages
parentefe0a4a2a7ece13c855a1f316ad49bcdbfa1596f (diff)
downloadguix-f268b744b84734b374a15feae1f02b9f2c4085c7.tar.gz
gnu: lbzip2: Fix building with glibc@2.28.
* gnu/packages/compression.scm (lbzip2)[source]: Add snippet to patch
bundled gnulib for glibc@2.28.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/compression.scm18
1 files changed, 17 insertions, 1 deletions
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 7249cf775c..41289ad494 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -363,7 +363,23 @@ decompression.")
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1sahaqc5bw4i0iyri05syfza4ncf5cml89an033fspn97klmxis6"))))
+                "1sahaqc5bw4i0iyri05syfza4ncf5cml89an033fspn97klmxis6"))
+             (modules '((guix build utils)))
+             (snippet
+              '(begin
+                 ;; Adjust the bundled gnulib to work with glibc 2.28.  See e.g.
+                 ;; "m4-gnulib-libio.patch".  This is a phase rather than patch
+                 ;; or snippet to work around <https://bugs.gnu.org/32347>.
+                 (substitute* (find-files "lib" "\\.c$")
+                   (("#if defined _IO_ftrylockfile")
+                    "#if defined _IO_EOF_SEEN"))
+                 (substitute* "lib/stdio-impl.h"
+                   (("^/\\* BSD stdio derived implementations")
+                    (string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n"
+                                   "# define _IO_IN_BACKUP 0x100\n"
+                                   "#endif\n\n"
+                                   "/* BSD stdio derived implementations")))
+                 #t))))
     (build-system gnu-build-system)
     (synopsis "Parallel bzip2 compression utility")
     (description