Commit f48a81fe authored by David du Colombier's avatar David du Colombier Committed by Peter Korsgaard
Browse files

x264: new package



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

Signed-off-by: default avatarDavid du Colombier <0intro@gmail.com>
Signed-off-by: default avatarPeter Korsgaard <peter@korsgaard.com>
parent e17afee1
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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"
+34 −0
Original line number Diff line number Diff line
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

package/x264/Config.in

0 → 100644
+23 −0
Original line number Diff line number Diff line
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

package/x264/x264.mk

0 → 100644
+57 −0
Original line number Diff line number Diff line
###############################################################
#
# 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))