x264: new package

This package is based on an earlier package
proposed by Ayaka in December 2013.

Signed-off-by: David du Colombier <0intro@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
David du Colombier 2014-10-05 18:29:56 +02:00 committed by Peter Korsgaard
parent e17afee1b9
commit f48a81fed0
4 changed files with 115 additions and 0 deletions

View File

@ -757,6 +757,7 @@ menu "Multimedia"
source "package/libtheora/Config.in"
source "package/live555/Config.in"
source "package/mediastreamer/Config.in"
source "package/x264/Config.in"
endmenu
menu "Networking"

View File

@ -0,0 +1,34 @@
From 716ee56d0b35e512e8e0ae1a3e71f26e65e86be3 Mon Sep 17 00:00:00 2001
From: Janne Grunau <janne-x264@jannau.net>
Date: Sun, 20 Jul 2014 12:55:53 +0200
Subject: [PATCH 01/24] arm: do not append CFLAGS to ASFLAGS
---
configure | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index 0a4cb94..a50f8d5 100755
--- a/configure
+++ b/configure
@@ -296,7 +296,7 @@ opencl="yes"
CFLAGS="$CFLAGS -Wall -I. -I\$(SRCPATH)"
LDFLAGS="$LDFLAGS"
LDFLAGSCLI="$LDFLAGSCLI"
-ASFLAGS="$ASFLAGS"
+ASFLAGS="$ASFLAGS -I. -I\$(SRCPATH)"
RCFLAGS="$RCFLAGS"
HAVE_GETOPT_LONG=1
cross_prefix=""
@@ -752,7 +752,7 @@ if [ $asm = auto -a $ARCH = ARM ] ; then
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
- ASFLAGS="$ASFLAGS $CFLAGS -c"
+ ASFLAGS="$ASFLAGS -c"
else
echo "You specified a pre-ARMv6 or Thumb-1 CPU in your CFLAGS."
echo "If you really want to run on such a CPU, configure with --disable-asm."
--
1.8.3.1

23
package/x264/Config.in Normal file
View File

@ -0,0 +1,23 @@
config BR2_PACKAGE_X264
bool "x264"
depends on BR2_LARGEFILE
help
x264 is a free software library and application for
encoding video streams into the H.264/MPEG-4 AVC
compression format, and is released under the terms
of the GNU GPL.
https://www.videolan.org/developers/x264.html
if BR2_PACKAGE_X264
config BR2_PACKAGE_X264_CLI
bool "CLI"
help
Command-line tool to encode video streams into the
H.264/MPEG-4 AVC compression format.
endif
comment "x264 needs a toolchain w/ largefile"
depends on !BR2_LARGEFILE

57
package/x264/x264.mk Normal file
View File

@ -0,0 +1,57 @@
###############################################################
#
# x264
#
###############################################################
X264_VERSION = 20140930-2245-stable
X264_SOURCE = x264-snapshot-$(X264_VERSION).tar.bz2
X264_SITE = ftp://ftp.videolan.org/pub/videolan/x264/snapshots
X264_LICENSE = GPLv2+
X264_DEPENDENCIES = host-pkgconf
X264_LICENSE_FILES = COPYING
X264_INSTALL_STAGING = YES
ifeq ($(BR2_i386)$(BR2_x86_64),y)
FFMPEG_DEPENDENCIES += host-yasm
else
X264_CONF_OPTS += --disable-asm
endif
ifeq ($(BR2_PREFER_STATIC_LIB),)
X264_CONF_OPTS += --enable-pic --enable-shared
endif
ifeq ($(BR2_PACKAGE_X264_CLI),)
X264_CONF_OPTS += --disable-cli
endif
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),)
X264_CONF_OPTS += --disable-thread
endif
# the configure script is not generated by autoconf
define X264_CONFIGURE_CMDS
(cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure \
--prefix=/usr \
--host="$(GNU_TARGET_NAME)" \
--cross-prefix="$(TARGET_CROSS)" \
--disable-ffms \
--enable-static \
$(X264_CONF_OPTS) \
)
endef
define X264_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
endef
define X264_INSTALL_STAGING_CMDS
$(TARGET_MAKE_ENV) $(MAKE) DESTDIR="$(STAGING_DIR)" -C $(@D) install
endef
define X264_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install
endef
$(eval $(generic-package))