diff options
author | L. E. Segovia <amy@centricular.com> | 2024-03-20 09:25:50 -0300 |
---|---|---|
committer | GStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2024-04-08 07:06:00 +0000 |
commit | 896d0e382ecd391fcd7430814ebf2c1a8228f7cf (patch) | |
tree | bd30dd84853cc9b416b230f06d10cada5d0144d8 /data | |
parent | 4a5c656d0095854ef63cbbc659977d55482ae2b2 (diff) |
x264: Update to r3108, switch to meson-ports, and fix Android builds
Upstream no longer provides Mercurial-style snapshots. However,
we already host a port which follows that convention. I turned it into a
patch following the well known convention,
> git switch stable
> git diff stable..164.3108-meson | git apply
> git add *
> git commit -m "Add Meson build"
> git format-patch -n HEAD~1
And since x264 is another library that shares bugs w.r.t. Android 32-bit
linking, I ported the relevant linker flags to the Android.mk for
GStreamer so that downstream users can get it fixed out of the box.
See #215
Fixes #286
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1400>
Diffstat (limited to 'data')
-rw-r--r-- | data/ndk-build/gstreamer-1.0.mk | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/data/ndk-build/gstreamer-1.0.mk b/data/ndk-build/gstreamer-1.0.mk index 04539d5c..b0c58cdc 100644 --- a/data/ndk-build/gstreamer-1.0.mk +++ b/data/ndk-build/gstreamer-1.0.mk @@ -83,6 +83,37 @@ ifeq ($(GSTREAMER_INCLUDE_CA_CERTIFICATES),yes) GSTREAMER_DEPS += gio-2.0 endif +NEEDS_NOTEXT_FIX := no +NEEDS_BSYMBOLIC_FIX := no +ifeq ($(TARGET_ARCH_ABI),armeabi) +NEEDS_NOTEXT_FIX := yes +NEEDS_BSYMBOLIC_FIX := yes +else ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) +NEEDS_NOTEXT_FIX := yes +NEEDS_BSYMBOLIC_FIX := yes +else ifeq ($(TARGET_ARCH_ABI),x86) +NEEDS_NOTEXT_FIX := yes +NEEDS_BSYMBOLIC_FIX := yes +else ifeq ($(TARGET_ARCH_ABI),x86_64) +NEEDS_BSYMBOLIC_FIX := yes +endif + +# Text relocations are required for all 32-bit objects. We +# must disable the warning to allow linking with lld. Unlike gold, ld which +# will silently allow text relocations, lld support must be explicit. +# +# See https://crbug.com/911658#c19 for more information. See also +# https://trac.ffmpeg.org/ticket/7878 +ifeq ($(NEEDS_NOTEXT_FIX),yes) +GSTREAMER_LD := $(GSTREAMER_LD) -Wl,-z,notext +endif + +# resolve textrels in the x86 asm +ifeq ($(NEEDS_BSYMBOLIC_FIX),yes) +GSTREAMER_LD := $(GSTREAMER_LD) -Wl,-Bsymbolic +endif + + ################################ # NDK Build Prebuilt library # ################################ |