From b562ab494b1bbec8daea3a37bb979dc59f59e080 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Mon, 14 Apr 2025 14:19:22 +0200 Subject: [PATCH] package/libv4l: backport upstream patch to fix time_t issue libv4l has some really special code that is built explicitly with _FILE_OFFSET_BITS=32, which doesn't work with _TIME_BITS=64, causing build failures when BR2_TIME_BITS_64=y. This build issue has been fixed upstream. While how the upstream patch exactly works is unclear, it's the patch that upstream has decided to implement to resolve the build issue, so we simply backport it. The issue exists since at least upstream commit 99f245f5e2826c7ae3ac8de530bc2fbd906eb62b, which was merged in v4l-utils 1.26.0. Fixes: https://autobuild.buildroot.org/results/616608ef2a44efff67fa21b3263b341da82744c4/ Signed-off-by: Thomas Petazzoni [Julien: add upstream commit url in patch] Signed-off-by: Julien Olivain (cherry picked from commit bdb5809adfcff3a47d7117b5c856a400c7432273) Signed-off-by: Thomas Perale --- ...on.build-fix-arm-_TIME_BITS-64-error.patch | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 package/libv4l/0001-meson.build-fix-arm-_TIME_BITS-64-error.patch diff --git a/package/libv4l/0001-meson.build-fix-arm-_TIME_BITS-64-error.patch b/package/libv4l/0001-meson.build-fix-arm-_TIME_BITS-64-error.patch new file mode 100644 index 0000000000..43fe9b2721 --- /dev/null +++ b/package/libv4l/0001-meson.build-fix-arm-_TIME_BITS-64-error.patch @@ -0,0 +1,37 @@ +From 6faf5e963eadeab8b7d47d5b3c14f06e0ae1da01 Mon Sep 17 00:00:00 2001 +From: Hans Verkuil +Date: Sat, 12 Apr 2025 12:30:13 +0200 +Subject: [PATCH] meson.build: fix arm _TIME_BITS=64 error + +Undefine _TIME_BITS to avoid this error on 32-bit arm: + +/usr/include/features-time64.h:26:5: error: #error "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64" + +Signed-off-by: Hans Verkuil +Upstream: https://git.linuxtv.org/v4l-utils.git/commit/?id=d517cfdcdc16533ab7e06e97c07ca089cf261aef +Signed-off-by: Thomas Petazzoni +--- + meson.build | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 269a9da7..31927cda 100644 +--- a/meson.build ++++ b/meson.build +@@ -53,8 +53,12 @@ v4l2_wrapper_args = [ + # As the library needs to provide both 32-bit and 64-bit versions + # of file operations, disable transparent large file support (fixes + # 'Error: symbol `open64/mmap64' is already defined' compile failure +- # otherwise) ++ # otherwise). ++ # ++ # Also disable _TIME_BITS=64 since this is allowed only with ++ # _FILE_OFFSET_BITS=64, which is now 32. + '-U_FILE_OFFSET_BITS', ++ '-U_TIME_BITS', + '-D_FILE_OFFSET_BITS=32', + '-D_LARGEFILE64_SOURCE', + ] +-- +2.49.0 +