mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gnu: directfb: Fix building on armhf-linux.
* gnu/packages/graphics.scm (directfb)[arguments]: Add a phase when building for armhf-linux to apply a patch. [native-inputs]: Add patch, patch file. * gnu/packages/patches/directfb-davinci-glibc-228-compat.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it.
This commit is contained in:
parent
0e21b01a9a
commit
3fc26c6dc4
3 changed files with 59 additions and 1 deletions
|
@ -1056,6 +1056,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/dezyne-add-missing-shebangs.patch \
|
%D%/packages/patches/dezyne-add-missing-shebangs.patch \
|
||||||
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
|
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
|
||||||
%D%/packages/patches/diffutils-fix-signal-processing.patch \
|
%D%/packages/patches/diffutils-fix-signal-processing.patch \
|
||||||
|
%D%/packages/patches/directfb-davinci-glibc-228-compat.patch \
|
||||||
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
|
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
|
||||||
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
|
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
|
||||||
%D%/packages/patches/docbook-xsl-support-old-url.patch \
|
%D%/packages/patches/docbook-xsl-support-old-url.patch \
|
||||||
|
|
|
@ -189,13 +189,29 @@ framebuffer graphics, audio output and input event.")
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "src/core/core.c"
|
(substitute* "src/core/core.c"
|
||||||
(("..BUILDTIME..") ""))))
|
(("..BUILDTIME..") ""))))
|
||||||
|
;; TODO: Move patch to source.
|
||||||
|
,@(if (target-arm32?)
|
||||||
|
`((add-after 'unpack 'patch-source
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(invoke "patch" "--force" "-p1" "-i"
|
||||||
|
(assoc-ref inputs "patch-file")))))
|
||||||
|
'())
|
||||||
(add-after 'unpack 'disable-configure-during-bootstrap
|
(add-after 'unpack 'disable-configure-during-bootstrap
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "autogen.sh"
|
(substitute* "autogen.sh"
|
||||||
(("^.*\\$srcdir/configure.*") ""))
|
(("^.*\\$srcdir/configure.*") ""))
|
||||||
#t)))))
|
#t)))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list autoconf automake libtool perl pkg-config))
|
`(("autoconf" ,autoconf)
|
||||||
|
("automake" ,automake)
|
||||||
|
("libtool" ,libtool)
|
||||||
|
("perl" ,perl)
|
||||||
|
("pkg-config" ,pkg-config)
|
||||||
|
,@(if (target-arm32?)
|
||||||
|
`(("patch" ,patch)
|
||||||
|
("patch-file"
|
||||||
|
,(search-patch "directfb-davinci-glibc-228-compat.patch")))
|
||||||
|
'())))
|
||||||
(inputs
|
(inputs
|
||||||
(list alsa-lib
|
(list alsa-lib
|
||||||
ffmpeg
|
ffmpeg
|
||||||
|
|
41
gnu/packages/patches/directfb-davinci-glibc-228-compat.patch
Normal file
41
gnu/packages/patches/directfb-davinci-glibc-228-compat.patch
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
This patch is from upstream
|
||||||
|
|
||||||
|
From 3a236241bbec3f15b012b6f0dbe94353d8094557 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Childs <lorne@cons.org.nz>
|
||||||
|
Date: Sat, 2 May 2020 12:36:46 +0900
|
||||||
|
Subject: [PATCH] davinci: fix build with glibc >= 2.28
|
||||||
|
|
||||||
|
From glibc 2.28 release notes:
|
||||||
|
|
||||||
|
* The macros 'major', 'minor', and 'makedev' are now only available from
|
||||||
|
the header <sys/sysmacros.h>; not from <sys/types.h> or various other
|
||||||
|
headers that happen to include <sys/types.h>. These macros are rarely
|
||||||
|
used, not part of POSIX nor XSI, and their names frequently collide with
|
||||||
|
user code; see https://sourceware.org/bugzilla/show_bug.cgi?id=19239 for
|
||||||
|
further explanation.
|
||||||
|
|
||||||
|
<sys/sysmacros.h> is a GNU extension. Portable programs that require
|
||||||
|
these macros should first include <sys/types.h>, and then include
|
||||||
|
<sys/sysmacros.h> if __GNU_LIBRARY__ is defined.
|
||||||
|
|
||||||
|
https://lists.gnu.org/archive/html/info-gnu/2018-08/msg00000.html
|
||||||
|
---
|
||||||
|
gfxdrivers/davinci/davinci_c64x.c | 5 +++++
|
||||||
|
1 file changed, 5 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/gfxdrivers/davinci/davinci_c64x.c b/gfxdrivers/davinci/davinci_c64x.c
|
||||||
|
index 431ffdd99..351250a03 100644
|
||||||
|
--- a/gfxdrivers/davinci/davinci_c64x.c
|
||||||
|
+++ b/gfxdrivers/davinci/davinci_c64x.c
|
||||||
|
@@ -39,6 +39,11 @@
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
+// Required for `makedev` in glibc >= 2.28
|
||||||
|
+#if defined(__GNU_LIBRARY__)
|
||||||
|
+#include <sys/sysmacros.h>
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#include <directfb_util.h>
|
||||||
|
|
||||||
|
#include <direct/clock.h>
|
Loading…
Add table
Add a link
Reference in a new issue