[packages/chromium-browser/DEVEL] enable system libvpx, but not in media/ component

glen glen at pld-linux.org
Wed Mar 6 14:55:46 CET 2013


commit 41d6a4b1893037d77dd444ca2ae133b8685e23bd
Author: Elan Ruusamäe <glen at delfi.ee>
Date:   Wed Mar 6 15:53:58 2013 +0200

    enable system libvpx, but not in media/ component
    
    updated libvpx patch from svn backport, http://crbug.com/174287

 chromium-browser.spec | 12 ++++---
 system-ffmpeg.patch   | 12 -------
 system-libvpx.patch   | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 100 insertions(+), 17 deletions(-)
---
diff --git a/chromium-browser.spec b/chromium-browser.spec
index 376e0ea..4849205 100644
--- a/chromium-browser.spec
+++ b/chromium-browser.spec
@@ -31,7 +31,7 @@
 %bcond_with		system_sqlite	# system sqlite
 %bcond_without	system_libsrtp	# system srtp (can be used if using bundled libjingle)
 %bcond_with		system_v8		# system v8
-%bcond_with		system_libvpx	# system libvpx
+%bcond_without	system_libvpx	# system libvpx
 %bcond_without	system_yasm		# system yasm
 %bcond_without	system_zlib		# system zlib
 %bcond_without	tcmalloc		# use tcmalloc
@@ -74,7 +74,7 @@ Version:	%{branch}.%{patchver}
 %else
 Version:	%{branch}.%{basever}
 %endif
-Release:	0.31
+Release:	0.32
 License:	BSD, LGPL v2+ (ffmpeg)
 Group:		X11/Applications/Networking
 Source0:	http://carme.pld-linux.org/~glen/chromium-browser/src/beta/%{name}-%{branch}.%{basever}.tar.gz
@@ -114,6 +114,7 @@ Patch26:	master-prefs-path.patch
 Patch27:	tcmalloc-glibc2.16.patch
 Patch28:	system-mesa.patch
 Patch29:	speechd-0.8.patch
+Patch30:	system-libvpx.patch
 URL:		http://www.chromium.org/Home
 %{?with_gconf:BuildRequires:	GConf2-devel}
 %{?with_system_mesa:BuildRequires:	Mesa-libGL-devel}
@@ -292,13 +293,14 @@ cd src
 %patch16 -p1
 %patch19 -p1
 %patch27 -p1
+%patch28 -p1
 cd ..
 %patch25 -p1
 %patch18 -p1
 %patch24 -p1
 %patch26 -p1
-%patch28 -p1
 %patch29 -p1
+%patch30 -p2
 
 cd src
 
@@ -405,14 +407,14 @@ test -e Makefile || \
 	%{gyp_with kerberos} -Dlinux_link_kerberos=1 \
 	%{gyp_with keyring gnome_keyring} -Dlinux_link_gnome_keyring=0 \
 	%{gyp_with pulseaudio} \
-	%{gyp_with system_ffmpeg} \
+	%{gyp_with system_ffmpeg} -Dmedia_use_ffmpeg=1 \
 	%{gyp_with system_flac} \
 	%{gyp_with system_harfbuzz} \
 	%{gyp_with system_libexif} \
 	%{gyp_with system_libmtp} \
 	%{gyp_with system_libsrtp} \
 	%{gyp_with system_libusb} \
-	%{gyp_with system_libvpx} \
+	%{gyp_with system_libvpx} -Dmedia_use_libvpx=0 \
 	%{gyp_with system_libwebp} \
 	%{gyp_with system_libxnvctrl} \
 	%{gyp_with system_mesa} \
