From eb8dc40360f0cfef56fb6947cc817a547d6d9bc6 Mon Sep 17 00:00:00 2001 From: Dave Cobbley Date: Tue, 14 Aug 2018 10:05:37 -0700 Subject: [Subtree] Removing import-layers directory As part of the move to subtrees, need to bring all the import layers content to the top level. Change-Id: I4a163d10898cbc6e11c27f776f60e1a470049d8f Signed-off-by: Dave Cobbley Signed-off-by: Brad Bishop --- .../x264/x264/Fix-X32-build-by-disabling-asm.patch | 53 +++++++++++++++++++++ .../don-t-default-to-cortex-a9-with-neon.patch | 33 +++++++++++++ poky/meta/recipes-multimedia/x264/x264_git.bb | 55 ++++++++++++++++++++++ 3 files changed, 141 insertions(+) create mode 100644 poky/meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch create mode 100644 poky/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch create mode 100644 poky/meta/recipes-multimedia/x264/x264_git.bb (limited to 'poky/meta/recipes-multimedia/x264') diff --git a/poky/meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch b/poky/meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch new file mode 100644 index 000000000..087a448ee --- /dev/null +++ b/poky/meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch @@ -0,0 +1,53 @@ +From 66b120079fb21ed38cab0900c63360b0a7853eaa Mon Sep 17 00:00:00 2001 +From: Christopher Larson +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 +--- + 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 + diff --git a/poky/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch b/poky/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch new file mode 100644 index 000000000..065e3b35b --- /dev/null +++ b/poky/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch @@ -0,0 +1,33 @@ +From a72bf499a0674fc75eedf15008b424e28f67e4bd Mon Sep 17 00:00:00 2001 +From: Andrei Gherzan +Date: Fri, 2 Feb 2018 15:10:08 +0200 +Subject: [PATCH] dont default to cortex-a9 with neon + +-march flag is not in CFLAGS so this will always default to + -mcpu=cortex-a8 -mfpu=neon. + +Upstream-Status: Pending + +Signed-off-by: Andrei Gherzan +Signed-off-by: Maxin B. John +--- + configure | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/configure b/configure +index 0e3ef23..955b993 100755 +--- a/configure ++++ b/configure +@@ -911,9 +911,6 @@ if [ $asm = auto -a \( $ARCH = X86 -o $ARCH = X86_64 \) ] ; then + fi + + if [ $asm = auto -a $ARCH = ARM ] ; then +- # set flags so neon is built by default +- [ $compiler == CL ] || echo $CFLAGS | grep -Eq '(-mcpu|-march|-mfpu)' || CFLAGS="$CFLAGS -mcpu=cortex-a8 -mfpu=neon" +- + cc_check '' '' '__asm__("add r0, r1, r2");' && define HAVE_ARM_INLINE_ASM + if [ $compiler = CL ] && cpp_check '' '' 'defined(_M_ARM) && _M_ARM >= 7' ; then + define HAVE_ARMV6 +-- +2.4.0 + diff --git a/poky/meta/recipes-multimedia/x264/x264_git.bb b/poky/meta/recipes-multimedia/x264/x264_git.bb new file mode 100644 index 000000000..c445d15e6 --- /dev/null +++ b/poky/meta/recipes-multimedia/x264/x264_git.bb @@ -0,0 +1,55 @@ +SUMMARY = "H.264/MPEG-4 AVC video encoder" +DESCRIPTION = "A free software library and application for encoding video streams into the H.264/MPEG-4 AVC format." +HOMEPAGE = "http://www.videolan.org/developers/x264.html" + +LICENSE = "GPLv2" +LICENSE_FLAGS = "commercial" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +DEPENDS = "nasm-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 \ + " +UPSTREAM_CHECK_COMMITS = "1" + +SRCREV = "e9a5903edf8ca59ef20e6f4894c196f135af735e" + +PV = "r2854+git${SRCPV}" + +S = "${WORKDIR}/git" + +inherit lib_package pkgconfig perlnative + +X264_DISABLE_ASM = "" +X264_DISABLE_ASM_armv4 = "--disable-asm" +X264_DISABLE_ASM_armv5 = "--disable-asm" +X264_DISABLE_ASM_powerpc = "${@bb.utils.contains("TUNE_FEATURES", "spe", "--disable-asm", "", d)}" +X264_DISABLE_ASM_mipsarch = "${@bb.utils.contains("TUNE_FEATURES", "r6", "", "--disable-asm", d)}" + +EXTRA_OECONF = '--prefix=${prefix} \ + --host=${HOST_SYS} \ + --libdir=${libdir} \ + --cross-prefix=${TARGET_PREFIX} \ + --sysroot=${STAGING_DIR_TARGET} \ + --enable-shared \ + --enable-static \ + --disable-lavf \ + --disable-swscale \ + --disable-opencl \ + --enable-pic \ + ${X264_DISABLE_ASM} \ + ' + +do_configure() { + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S} + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S} + ./configure ${EXTRA_OECONF} +} + +do_install() { + oe_runmake install DESTDIR=${D} +} + +AS[unexport] = "1" -- cgit v1.2.3