libmpeg2: add patch to fix build on ARMv7-M
PATCH 1/1 libmpeg2: add patch to fix build on ARMv7-M
This commit adds a patch to libmpeg2 that improves the ARM detection to not use the optimized ARM code on ARMv7-M architectures.
Fixes:
http://autobuild.buildroot.net/results/9c44de035ce81c6cc8a92ea8bad4def25cd99cd0
Signed-off-by Thomas Petazzoni <[email protected]>
--- package/libmpeg2/0003-fix-arm-detection.patch | 39 +++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 package/libmpeg2/0003-fix-arm-detection.patch
package/libmpeg2/0003-fix-arm-detection.patch new file +39 -0
@@ -0,0 +1,39 @@ +Improve the ARM detection to work on Thumb-only architecture + +The ARM-specific assembly code doesn't build on Thumb-only +architectures such as ARMv7-M, but the configure script assumes that +if the host tuple is arm*, then it can build and use the ARM optimized +code. + +This patch improves the configure.ac detection logic, by building one +of the instruction of the optimized assembly code, and using this to +decide whether or not the optimizations should be enabled. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/configure.ac +=================================================================== +--- a/configure.ac ++++ b/configure.ac +@@ -101,8 +101,10 @@ + alpha*) + AC_DEFINE([ARCH_ALPHA],,[alpha architecture]);; + arm*) +- arm_conditional=: +- AC_DEFINE([ARCH_ARM],,[ARM architecture]);; ++ AC_TRY_LINK([], [asm(".syntax divided\nstmfd sp!,{r4-r11,lr}")], ++ [AC_DEFINE([ARCH_ARM],,[ARM architecture]) ++ use_arm_optimization=yes], ++ [use_arm_optimization=no]) + esac + elif test x"$CC" = x"tendracc"; then + dnl TenDRA portability checking compiler +@@ -122,7 +124,7 @@ + esac + fi + +-AM_CONDITIONAL(ARCH_ARM, ${arm_conditional}) ++AM_CONDITIONAL(ARCH_ARM, test "${use_arm_optimization}" = "yes") + + dnl Checks for libtool - this must be done after we set cflags + AC_LIBTOOL_WIN32_DLL
Signature · 1 line
2.7.4
Thomas Petazzoni
AppliedPATCH 1/1 libmpeg2: add patch to fix build on ARMv7-M
Hello,
Quoted 5 lines · Thomas Petazzoni
This commit adds a patch to libmpeg2 that improves the ARM detection to not use the optimized ARM code on ARMv7-M architectures.
Fixes:
Quoted 7 lines
http://autobuild.buildroot.net/results/9c44de035ce81c6cc8a92ea8bad4def25cd99cd0
Signed-off-by Thomas Petazzoni <[email protected]>--- package/libmpeg2/0003-fix-arm-detection.patch | 39 +++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 package/libmpeg2/0003-fix-arm-detection.patch
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com