summaryrefslogtreecommitdiffstats
path: root/package/libv4l/libv4l-01-largefile.patch
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2014-02-20 22:42:40 +0100
committerPeter Korsgaard <peter@korsgaard.com>2014-02-20 22:52:05 +0100
commit045651e253be4ec20abbff0cd2678b88509cbb20 (patch)
treec7adb5b0886d3d9f6de680a4434c3a14ace23d80 /package/libv4l/libv4l-01-largefile.patch
parent777f3b56be9debbf75f5f08b5e3f2a86811e5fbc (diff)
downloadbuildroot-045651e253be4ec20abbff0cd2678b88509cbb20.tar.gz
buildroot-045651e253be4ec20abbff0cd2678b88509cbb20.zip
libv4l: fix build on AArch64
AArch64 does not implement the SYS_open system call, but only the SYS_openat system call, as should be done for all modern architectures merged into the Linux kernel. This causes problems when building libv4l 0.8.9, which are fixed by integrating an upstream patch, available in a more recent version of libv4l. Backporting the patch is preferred over bumping libv4l, as libv4l has a fairly large number of reverse dependencies, and we don't want to break anything that close to the release. Note that this commit also renames the existing libv4l-largefile.patch to libv4l-01-largefile.patch in order to comply with the Buildroot patch naming scheme, and guarantee the order in which patches are applied. Fixes: http://autobuild.buildroot.org/results/ed6/ed66792e332ee0256a17f98cbe21dfcfe6e8743b/ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'package/libv4l/libv4l-01-largefile.patch')
-rw-r--r--package/libv4l/libv4l-01-largefile.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/package/libv4l/libv4l-01-largefile.patch b/package/libv4l/libv4l-01-largefile.patch
new file mode 100644
index 0000000000..9df8652adc
--- /dev/null
+++ b/package/libv4l/libv4l-01-largefile.patch
@@ -0,0 +1,39 @@
+[PATCH] fixup lfs mismatch in preload libraries
+
+Ensure that the lfs variants are not transparently used instead of the !lfs
+ones so both can be wrapped, independently of any custom CFLAGS/CPPFLAGS.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ lib/libv4l1/v4l1compat.c | 3 +++
+ lib/libv4l2/v4l2convert.c | 3 +++
+ 2 files changed, 6 insertions(+)
+
+Index: v4l-utils-0.8.5/lib/libv4l1/v4l1compat.c
+===================================================================
+--- v4l-utils-0.8.5.orig/lib/libv4l1/v4l1compat.c
++++ v4l-utils-0.8.5/lib/libv4l1/v4l1compat.c
+@@ -19,6 +19,9 @@
+ # Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+ */
+
++/* ensure we see *64 variants and they aren't transparently used */
++#undef _LARGEFILE_SOURCE
++#undef _FILE_OFFSET_BITS
+ #define _LARGEFILE64_SOURCE 1
+
+ #include <stdlib.h>
+Index: v4l-utils-0.8.5/lib/libv4l2/v4l2convert.c
+===================================================================
+--- v4l-utils-0.8.5.orig/lib/libv4l2/v4l2convert.c
++++ v4l-utils-0.8.5/lib/libv4l2/v4l2convert.c
+@@ -20,6 +20,9 @@
+ # Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+ */
+
++/* ensure we see *64 variants and they aren't transparently used */
++#undef _LARGEFILE_SOURCE
++#undef _FILE_OFFSET_BITS
+ #define _LARGEFILE64_SOURCE 1
+
+ #include <stdarg.h>
OpenPOWER on IntegriCloud