contrib: x264: fix fseeko detection on older 32-bit Android

It's not supported [1]. NDK 26 will emit an error if you try to use it.

Upstream patch: https://code.videolan.org/videolan/x264/-/merge_requests/150

[1] https://android.googlesource.com/platform/bionic/+/main/docs/32-bit-abi.md
This commit is contained in:
Steve Lhomme 2024-04-22 14:09:09 +02:00
parent db5b75f021
commit e750fb576b
2 changed files with 27 additions and 0 deletions

View File

@ -0,0 +1,26 @@
From dc69fefa49726021d75e6a764357779a4b4d0800 Mon Sep 17 00:00:00 2001
From: Steve Lhomme <robux4@ycbcr.xyz>
Date: Mon, 22 Apr 2024 14:03:02 +0200
Subject: [PATCH] configure: set _FILE_OFFSET_BITS to detect fseeko
On Android fseeko is not detected properly if if _FILE_OFFSET_BITS is not set.
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index c1fb599f..60ad229b 100755
--- a/configure
+++ b/configure
@@ -1369,7 +1369,7 @@ if [ $SYS = WINDOWS -a $ARCH = X86 -a $compiler = GNU ] ; then
cc_check '' -fno-zero-initialized-in-bss && CFLAGS="$CFLAGS -fno-zero-initialized-in-bss"
fi
-if cc_check "stdio.h" "" "fseeko(stdin,0,0);" ; then
+if cc_check "stdio.h" "#define _FILE_OFFSET_BITS 64" "fseeko(stdin,0,0);" ; then
define fseek fseeko
define ftell ftello
elif cc_check "stdio.h" "" "fseeko64(stdin,0,0);" ; then
--
2.37.3.windows.1

View File

@ -57,6 +57,7 @@ x264 x26410b: %: x264-$(X264_VERSION).tar.xz .sum-%
$(UPDATE_AUTOCONFIG)
$(APPLY) $(SRC)/x264/x264-winstore.patch
$(APPLY) $(SRC)/x264/0001-osdep-use-direct-path-to-internal-x264.h.patch
$(APPLY) $(SRC)/x264/0001-configure-set-_FILE_OFFSET_BITS-to-detect-fseeko.patch
$(MOVE)
.x264: x264