From ebf3a6117c58422ee9e7af99a37b671b1e301c68 Mon Sep 17 00:00:00 2001 From: Bernd Kuhls Date: Tue, 11 Aug 2015 20:16:47 +0200 Subject: [PATCH] package/libyuv: new package [Thomas: fix license, it's BSD-3c, not BSD-4c.] Signed-off-by: Bernd Kuhls Signed-off-by: Thomas Petazzoni --- package/Config.in | 1 + package/libyuv/0001-i386-sse2.patch | 16 ++++++++++++++++ package/libyuv/Config.in | 12 ++++++++++++ package/libyuv/libyuv.mk | 18 ++++++++++++++++++ 4 files changed, 47 insertions(+) create mode 100644 package/libyuv/0001-i386-sse2.patch create mode 100644 package/libyuv/Config.in create mode 100644 package/libyuv/libyuv.mk diff --git a/package/Config.in b/package/Config.in index 69abc78b22..810f4aeea0 100644 --- a/package/Config.in +++ b/package/Config.in @@ -955,6 +955,7 @@ menu "Multimedia" source "package/libplayer/Config.in" source "package/libtheora/Config.in" source "package/live555/Config.in" + source "package/libyuv/Config.in" source "package/mediastreamer/Config.in" source "package/x264/Config.in" endmenu diff --git a/package/libyuv/0001-i386-sse2.patch b/package/libyuv/0001-i386-sse2.patch new file mode 100644 index 0000000000..b8ecb34d0f --- /dev/null +++ b/package/libyuv/0001-i386-sse2.patch @@ -0,0 +1,16 @@ +Fix compilation on non-sse2 platforms + +Signed-off-by: Bernd Kuhls + +diff -uNr libyuv-1411.org/include/libyuv/scale_row.h libyuv-1411/include/libyuv/scale_row.h +--- libyuv-1411.org/include/libyuv/scale_row.h 2015-05-22 23:39:21.000000000 +0200 ++++ libyuv-1411/include/libyuv/scale_row.h 2015-05-25 12:35:17.000000000 +0200 +@@ -33,7 +33,7 @@ + + // The following are available on all x86 platforms: + #if !defined(LIBYUV_DISABLE_X86) && \ +- (defined(_M_IX86) || defined(__x86_64__) || defined(__i386__)) ++ (defined(_M_IX86) || defined(__x86_64__) || (defined(__i386__) && defined(__SSE2__))) + #define HAS_FIXEDDIV1_X86 + #define HAS_FIXEDDIV_X86 + #define HAS_SCALEADDROWS_SSE2 diff --git a/package/libyuv/Config.in b/package/libyuv/Config.in new file mode 100644 index 0000000000..29dcaa44ed --- /dev/null +++ b/package/libyuv/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBYUV + bool "libyuv" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + help + libyuv is an open source project that includes YUV scaling + and conversion functionality. + + https://code.google.com/p/libyuv + +comment "libyuv needs a toolchain w/ C++, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS diff --git a/package/libyuv/libyuv.mk b/package/libyuv/libyuv.mk new file mode 100644 index 0000000000..c00bc05c0a --- /dev/null +++ b/package/libyuv/libyuv.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# libyuv +# +################################################################################ + +LIBYUV_VERSION = 1ebf86795cb213a37f06eb1ef3713cff080568ea +# we use the FreeSwitch fork because there is currently no alternative +# for https://chromium.googlesource.com/libyuv/libyuv which will be +# deactivated in 2015. +LIBYUV_SITE = https://freeswitch.org/stash/scm/sd/libyuv.git +LIBYUV_SITE_METHOD = git +LIBYUV_LICENSE = BSD-3c +LIBYUV_LICENSE_FILES = LICENSE +LIBYUV_INSTALL_STAGING = YES +LIBYUV_DEPENDENCIES = $(if $(BR2_PACKAGE_JPEG),jpeg) + +$(eval $(cmake-package)) -- 2.30.2