gnu: casync: Fix build with glibc 2.28.

* gnu/packages/patches/casync-renameat2-declaration.patch: New file.
* gnu/packages/sync.scm (casync)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
Ludovic Courtès 2018-11-21 10:24:06 +01:00
parent 4cf879fefb
commit e1f7912761
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 30 additions and 1 deletions

View file

@ -607,6 +607,7 @@ dist_patch_DATA = \
%D%/packages/patches/cairo-setjmp-wrapper.patch \
%D%/packages/patches/calibre-no-updates-dialog.patch \
%D%/packages/patches/calibre-use-packaged-feedparser.patch \
%D%/packages/patches/casync-renameat2-declaration.patch \
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
%D%/packages/patches/cdparanoia-fpic.patch \
%D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \

View file

@ -0,0 +1,27 @@
Fix build failure on glibc 2.28 where 'renameat2' would end up being
declared twice: <https://github.com/systemd/casync/issues/166>.
From 625244ca47e8ee1375d2d0092271bfd13b0913ea Mon Sep 17 00:00:00 2001
From: Daniel Mack <daniel@zonque.org>
Date: Tue, 13 Nov 2018 17:52:48 +0100
Subject: [PATCH] meson.build: pass -D_GNU_SOURCE when checking for functions
As described in #166, -D_GNU_SOURCE needs to be passed to the meson function
availability checker. h/t to @tomeon for providing a link to the solution as
well.
---
meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index f42ed16..c0f741e 100644
--- a/meson.build
+++ b/meson.build
@@ -78,6 +78,6 @@ foreach ident : [
['copy_file_range', '''#include <sys/syscall.h>
#include <unistd.h>'''],
]
- have = cc.has_function(ident[0], prefix : ident[1])
+ have = cc.has_function(ident[0], args : '-D_GNU_SOURCE', prefix : ident[1])
conf.set10('HAVE_' + ident[0].to_upper(), have)
endforeach

View file

@ -214,7 +214,8 @@ (define-public casync
(sha256
(base32
"0znkp3fcksrykcsv06y2mjvf2lbwmin25snmvfa8i5qfm3f4rm88"))
(file-name (string-append name "-" version "-checkout"))))
(file-name (string-append name "-" version "-checkout"))
(patches (search-patches "casync-renameat2-declaration.patch"))))
(build-system meson-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)