diff --git a/system-ffmpeg.patch b/system-ffmpeg.patch
index b5916d1..6108254 100644
--- a/system-ffmpeg.patch
+++ b/system-ffmpeg.patch
@@ -27,18 +27,6 @@ index df217d2..fde3830 100644
          }, {  # use_ffmpeg == 0
            # Exclude the sources that depend on ffmpeg.
            'sources!': [
-diff --git a/webkit/media/webkit_media.gypi b/webkit/media/webkit_media.gypi
-index 81b770c..7b6d673 100644
---- a/webkit/media/webkit_media.gypi
-+++ b/webkit/media/webkit_media.gypi
-@@ -24,6 +24,7 @@
-       'dependencies': [
-         '<(DEPTH)/base/base.gyp:base',
-         '<(DEPTH)/base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
-+        '<(DEPTH)/media/media.gyp:media',
-         '<(DEPTH)/media/media.gyp:shared_memory_support',
-         '<(DEPTH)/media/media.gyp:yuv_convert',
-         '<(DEPTH)/skia/skia.gyp:skia',
 --- a/media/ffmpeg/ffmpeg_common.cc.orig	2013-01-17 00:07:51.635057013 +0000
 +++ b/media/ffmpeg/ffmpeg_common.cc	2013-01-17 00:15:50.867406811 +0000
 @@ -10,6 +10,8 @@
diff --git a/system-libvpx.patch b/system-libvpx.patch
new file mode 100644
index 0000000..3334847
--- /dev/null
+++ b/system-libvpx.patch
@@ -0,0 +1,93 @@
+http://crbug.com/174287
+--- branches/1410/src/media/media.gyp	2013/03/05 22:36:07	186272
++++ branches/1410/src/media/media.gyp	2013/03/05 22:37:51	186273
+@@ -12,12 +12,12 @@
+     'conditions': [
+       ['OS == "android" or OS == "ios"', {
+         # Android and iOS don't use ffmpeg.
+-        'use_ffmpeg%': 0,
++        'media_use_ffmpeg%': 0,
+         # Android and iOS don't use libvpx.
+-        'use_libvpx%': 0,
++        'media_use_libvpx%': 0,
+       }, {  # 'OS != "android" and OS != "ios"'
+-        'use_ffmpeg%': 1,
+-        'use_libvpx%': 1,
++        'media_use_ffmpeg%': 1,
++        'media_use_libvpx%': 1,
+       }],
+       # Screen capturer works only on Windows, OSX and Linux.
+       ['OS=="win" or OS=="mac" or OS=="linux"', {
+@@ -426,14 +426,14 @@
+             'yuv_convert',
+           ],
+         }],
+-        ['use_ffmpeg == 1', {
++        ['media_use_ffmpeg == 1', {
+           'dependencies': [
+             '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+           ],
+           'export_dependent_settings': [
+             '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+           ],
+-        }, {  # use_ffmpeg == 0
++        }, {  # media_use_ffmpeg == 0
+           # Exclude the sources that depend on ffmpeg.
+           'sources!': [
+             'base/media_posix.cc',
+@@ -458,11 +458,16 @@
+             'webm/webm_stream_parser.h',
+           ],
+         }],
+-        ['use_libvpx == 1', {
++        ['media_use_libvpx == 1', {
+           'dependencies': [
+             '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
+           ],
+-        }, {  # use_libvpx == 0
++        }, {  # media_use_libvpx == 0
++          'direct_dependent_settings': {
++            'defines': [
++              'MEDIA_DISABLE_LIBVPX',
++            ],
++          },
+           # Exclude the sources that depend on libvpx.
+           'sources!': [
+             'filters/vpx_video_decoder.cc',
+@@ -853,7 +858,7 @@
+             'yuv_convert',
+           ],
+         }],
+-        ['use_ffmpeg == 1', {
++        ['media_use_ffmpeg == 1', {
+           'dependencies': [
+             '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+           ],
+--- branches/1410/src/webkit/media/filter_helpers.cc	2013/03/05 22:36:07	186272
++++ branches/1410/src/webkit/media/filter_helpers.cc	2013/03/05 22:37:51	186273
+@@ -45,11 +45,15 @@
+       new media::FFmpegVideoDecoder(message_loop);
+   filter_collection->GetVideoDecoders()->push_back(ffmpeg_video_decoder);
+ 
++  // TODO(phajdan.jr): Remove ifdefs when libvpx with vp9 support is released
++  // (http://crbug.com/174287) .
++#if !defined(MEDIA_DISABLE_LIBVPX)
+   if (cmd_line->HasSwitch(switches::kEnableVp9Playback)) {
+     scoped_refptr<media::VpxVideoDecoder> vpx_video_decoder =
+         new media::VpxVideoDecoder(message_loop);
+     filter_collection->GetVideoDecoders()->push_back(vpx_video_decoder);
+   }
++#endif  // defined(MEDIA_USE_LIBVPX)
+ }
+ 
+ bool BuildMediaStreamCollection(
+--- branches/1410/src/webkit/media/webkit_media.gypi	2013/03/05 22:36:07	186272
++++ branches/1410/src/webkit/media/webkit_media.gypi	2013/03/05 22:37:51	186273
+@@ -34,6 +34,7 @@
+       'dependencies': [
+         '<(DEPTH)/base/base.gyp:base',
+         '<(DEPTH)/base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
++        '<(DEPTH)/media/media.gyp:media',
+         '<(DEPTH)/media/media.gyp:shared_memory_support',
+         '<(DEPTH)/media/media.gyp:yuv_convert',
+         '<(DEPTH)/skia/skia.gyp:skia',
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/chromium-browser.git/commitdiff/41d6a4b1893037d77dd444ca2ae133b8685e23bd



More information about the pld-cvs-commit mailing list