x264: for x32, disable asm and pass -mx32

We should probably patch it to stop adding the -m argument to CFLAGS/LDFLAGS
in the first place, since we pass it in via CC, but this will do for now.

(From OE-Core rev: 5d2b0816a92965cdbbb2dca5d3009fbd5064b9ca)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Christopher Larson 2016-12-13 20:06:51 -07:00 committed by Richard Purdie
parent 8547e44a0e
commit 602b185811
2 changed files with 54 additions and 0 deletions

View File

@ -0,0 +1,53 @@
From 66b120079fb21ed38cab0900c63360b0a7853eaa Mon Sep 17 00:00:00 2001
From: Christopher Larson <chris_larson@mentor.com>
Date: Tue, 13 Dec 2016 14:22:32 -0700
Subject: [PATCH] Fix X32 build by disabling asm
This applies gentoo's x32 patch, adjusted slightly, which disables asm support
for x32 as well as correcting -m.
Debian has a different patch which does the same, and there's a superior yet
out of date patch series on the x264 list which keeps asm support enabled, but
doesn't successfully build at this time, and my assembly is very rusty.
Upstream-Status: Pending
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
---
configure | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index 3109ec4..844aeae 100755
--- a/configure
+++ b/configure
@@ -703,7 +703,13 @@ case $host_cpu in
AS_EXT=".asm"
ASFLAGS="$ASFLAGS -DARCH_X86_64=1 -I\$(SRCPATH)/common/x86/"
stack_alignment=16
- [ $compiler = GNU ] && CFLAGS="-m64 $CFLAGS" && LDFLAGS="-m64 $LDFLAGS"
+ if [ $compiler = GNU ]; then
+ if cpp_check "" "" "__ILP32__" ; then
+ CFLAGS="-mx32 $CFLAGS" && LDFLAGS="-mx32 $LDFLAGS"
+ else
+ CFLAGS="-m64 $CFLAGS" && LDFLAGS="-m64 $LDFLAGS"
+ fi
+ fi
if [ "$SYS" = MACOSX ]; then
ASFLAGS="$ASFLAGS -f macho64 -DPIC -DPREFIX"
if cc_check '' "-arch x86_64"; then
@@ -722,7 +728,11 @@ case $host_cpu in
RCFLAGS="--target=pe-x86-64 $RCFLAGS"
fi
else
- ASFLAGS="$ASFLAGS -f elf64"
+ if cpp_check "" "" "__ILP32__" ; then
+ asm=no
+ else
+ ASFLAGS="$ASFLAGS -f elf64"
+ fi
fi
;;
powerpc*)
--
2.8.0

View File

@ -10,6 +10,7 @@ DEPENDS = "yasm-native"
SRC_URI = "git://github.com/mirror/x264;branch=stable \
file://don-t-default-to-cortex-a9-with-neon.patch \
file://Fix-X32-build-by-disabling-asm.patch \
"
SRCREV = "86b71982e131eaa70125f8d0e725fcade9c4c677"