x264: Update to latest on stable branch

Message ID 20161108052325.11907-1-raj.khem@gmail.com
State Superseded
Headers show

Commit Message

Khem Raj Nov. 8, 2016, 5:23 a.m.
- Switch URI to use github mirror for reliabality
- Disable openCL code, its not used
- TEXTRELs are fixed, therefore dont skip QA check

Signed-off-by: Khem Raj <raj.khem@gmail.com>

---
 .../x264/x264/don-t-default-to-cortex-a9-with-neon.patch    | 13 ++-----------
 meta/recipes-multimedia/x264/x264_git.bb                    |  9 +++------
 2 files changed, 5 insertions(+), 17 deletions(-)

-- 
2.10.2

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Comments

Ross Burton Nov. 8, 2016, 11:07 a.m. | #1
On 8 November 2016 at 05:23, Khem Raj <raj.khem@gmail.com> wrote:

> - Switch URI to use github mirror for reliabality

> - Disable openCL code, its not used

> - TEXTRELs are fixed, therefore dont skip QA check

>

> Signed-off-by: Khem Raj <raj.khem@gmail.com>

>


Breaking here for x86-64.

configure output:

DEBUG: Executing shell function do_configure
Unknown option --disable-static, ignored
Found x86_64-poky-linux-gcc (GCC) 6.2.0
Minimum version is yasm-1.2.0
If you really want to compile without asm, configure with --disable-asm.
WARNING: exit code 1 from a shell command.

config.log:

x264 configure script
Command line options: "--prefix=/usr" "--host=x86_64-poky-linux"
"--libdir=/usr/lib" "--cross-prefix=x86_64-poky-linux-"
"--sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64"
"--enable-shared" "--enable-static" "--disable-lavf" "--disable-swscale"
"--disable-opencl" "--enable-pic" "--disable-static"

checking whether x86_64-poky-linux-gcc  -m64 -march=corei7 -mtune=corei7
-mfpmath=sse -msse4.2
--sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64 works... yes
checking whether x86_64-poky-linux-gcc  -m64 -march=corei7 -mtune=corei7
-mfpmath=sse -msse4.2
--sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64 supports
for( int i = 0; i < 9; i++ ); with -std=gnu99... yes
checking for -mpreferred-stack-boundary=5... yes
checking whether x86_64-poky-linux-gcc supports vpmovzxwd ymm0, xmm0... no
Failed commandline was:
--------------------------------------------------
x86_64-poky-linux-gcc conftest.asm  -I. -I$(SRCPATH) -DARCH_X86_64=1
-I$(SRCPATH)/common/x86/ -f elf64  -o conftest.o
x86_64-poky-linux-gcc: error: elf64: No such file or directory
x86_64-poky-linux-gcc: error: unrecognized command line option '-f'
--------------------------------------------------
Failed program was:
--------------------------------------------------
vpmovzxwd ymm0, xmm0
--------------------------------------------------

Ah, looks like the configure is respecting the AS environment variable that
we set to 'as' in bitbake.conf, but it really actually wants yasm.  I added
AS[unexport] = 1 to the recipe and it appears to work now for me.  Can you
verify that it still works on the architectures you care about?

Ross
-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Khem Raj Nov. 8, 2016, 2:37 p.m. | #2
On Tue, Nov 8, 2016 at 3:07 AM, Burton, Ross <ross.burton@intel.com> wrote:
>

> On 8 November 2016 at 05:23, Khem Raj <raj.khem@gmail.com> wrote:

>>

>> - Switch URI to use github mirror for reliabality

>> - Disable openCL code, its not used

>> - TEXTRELs are fixed, therefore dont skip QA check

>>

>> Signed-off-by: Khem Raj <raj.khem@gmail.com>

>

>

> Breaking here for x86-64.

>

> configure output:

>

> DEBUG: Executing shell function do_configure

> Unknown option --disable-static, ignored

> Found x86_64-poky-linux-gcc (GCC) 6.2.0

> Minimum version is yasm-1.2.0

> If you really want to compile without asm, configure with --disable-asm.

> WARNING: exit code 1 from a shell command.

>

> config.log:

>

> x264 configure script

> Command line options: "--prefix=/usr" "--host=x86_64-poky-linux"

> "--libdir=/usr/lib" "--cross-prefix=x86_64-poky-linux-"

> "--sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64"

> "--enable-shared" "--enable-static" "--disable-lavf" "--disable-swscale"

> "--disable-opencl" "--enable-pic" "--disable-static"

>

> checking whether x86_64-poky-linux-gcc  -m64 -march=corei7 -mtune=corei7

