Patchwork [v9,11/14] libvpx: new package libvpx

login
register
mail settings
Submitter Spenser Gilliland
Date May 30, 2013, 4:30 p.m.
Message ID <1369931437-12445-12-git-send-email-spenser@gillilanding.com>
Download mbox | patch
Permalink /patch/247654/
State Accepted
Headers show

Comments

Spenser Gilliland - May 30, 2013, 4:30 p.m.
adds webm multimedia support and the VP8 encoder/decoder library.

http://www.webmproject.org/

Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/multimedia/Config.in        |    1 +
 package/multimedia/libvpx/Config.in |    6 ++++
 package/multimedia/libvpx/libvpx.mk |   53 +++++++++++++++++++++++++++++++++++
 3 files changed, 60 insertions(+)
 create mode 100644 package/multimedia/libvpx/Config.in
 create mode 100644 package/multimedia/libvpx/libvpx.mk
Peter Korsgaard - May 30, 2013, 7:26 p.m.
>>>>> "Spenser" == Spenser Gilliland <spenser@gillilanding.com> writes:

 Spenser> adds webm multimedia support and the VP8 encoder/decoder library.
 Spenser> http://www.webmproject.org/

 Spenser> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
 Spenser> ---
 Spenser>  package/multimedia/Config.in        |    1 +
 Spenser>  package/multimedia/libvpx/Config.in |    6 ++++
 Spenser>  package/multimedia/libvpx/libvpx.mk |   53 +++++++++++++++++++++++++++++++++++
 Spenser>  3 files changed, 60 insertions(+)
 Spenser>  create mode 100644 package/multimedia/libvpx/Config.in
 Spenser>  create mode 100644 package/multimedia/libvpx/libvpx.mk

 Spenser> diff --git a/package/multimedia/Config.in b/package/multimedia/Config.in
 Spenser> index d0594b9..a0927e9 100644
 Spenser> --- a/package/multimedia/Config.in
 Spenser> +++ b/package/multimedia/Config.in
 Spenser> @@ -20,6 +20,7 @@ source "package/multimedia/gst1-plugins-bad/Config.in"
 Spenser>  source "package/multimedia/gst-plugins-ugly/Config.in"
 Spenser>  source "package/multimedia/gst1-plugins-ugly/Config.in"
 Spenser>  source "package/multimedia/lame/Config.in"
 Spenser> +source "package/multimedia/libvpx/Config.in"
 Spenser>  source "package/multimedia/madplay/Config.in"
 Spenser>  source "package/multimedia/mpd/Config.in"
 Spenser>  source "package/multimedia/mpg123/Config.in"
 Spenser> diff --git a/package/multimedia/libvpx/Config.in b/package/multimedia/libvpx/Config.in
 Spenser> new file mode 100644
 Spenser> index 0000000..2327971
 Spenser> --- /dev/null
 Spenser> +++ b/package/multimedia/libvpx/Config.in
 Spenser> @@ -0,0 +1,6 @@
 Spenser> +config BR2_PACKAGE_LIBVPX
 Spenser> +	bool "libvpx"
 Spenser> +	help
 Spenser> +	  a high-quality, open video format that's freely available to everyone.
 Spenser> +
 Spenser> +	  http://webmproject.org
 Spenser> diff --git a/package/multimedia/libvpx/libvpx.mk b/package/multimedia/libvpx/libvpx.mk
 Spenser> new file mode 100644
 Spenser> index 0000000..964d98a
 Spenser> --- /dev/null
 Spenser> +++ b/package/multimedia/libvpx/libvpx.mk
 Spenser> @@ -0,0 +1,53 @@
 Spenser> +#############################################################
 Spenser> +#
 Spenser> +# libvpx
 Spenser> +#
 Spenser> +#############################################################
 Spenser> +
 Spenser> +LIBVPX_VERSION = v1.2.0
 Spenser> +LIBVPX_SITE = http://git.chromium.org/webm/libvpx.git
 Spenser> +LIBVPX_SITE_METHOD = git
 Spenser> +
 Spenser> +LIBVPX_LICENSE = BSD-3c 
 Spenser> +LIBVPX_LICENSE_FILES = LICENSE PATENTS 

Trailing spaces. Otherwise looks good, committed to next - Thanks.

Patch

diff --git a/package/multimedia/Config.in b/package/multimedia/Config.in
index d0594b9..a0927e9 100644
--- a/package/multimedia/Config.in
+++ b/package/multimedia/Config.in
@@ -20,6 +20,7 @@  source "package/multimedia/gst1-plugins-bad/Config.in"
 source "package/multimedia/gst-plugins-ugly/Config.in"
 source "package/multimedia/gst1-plugins-ugly/Config.in"
 source "package/multimedia/lame/Config.in"
+source "package/multimedia/libvpx/Config.in"
 source "package/multimedia/madplay/Config.in"
 source "package/multimedia/mpd/Config.in"
 source "package/multimedia/mpg123/Config.in"
diff --git a/package/multimedia/libvpx/Config.in b/package/multimedia/libvpx/Config.in
new file mode 100644
index 0000000..2327971
--- /dev/null
+++ b/package/multimedia/libvpx/Config.in
@@ -0,0 +1,6 @@ 
+config BR2_PACKAGE_LIBVPX
+	bool "libvpx"
+	help
+	  a high-quality, open video format that's freely available to everyone.
+
+	  http://webmproject.org
diff --git a/package/multimedia/libvpx/libvpx.mk b/package/multimedia/libvpx/libvpx.mk
new file mode 100644
index 0000000..964d98a
--- /dev/null
+++ b/package/multimedia/libvpx/libvpx.mk
@@ -0,0 +1,53 @@ 
+#############################################################
+#
+# libvpx
+#
+#############################################################
+
+LIBVPX_VERSION = v1.2.0
+LIBVPX_SITE = http://git.chromium.org/webm/libvpx.git
+LIBVPX_SITE_METHOD = git
+
+LIBVPX_LICENSE = BSD-3c 
+LIBVPX_LICENSE_FILES = LICENSE PATENTS 
+
+LIBVPX_INSTALL_STAGING = YES
+
+# ld is being used with cc options. therefore, pretend ld is cc.
+LIBVPX_CONF_ENV = \
+	LD="$(TARGET_CC)" \
+	CROSS=$(GNU_TARGET_NAME)
+
+LIBVPX_CONF_OPT = \
+	--disable-examples \
+	--disable-docs \
+	--disable-unit-tests
+
+# This is not a true autotools package.  It is based on the ffmpeg build system
+define LIBVPX_CONFIGURE_CMDS
+	(cd $(LIBVPX_SRCDIR) && rm -rf config.cache && \
+	$(TARGET_CONFIGURE_OPTS) \
+	$(TARGET_CONFIGURE_ARGS) \
+	$(LIBVPX_CONF_ENV) \
+	./configure \
+		--target=generic-gnu \
+		--enable-pic \
+		--prefix=/usr \
+		$(SHARED_STATIC_LIBS_OPTS) \
+		$(LIBVPX_CONF_OPT) \
+	)
+endef
+
+define LIBVPX_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(LIBVPX_MAKE_ENV) $(MAKE) -C $(@D) all
+endef
+
+define LIBVPX_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(LIBVPX_MAKE_ENV) $(MAKE) DESTDIR="$(STAGING_DIR)" -C $(@D) install
+endef
+
+define LIBVPX_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(LIBVPX_MAKE_ENV) $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install
+endef
+
+$(eval $(generic-package))