From beefbf5f978e534eb6da5263fd4e87d4eb0b505a Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Thu, 2 Nov 2017 10:14:22 -0700 Subject: [PATCH] Workaround for linker warning in latest Android NDK --- external/mpg123-1.25.6.patch | 131 ++++++++++++++++-------------- external/mpg123-1.25.6/Android.mk | 5 ++ 2 files changed, 73 insertions(+), 63 deletions(-) diff --git a/external/mpg123-1.25.6.patch b/external/mpg123-1.25.6.patch index 0884606e..518dc829 100644 --- a/external/mpg123-1.25.6.patch +++ b/external/mpg123-1.25.6.patch @@ -1,6 +1,6 @@ diff -ruN mpg123-1.25.6.orig/android/config.h mpg123-1.25.6/android/config.h --- mpg123-1.25.6.orig/android/config.h 1969-12-31 16:00:00.000000000 -0800 -+++ mpg123-1.25.6/android/config.h 2017-10-18 00:55:57.906177396 -0700 ++++ mpg123-1.25.6/android/config.h 2017-10-23 07:43:01.919907577 -0700 @@ -0,0 +1,478 @@ +/* src/config.h. Generated from config.h.in by configure. */ +/* src/config.h.in. Generated from configure.ac by autoheader. */ @@ -482,7 +482,7 @@ diff -ruN mpg123-1.25.6.orig/android/config.h mpg123-1.25.6/android/config.h +/* #undef uintptr_t */ diff -ruN mpg123-1.25.6.orig/android/mpg123.h mpg123-1.25.6/android/mpg123.h --- mpg123-1.25.6.orig/android/mpg123.h 1969-12-31 16:00:00.000000000 -0800 -+++ mpg123-1.25.6/android/mpg123.h 2017-10-18 00:57:07.438009786 -0700 ++++ mpg123-1.25.6/android/mpg123.h 2017-10-23 07:43:01.919907577 -0700 @@ -0,0 +1,1441 @@ +/* + libmpg123: MPEG Audio Decoder library (version 1.25.6) @@ -1927,8 +1927,8 @@ diff -ruN mpg123-1.25.6.orig/android/mpg123.h mpg123-1.25.6/android/mpg123.h +#endif diff -ruN mpg123-1.25.6.orig/Android.mk mpg123-1.25.6/Android.mk --- mpg123-1.25.6.orig/Android.mk 1969-12-31 16:00:00.000000000 -0800 -+++ mpg123-1.25.6/Android.mk 2017-10-18 01:34:30.879829213 -0700 -@@ -0,0 +1,110 @@ ++++ mpg123-1.25.6/Android.mk 2017-11-02 10:11:23.366221713 -0700 +@@ -0,0 +1,115 @@ +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) @@ -1944,65 +1944,65 @@ diff -ruN mpg123-1.25.6.orig/Android.mk mpg123-1.25.6/Android.mk + +DECODER_SRC_NEON := \ + src/libmpg123/stringbuf.c \ -+ src/libmpg123/icy.c \ -+ src/libmpg123/icy2utf8.c \ -+ src/libmpg123/ntom.c \ -+ src/libmpg123/synth.c \ -+ src/libmpg123/synth_8bit.c \ -+ src/libmpg123/layer1.c \ -+ src/libmpg123/layer2.c \ -+ src/libmpg123/layer3.c \ -+ src/libmpg123/dct36_neon.S \ -+ src/libmpg123/dct64_neon_float.S \ -+ src/libmpg123/synth_neon_float.S \ -+ src/libmpg123/synth_neon_s32.S \ -+ src/libmpg123/synth_stereo_neon_float.S \ -+ src/libmpg123/synth_stereo_neon_s32.S \ -+ src/libmpg123/dct64_neon.S \ -+ src/libmpg123/synth_neon.S \ -+ src/libmpg123/synth_stereo_neon.S \ -+ src/libmpg123/synth_s32.c \ -+ src/libmpg123/synth_real.c \ -+ src/libmpg123/feature.c \ ++ src/libmpg123/icy.c \ ++ src/libmpg123/icy2utf8.c \ ++ src/libmpg123/ntom.c \ ++ src/libmpg123/synth.c \ ++ src/libmpg123/synth_8bit.c \ ++ src/libmpg123/layer1.c \ ++ src/libmpg123/layer2.c \ ++ src/libmpg123/layer3.c \ ++ src/libmpg123/dct36_neon.S \ ++ src/libmpg123/dct64_neon_float.S \ ++ src/libmpg123/synth_neon_float.S \ ++ src/libmpg123/synth_neon_s32.S \ ++ src/libmpg123/synth_stereo_neon_float.S \ ++ src/libmpg123/synth_stereo_neon_s32.S \ ++ src/libmpg123/dct64_neon.S \ ++ src/libmpg123/synth_neon.S \ ++ src/libmpg123/synth_stereo_neon.S \ ++ src/libmpg123/synth_s32.c \ ++ src/libmpg123/synth_real.c \ ++ src/libmpg123/feature.c \ + +DECODER_CFLAGS_X86 := -DOPT_MULTI -DOPT_GENERIC -DOPT_GENERIC_DITHER -DOPT_I386 -DOPT_I586 -DOPT_I586_DITHER -DOPT_MMX -DOPT_3DNOW -DOPT_3DNOW_VINTAGE -DOPT_3DNOWEXT -DOPT_3DNOWEXT_VINTAGE -DOPT_SSE -DOPT_SSE_VINTAGE -DREAL_IS_FLOAT + +DECODER_SRC_X86 := \ + src/libmpg123/stringbuf.c \ -+ src/libmpg123/icy.c \ -+ src/libmpg123/icy2utf8.c \ -+ src/libmpg123/ntom.c \ -+ src/libmpg123/synth.c \ -+ src/libmpg123/synth_8bit.c \ -+ src/libmpg123/layer1.c \ -+ src/libmpg123/layer2.c \ -+ src/libmpg123/layer3.c \ -+ src/libmpg123/synth_s32.c \ -+ src/libmpg123/synth_real.c \ -+ src/libmpg123/dct64_i386.c \ -+ src/libmpg123/synth_i586.S \ -+ src/libmpg123/synth_i586_dither.S \ -+ src/libmpg123/dct64_mmx.S \ -+ src/libmpg123/tabinit_mmx.S \ -+ src/libmpg123/synth_mmx.S \ -+ src/libmpg123/synth_3dnow.S \ -+ src/libmpg123/dct64_3dnow.S \ -+ src/libmpg123/equalizer_3dnow.S \ -+ src/libmpg123/dct36_3dnow.S \ -+ src/libmpg123/dct64_3dnowext.S \ -+ src/libmpg123/synth_3dnowext.S \ -+ src/libmpg123/dct36_3dnowext.S \ -+ src/libmpg123/dct64_sse_float.S \ -+ src/libmpg123/synth_sse_float.S \ -+ src/libmpg123/synth_stereo_sse_float.S \ -+ src/libmpg123/synth_sse_s32.S \ -+ src/libmpg123/synth_stereo_sse_s32.S \ -+ src/libmpg123/dct36_sse.S \ -+ src/libmpg123/dct64_sse.S \ -+ src/libmpg123/synth_sse.S \ -+ src/libmpg123/getcpuflags.S \ -+ src/libmpg123/dither.c \ -+ src/libmpg123/feature.c \ ++ src/libmpg123/icy.c \ ++ src/libmpg123/icy2utf8.c \ ++ src/libmpg123/ntom.c \ ++ src/libmpg123/synth.c \ ++ src/libmpg123/synth_8bit.c \ ++ src/libmpg123/layer1.c \ ++ src/libmpg123/layer2.c \ ++ src/libmpg123/layer3.c \ ++ src/libmpg123/synth_s32.c \ ++ src/libmpg123/synth_real.c \ ++ src/libmpg123/dct64_i386.c \ ++ src/libmpg123/synth_i586.S \ ++ src/libmpg123/synth_i586_dither.S \ ++ src/libmpg123/dct64_mmx.S \ ++ src/libmpg123/tabinit_mmx.S \ ++ src/libmpg123/synth_mmx.S \ ++ src/libmpg123/synth_3dnow.S \ ++ src/libmpg123/dct64_3dnow.S \ ++ src/libmpg123/equalizer_3dnow.S \ ++ src/libmpg123/dct36_3dnow.S \ ++ src/libmpg123/dct64_3dnowext.S \ ++ src/libmpg123/synth_3dnowext.S \ ++ src/libmpg123/dct36_3dnowext.S \ ++ src/libmpg123/dct64_sse_float.S \ ++ src/libmpg123/synth_sse_float.S \ ++ src/libmpg123/synth_stereo_sse_float.S \ ++ src/libmpg123/synth_sse_s32.S \ ++ src/libmpg123/synth_stereo_sse_s32.S \ ++ src/libmpg123/dct36_sse.S \ ++ src/libmpg123/dct64_sse.S \ ++ src/libmpg123/synth_sse.S \ ++ src/libmpg123/getcpuflags.S \ ++ src/libmpg123/dither.c \ ++ src/libmpg123/feature.c \ + +ifeq ($(TARGET_ARCH_ABI),armeabi) +DECODER_CFLAGS := $(DECODER_CFLAGS_NEON) @@ -2019,17 +2019,22 @@ diff -ruN mpg123-1.25.6.orig/Android.mk mpg123-1.25.6/Android.mk + +LOCAL_CFLAGS := $(DECODER_CFLAGS) + ++# This disables the following warning: ++# warning: shared library text segment is not shareable ++# However, the library still has PIC unaware assembly! ++LOCAL_DISABLE_FATAL_LINKER_WARNINGS = true ++ +LOCAL_SRC_FILES := \ + src/libmpg123/parse.c \ -+ src/libmpg123/frame.c \ ++ src/libmpg123/frame.c \ + src/libmpg123/format.c \ -+ src/libmpg123/dct64.c \ ++ src/libmpg123/dct64.c \ + src/libmpg123/equalizer.c \ -+ src/libmpg123/id3.c \ ++ src/libmpg123/id3.c \ + src/libmpg123/optimize.c \ -+ src/libmpg123/readers.c \ ++ src/libmpg123/readers.c \ + src/libmpg123/tabinit.c \ -+ src/libmpg123/libmpg123.c \ ++ src/libmpg123/libmpg123.c \ + src/libmpg123/index.c \ + src/compat/compat_str.c \ + src/compat/compat.c \ diff --git a/external/mpg123-1.25.6/Android.mk b/external/mpg123-1.25.6/Android.mk index 9a905d3c..c253316d 100644 --- a/external/mpg123-1.25.6/Android.mk +++ b/external/mpg123-1.25.6/Android.mk @@ -88,6 +88,11 @@ endif LOCAL_CFLAGS := $(DECODER_CFLAGS) +# This disables the following warning: +# warning: shared library text segment is not shareable +# However, the library still has PIC unaware assembly! +LOCAL_DISABLE_FATAL_LINKER_WARNINGS = true + LOCAL_SRC_FILES := \ src/libmpg123/parse.c \ src/libmpg123/frame.c \