> -mfpmath=sse -msse4.2

> --sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64 works... yes

> checking whether x86_64-poky-linux-gcc  -m64 -march=corei7 -mtune=corei7

> -mfpmath=sse -msse4.2

> --sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64 supports for(

> int i = 0; i < 9; i++ ); with -std=gnu99... yes

> checking for -mpreferred-stack-boundary=5... yes

> checking whether x86_64-poky-linux-gcc supports vpmovzxwd ymm0, xmm0... no

> Failed commandline was:

> --------------------------------------------------

> x86_64-poky-linux-gcc conftest.asm  -I. -I$(SRCPATH) -DARCH_X86_64=1

> -I$(SRCPATH)/common/x86/ -f elf64  -o conftest.o

> x86_64-poky-linux-gcc: error: elf64: No such file or directory

> x86_64-poky-linux-gcc: error: unrecognized command line option '-f'

> --------------------------------------------------

> Failed program was:

> --------------------------------------------------

> vpmovzxwd ymm0, xmm0

> --------------------------------------------------

>

> Ah, looks like the configure is respecting the AS environment variable that

> we set to 'as' in bitbake.conf, but it really actually wants yasm.  I added

> AS[unexport] = 1 to the recipe and it appears to work now for me.  Can you

> verify that it still works on the architectures you care about?


recipe is setting AS too here ,so that must be removed as well. I will send a V2

>

> Ross

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch b/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch
index bf72fca..73f2aac 100644
--- a/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch
+++ b/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch
@@ -5,10 +5,10 @@  Upstream-Status: Pending
 Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
 
 diff --git a/configure b/configure
-index 2916036..f4ece40 100755
+index 9d1586c..3109ec4 100755
 --- a/configure
 +++ b/configure
-@@ -773,9 +773,6 @@ if [ $asm = auto -a \( $ARCH = X86 -o $ARCH = X86_64 \) ] ; then
+@@ -874,9 +874,6 @@ if [ $asm = auto -a \( $ARCH = X86 -o $ARCH = X86_64 \) ] ; then
  fi
  
  if [ $asm = auto -a $ARCH = ARM ] ; then
@@ -18,12 +18,3 @@  index 2916036..f4ece40 100755
      if  cc_check '' '' '__asm__("rev ip, ip");' ; then      define HAVE_ARMV6
          cc_check '' '' '__asm__("movt r0, #0");'         && define HAVE_ARMV6T2
          cc_check '' '' '__asm__("vadd.i16 q0, q0, q0");' && define HAVE_NEON
-@@ -788,8 +785,6 @@ if [ $asm = auto -a $ARCH = ARM ] ; then
- fi
- 
- if [ $asm = auto -a $ARCH = AARCH64 ] ; then
--    # set flags so neon is built by default
--    echo $CFLAGS | grep -Eq '(-mcpu|-march|-mfpu|-arch)' || CFLAGS="$CFLAGS -arch arm64 -mfpu=neon"
- 
-     if  cc_check '' '' '__asm__("cmeq v0.8h, v0.8h, #0");' ; then define HAVE_NEON
-         ASFLAGS="$ASFLAGS -c"
diff --git a/meta/recipes-multimedia/x264/x264_git.bb b/meta/recipes-multimedia/x264/x264_git.bb
index 393310f..8a239e1 100644
--- a/meta/recipes-multimedia/x264/x264_git.bb
+++ b/meta/recipes-multimedia/x264/x264_git.bb
@@ -8,11 +8,11 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 
 DEPENDS = "yasm-native"
 
-SRC_URI = "git://git.videolan.org/x264.git \
+SRC_URI = "git://github.com/mirror/x264;branch=stable \
            file://don-t-default-to-cortex-a9-with-neon.patch \
            "
 
-SRCREV = "c8a773ebfca148ef04f5a60d42cbd7336af0baf6"
+SRCREV = "86b71982e131eaa70125f8d0e725fcade9c4c677"
 
 PV = "r2491+git${SRCPV}"
 
@@ -34,6 +34,7 @@  EXTRA_OECONF = '--prefix=${prefix} \
                 --enable-static \
                 --disable-lavf \
                 --disable-swscale \
+                --disable-opencl \
                 --enable-pic \
                 ${X264_DISABLE_ASM} \
                '
@@ -47,7 +48,3 @@  AS = "${TARGET_PREFIX}gcc"
 do_install() {
     oe_runmake install DESTDIR=${D}
 }
-
-# PIC can't be enabled for few BSP's
-INSANE_SKIP_${PN}_append = " textrel"
-