package/mplayer: fix musl build error
PATCH 1/5 package/mplayer: fix musl build error
Fixes
http://autobuild.buildroot.net/results/08e/08ed316677f519c8005928366aea89570527a033/
--- package/mplayer/0006-musl-ldt.patch | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 package/mplayer/0006-musl-ldt.patch
package/mplayer/0006-musl-ldt.patch new file +22 -0
@@ -0,0 +1,22 @@ +Fixes musl build error + +loader/ldt_keeper.o: In function `Setup_LDT_Keeper': +ldt_keeper.c:(.text+0xab): undefined reference to `modify_ldt' + +Downloaded from +https://github.com/dimkr/rlsd2/blob/master/rules/mplayer/musl.patch + +Signed-off-by: Bernd Kuhls <[email protected]> + +diff -rup MPlayer-1.1.1-orig/loader/ldt_keeper.c MPlayer-1.1.1/loader/ldt_keeper.c +--- MPlayer-1.1.1-orig/loader/ldt_keeper.c 2015-04-23 15:07:09.580805888 +0300 ++++ MPlayer-1.1.1/loader/ldt_keeper.c 2015-04-23 15:08:07.736807270 +0300 +@@ -47,7 +47,7 @@ + #if defined(__GLIBC__) && (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ == 0)) + _syscall3( int, modify_ldt, int, func, void *, ptr, unsigned long, bytecount ); + #else +-int modify_ldt(int func, void *ptr, unsigned long bytecount); ++#define modify_ldt(func, ptr, bytecount) syscall(__NR_modify_ldt, func, ptr, bytecount) + #endif + #else + #if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__DragonFly__)
Signature · 1 line
2.11.0
PATCH 2/5 package/mplayer: mmxext requires sse
MPlayer contains mmxext code for which a SSE-enabled CPU is required, for details see https://bugs.funtoo.org/browse/FL-2202
--- package/mplayer/mplayer.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
package/mplayer/mplayer.mk +2 -2
@@ -306,9 +306,9 @@ MPLAYER_CONF_OPTS += \ endif ifeq ($(BR2_X86_CPU_HAS_SSE),y) -MPLAYER_CONF_OPTS += --enable-sse +MPLAYER_CONF_OPTS += --enable-mmxext --enable-sse else -MPLAYER_CONF_OPTS += --disable-sse +MPLAYER_CONF_OPTS += --disable-mmxext --disable-sse endif ifeq ($(BR2_X86_CPU_HAS_SSE2),y)
Signature · 1 line
2.11.0
PATCH 3/5 package/mplayer: fix compilation failure with MMX in libmpcodecs/vf_fspp.c
In reply to Bernd KuhlsCompile error found while fixing
http://autobuild.buildroot.net/results/642/6422adeef19ec547c7bc3f8ad3b0d51702015240/
--- package/mplayer/0007-fixmmx.patch | 77 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 package/mplayer/0007-fixmmx.patch
package/mplayer/0007-fixmmx.patch new file +77 -0
@@ -0,0 +1,77 @@ +fix compilation failure with MMX + +Fixes +libmpcodecs/vf_fspp.c: In function 'column_fidct_c': +libmpcodecs/vf_fspp.c:750:5: error: unknown type name 'int_simd16_t' +libmpcodecs/vf_fspp.c:751:5: error: unknown type name 'int_simd16_t' +libmpcodecs/vf_fspp.c:752:5: error: unknown type name 'int_simd16_t' +libmpcodecs/vf_fspp.c:753:5: error: unknown type name 'int_simd16_t' +libmpcodecs/vf_fspp.c:789:18: error: 'FIX_0_707106781' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:789:18: note: each undeclared identifier is reported only once for each function it appears in +libmpcodecs/vf_fspp.c:804:21: error: 'FIX_1_414213562_A' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:817:18: error: 'FIX_0_382683433' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:818:18: error: 'FIX_0_541196100' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:819:18: error: 'FIX_1_306562965' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:844:21: error: 'FIX_1_414213562' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:845:21: error: 'FIX_1_847759065' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:846:21: error: 'FIX_1_082392200' undeclared (first use in this function) +libmpcodecs/vf_fspp.c:847:21: error: 'FIX_2_613125930' undeclared (first use in this function) + +found using this defconfig after fixing the original bug: +http://autobuild.buildroot.net/results/642/6422adeef19ec547c7bc3f8ad3b0d51702015240/ + +Downloaded from upstream mailinglist: +http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2016-May/073488.html + +Signed-off-by: Bernd Kuhls <[email protected]> + +diff -uNr MPlayer-1.3.0.org/libmpcodecs/vf_fspp.c MPlayer-1.3.0/libmpcodecs/vf_fspp.c +--- MPlayer-1.3.0.org/libmpcodecs/vf_fspp.c 2015-10-17 21:44:31.000000000 +0200 ++++ MPlayer-1.3.0/libmpcodecs/vf_fspp.c 2017-04-10 21:26:57.771819064 +0200 +@@ -173,7 +173,6 @@ + #define store_slice_s store_slice_c + #define store_slice2_s store_slice2_c + #define mul_thrmat_s mul_thrmat_c +-#define column_fidct_s column_fidct_c + #define row_idct_s row_idct_c + #define row_fdct_s row_fdct_c + +@@ -393,7 +392,6 @@ + ); + } + +-static void column_fidct_mmx(int16_t* thr_adr, int16_t *data, int16_t *output, int cnt); + static void row_idct_mmx(int16_t* workspace, + int16_t* output_adr, int output_stride, int cnt); + static void row_fdct_mmx(int16_t *data, const uint8_t *pixels, int line_size, int cnt); +@@ -401,11 +399,18 @@ + #define store_slice_s store_slice_mmx + #define store_slice2_s store_slice2_mmx + #define mul_thrmat_s mul_thrmat_mmx +-#define column_fidct_s column_fidct_mmx + #define row_idct_s row_idct_mmx + #define row_fdct_s row_fdct_mmx + #endif // HAVE_MMX_INLINE + ++#if !HAVE_MMXEXT_INLINE ++static void column_fidct_c(int16_t* thr_adr, int16_t *data, int16_t *output, int cnt); ++#define column_fidct_s column_fidct_c ++#else ++static void column_fidct_mmx(int16_t* thr_adr, int16_t *data, int16_t *output, int cnt); ++#define column_fidct_s column_fidct_mmx ++#endif ++ + static void filter(struct vf_priv_s *p, uint8_t *dst, uint8_t *src, + int dst_stride, int src_stride, + int width, int height, +@@ -728,7 +733,9 @@ + DECLARE_ASM_CONST(8, uint64_t, MM_DESCALE_RND)=C64(4); + DECLARE_ASM_CONST(8, uint64_t, MM_2)=C64(2); + +-#else /* !HAVE_MMXEXT_INLINE */ ++#endif /* !HAVE_MMX_INLINE */ ++ ++#if !HAVE_MMX_INLINE || !HAVE_MMXEXT_INLINE + + typedef int32_t int_simd16_t; + static const int16_t FIX_0_382683433=FIX(0.382683433, 14);
Signature · 1 line
2.11.0
PATCH 4/5 package/mplayer: disable inline mmx
In reply to Bernd KuhlsFixes
http://autobuild.buildroot.net/results/642/6422adeef19ec547c7bc3f8ad3b0d51702015240/
--- package/mplayer/mplayer.mk | 2 ++ 1 file changed, 2 insertions(+)
package/mplayer/mplayer.mk +2 -0
@@ -288,6 +288,8 @@ endif define MPLAYER_DISABLE_INLINE_ASM $(SED) 's,#define HAVE_INLINE_ASM 1,#define HAVE_INLINE_ASM 0,g' \ $(@D)/config.h + $(SED) 's,#define HAVE_MMX_INLINE 1,#define HAVE_MMX_INLINE 0,g' \ + $(@D)/config.h endef ifeq ($(BR2_i386),y)
Signature · 1 line
2.11.0
PATCH 5/5 package/mplayer: disable external mmx
In reply to Bernd KuhlsFixes a follow-up error with this defconfig
http://autobuild.buildroot.net/results/642/6422adeef19ec547c7bc3f8ad3b0d51702015240/
which occurs after disabling inline mmx with the previous patch:
This is the error message:
fmpeg/libavcodec/libavcodec.a(apedec.o): In function `ape_decode_frame':
apedec.c:(.text+0x1df5): undefined reference to avpriv_emms_yasm' ffmpeg/libavcodec/libavcodec.a(asvdec.o): In function decode_frame':
asvdec.c:(.text+0x77c): undefined reference to avpriv_emms_yasm' ffmpeg/libavcodec/libavcodec.a(bink.o): In function decode_frame':
bink.c:(.text+0x2809): undefined reference to avpriv_emms_yasm' ffmpeg/libavcodec/libavcodec.a(dvdec.o): In function dvvideo_decode_frame':
dvdec.c:(.text+0x575): undefined reference to avpriv_emms_yasm' ffmpeg/libavcodec/libavcodec.a(ffv1dec.o): In function decode_slice':
ffv1dec.c:(.text+0x3110): undefined reference to avpriv_emms_yasm' ffmpeg/libavcodec/libavcodec.a(h264.o):h264.c:(.text+0xea8): more undefined references to avpriv_emms_yasm' follow
--- package/mplayer/mplayer.mk | 2 ++ 1 file changed, 2 insertions(+)
package/mplayer/mplayer.mk +2 -0
@@ -290,6 +290,8 @@ define MPLAYER_DISABLE_INLINE_ASM $(@D)/config.h $(SED) 's,#define HAVE_MMX_INLINE 1,#define HAVE_MMX_INLINE 0,g' \ $(@D)/config.h + $(SED) 's,#define HAVE_MMX_EXTERNAL 1,#define HAVE_MMX_EXTERNAL 0,g' \ + $(@D)/config.h endef ifeq ($(BR2_i386),y)
Signature · 1 line
2.11.0
PATCH 1/5 package/mplayer: fix musl build error
In reply to Bernd KuhlsHello,
Quoted 8 lines · Bernd Kuhls
Fixes
http://autobuild.buildroot.net/results/08e/08ed316677f519c8005928366aea89570527a033/Signed-off-by Bernd Kuhls <[email protected]>--- package/mplayer/0006-musl-ldt.patch | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 package/mplayer/0006-musl-ldt.patch
All applied to master. Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/5 package/mplayer: fix musl build error
Quoted 12 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Hello,
Quoted 8 lines · Bernd Kuhls
Fixes
http://autobuild.buildroot.net/results/08e/08ed316677f519c8005928366aea89570527a033/Signed-off-by Bernd Kuhls <[email protected]>---
package/mplayer/0006-musl-ldt.patch| 22 ++++++++++++++++++++++1 file changed, 22 insertions(+)create mode 100644
package/mplayer/0006-musl-ldt.patch
Committed to 2017.02.x, thanks.
Signature · 1 line
Bye, Peter Korsgaard