diff options
author | Paweł Hajdan <phajdan.jr@gentoo.org> | 2010-03-03 17:57:19 +0000 |
---|---|---|
committer | Paweł Hajdan <phajdan.jr@gentoo.org> | 2010-03-03 17:57:19 +0000 |
commit | 553192e3f2bf57f0c8cf0b16b1c84f220f2b5ab7 (patch) | |
tree | a421b58db1aff0692460e9f8c01ab754f57cf674 /www-client | |
parent | Add svn use flag. Include respective patch. EAPI2fy. Added amd64 keyword. Fix... (diff) | |
download | gentoo-2-553192e3f2bf57f0c8cf0b16b1c84f220f2b5ab7.tar.gz gentoo-2-553192e3f2bf57f0c8cf0b16b1c84f220f2b5ab7.tar.bz2 gentoo-2-553192e3f2bf57f0c8cf0b16b1c84f220f2b5ab7.zip |
Initial work on making ffmpeg support more sane wrt bug #306921. Used
suggestions by Carlos Augusto <silvaesilva@gmail.com> and Doktor Notor
<notordoktor@gmail.com>. Also remove an unused patch.
(Portage version: 2.1.7.17/cvs/Linux i686)
Diffstat (limited to 'www-client')
-rw-r--r-- | www-client/chromium/ChangeLog | 9 | ||||
-rw-r--r-- | www-client/chromium/chromium-5.0.335.0.ebuild | 26 | ||||
-rw-r--r-- | www-client/chromium/chromium-9999.ebuild | 25 | ||||
-rw-r--r-- | www-client/chromium/files/chromium-use_system_libevent-1.4.13.patch | 202 |
4 files changed, 46 insertions, 216 deletions
diff --git a/www-client/chromium/ChangeLog b/www-client/chromium/ChangeLog index 84b50f4408f5..22102ae87b52 100644 --- a/www-client/chromium/ChangeLog +++ b/www-client/chromium/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for www-client/chromium # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.62 2010/03/01 10:26:59 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.63 2010/03/03 17:57:17 phajdan.jr Exp $ + + 03 Mar 2010; Pawel Hajdan jr <phajdan.jr@gentoo.org> + -files/chromium-use_system_libevent-1.4.13.patch, + chromium-5.0.335.0.ebuild, chromium-9999.ebuild: + Initial work on making ffmpeg support more sane wrt bug #306921. Used + suggestions by Carlos Augusto <silvaesilva@gmail.com> and Doktor Notor + <notordoktor@gmail.com>. Also remove an unused patch. 01 Mar 2010; Pawel Hajdan jr <phajdan.jr@gentoo.org> chromium-5.0.307.11.ebuild, chromium-5.0.335.0.ebuild, diff --git a/www-client/chromium/chromium-5.0.335.0.ebuild b/www-client/chromium/chromium-5.0.335.0.ebuild index 3b14c08e20c7..859df3c2aacc 100644 --- a/www-client/chromium/chromium-5.0.335.0.ebuild +++ b/www-client/chromium/chromium-5.0.335.0.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-5.0.335.0.ebuild,v 1.2 2010/03/01 10:26:59 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-5.0.335.0.ebuild,v 1.3 2010/03/03 17:57:17 phajdan.jr Exp $ EAPI="2" inherit eutils flag-o-matic multilib portability toolchain-funcs @@ -13,7 +13,7 @@ SRC_URI="mirror://gentoo/${P}.tar.bz2" LICENSE="BSD" SLOT="0" KEYWORDS="~amd64 ~arm ~x86" -IUSE="+ffmpeg +plugins-symlink" +IUSE="bindist +ffmpeg +plugins-symlink" RDEPEND="app-arch/bzip2 >=dev-libs/libevent-1.4.13 @@ -24,7 +24,7 @@ RDEPEND="app-arch/bzip2 >=media-libs/alsa-lib-1.0.19 media-libs/jpeg:0 media-libs/libpng - ffmpeg? ( >=media-video/ffmpeg-0.5_p19787 ) + ffmpeg? ( >=media-video/ffmpeg-0.5_p21602 ) sys-libs/zlib >=x11-libs/gtk+-2.14.7 x11-libs/libXScrnSaver @@ -61,6 +61,13 @@ pkg_setup() { elog "${PN} might crash occasionally. To get more useful backtraces" elog "and submit better bug reports, please read" elog "http://www.gentoo.org/proj/en/qa/backtraces.xml" + + if ! use bindist; then + einfo + elog "You may not redistribute this build to any users on your network" + elog "or the internet." + elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" + fi } src_prepare() { @@ -73,8 +80,10 @@ src_prepare() { sed -i "s/'-Werror'/''/" build/common.gypi || die "Werror sed failed" # Prevent automatic -march=pentium4 -msse2 enabling on x86, http://crbug.com/9007 epatch "${FILESDIR}"/${PN}-drop_sse2.patch - # Allow use of MP3/MPEG-4 audio/video tags with our system ffmpeg - epatch "${FILESDIR}"/${PN}-20100122-ubuntu-html5-video-mimetypes.patch + if ! use bindist; then + # Allow use of MP3/MPEG-4 audio/video tags with our system ffmpeg + epatch "${FILESDIR}"/${PN}-20100122-ubuntu-html5-video-mimetypes.patch + fi # Prevent the make build from filling entire disk space on some systems, # bug 297273. epatch "${FILESDIR}"/${PN}-fix-make-build.patch @@ -104,7 +113,7 @@ EOF export HOME="${S}" # Configuration options (system libraries) - local myconf="-Duse_system_zlib=1 -Duse_system_bzip2=1 -Duse_system_libevent=1 -Duse_system_libjpeg=1 -Duse_system_libpng=1 -Duse_system_libxml=1 -Duse_system_libxslt=1 -Duse_system_ffmpeg=1" + local myconf="-Duse_system_zlib=1 -Duse_system_bzip2=1 -Duse_system_libevent=1 -Duse_system_libjpeg=1 -Duse_system_libpng=1 -Duse_system_libxml=1 -Duse_system_libxslt=1" # -Duse_system_sqlite=1 : http://crbug.com/22208 # Others still bundled: icu (not possible?), hunspell (changes required for sandbox support) @@ -127,6 +136,10 @@ EOF myconf="${myconf} -Dno_strict_aliasing=1 -Dgcc_version=44" fi + if use ffmpeg; then + myconf="${myconf} -Duse_system_ffmpeg=1" + fi + build/gyp_chromium -f make build/all.gyp ${myconf} --depth=. || die "gyp failed" } @@ -186,5 +199,4 @@ src_install() { dodir /usr/share/gnome-control-center/default-apps insinto /usr/share/gnome-control-center/default-apps doins "${FILESDIR}"/chromium.xml - } diff --git a/www-client/chromium/chromium-9999.ebuild b/www-client/chromium/chromium-9999.ebuild index 59dc39ed4ed0..2c60634ce556 100644 --- a/www-client/chromium/chromium-9999.ebuild +++ b/www-client/chromium/chromium-9999.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999.ebuild,v 1.31 2010/03/01 10:26:59 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999.ebuild,v 1.32 2010/03/03 17:57:17 phajdan.jr Exp $ EAPI="2" inherit eutils flag-o-matic multilib portability subversion toolchain-funcs @@ -14,7 +14,7 @@ EGCLIENT_REPO_URI="http://src.chromium.org/svn/trunk/src/" LICENSE="BSD" SLOT="0" KEYWORDS="" -IUSE="+ffmpeg +plugins-symlink" +IUSE="bindist +ffmpeg +plugins-symlink" RDEPEND="app-arch/bzip2 >=dev-libs/libevent-1.4.13 @@ -25,7 +25,7 @@ RDEPEND="app-arch/bzip2 >=media-libs/alsa-lib-1.0.19 media-libs/jpeg:0 media-libs/libpng - ffmpeg? ( >=media-video/ffmpeg-0.5_p19787 ) + ffmpeg? ( >=media-video/ffmpeg-0.5_p21602 ) sys-libs/zlib >=x11-libs/gtk+-2.14.7 x11-libs/libXScrnSaver @@ -62,6 +62,13 @@ pkg_setup() { elog "${PN} might crash occasionally. To get more useful backtraces" elog "and submit better bug reports, please read" elog "http://www.gentoo.org/proj/en/qa/backtraces.xml" + + if ! use bindist; then + einfo + elog "You may not redistribute this build to any users on your network" + elog "or the internet." + elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" + fi } src_unpack() { @@ -117,8 +124,10 @@ src_prepare() { sed -i "s/'-Werror'/''/" build/common.gypi || die "Werror sed failed" # Prevent automatic -march=pentium4 -msse2 enabling on x86, http://crbug.com/9007 epatch "${FILESDIR}"/${PN}-drop_sse2.patch - # Allow use of MP3/MPEG-4 audio/video tags with our system ffmpeg - epatch "${FILESDIR}"/${PN}-20100122-ubuntu-html5-video-mimetypes.patch + if ! use bindist; then + # Allow use of MP3/MPEG-4 audio/video tags with our system ffmpeg + epatch "${FILESDIR}"/${PN}-20100122-ubuntu-html5-video-mimetypes.patch + fi # Prevent the make build from filling entire disk space on some systems, # bug 297273. epatch "${FILESDIR}"/${PN}-fix-make-build.patch @@ -147,7 +156,7 @@ EOF export HOME="${S}" # Configuration options (system libraries) - local myconf="-Duse_system_zlib=1 -Duse_system_bzip2=1 -Duse_system_libevent=1 -Duse_system_libjpeg=1 -Duse_system_libpng=1 -Duse_system_libxml=1 -Duse_system_libxslt=1 -Duse_system_ffmpeg=1" + local myconf="-Duse_system_zlib=1 -Duse_system_bzip2=1 -Duse_system_libevent=1 -Duse_system_libjpeg=1 -Duse_system_libpng=1 -Duse_system_libxml=1 -Duse_system_libxslt=1" # -Duse_system_sqlite=1 : http://crbug.com/22208 # Others still bundled: icu (not possible?), hunspell (changes required for sandbox support) @@ -170,6 +179,10 @@ EOF myconf="${myconf} -Dno_strict_aliasing=1 -Dgcc_version=44" fi + if use ffmpeg; then + myconf="${myconf} -Duse_system_ffmpeg=1" + fi + build/gyp_chromium -f make build/all.gyp ${myconf} --depth=. || die "gyp failed" } diff --git a/www-client/chromium/files/chromium-use_system_libevent-1.4.13.patch b/www-client/chromium/files/chromium-use_system_libevent-1.4.13.patch deleted file mode 100644 index 3d1be28c4a0c..000000000000 --- a/www-client/chromium/files/chromium-use_system_libevent-1.4.13.patch +++ /dev/null @@ -1,202 +0,0 @@ -diff -Naur chromium-4.0.212.0_p26343.orig/base/message_pump_libevent.cc chromium-4.0.212.0_p26343/base/message_pump_libevent.cc ---- chromium-4.0.212.0_p26343.orig/base/message_pump_libevent.cc 2009-09-17 17:06:50.000000000 +0200 -+++ chromium-4.0.212.0_p26343/base/message_pump_libevent.cc 2009-09-17 17:11:01.000000000 +0200 -@@ -12,7 +12,11 @@ - #include "base/scoped_nsautorelease_pool.h" - #include "base/scoped_ptr.h" - #include "base/time.h" -+#if defined(USE_SYSTEM_LIBEVENT) -+#include <event.h> -+#else - #include "third_party/libevent/event.h" -+#endif - - // Lifecycle of struct event - // Libevent uses two main data structures: -diff -Naur chromium-4.0.212.0_p26343.orig/chrome/browser/debugger/devtools_remote_listen_socket.cc chromium-4.0.212.0_p26343/chrome/browser/debugger/devtools_remote_listen_socket.cc ---- chromium-4.0.212.0_p26343.orig/chrome/browser/debugger/devtools_remote_listen_socket.cc 2009-09-17 17:06:51.000000000 +0200 -+++ chromium-4.0.212.0_p26343/chrome/browser/debugger/devtools_remote_listen_socket.cc 2009-09-17 17:10:49.000000000 +0200 -@@ -18,8 +18,12 @@ - #include "base/message_loop.h" - #include "base/message_pump_libevent.h" - #include "net/base/net_errors.h" -+#if defined(USE_SYSTEM_LIBEVENT) -+#include <event.h> -+#else - #include "third_party/libevent/event.h" - #endif -+#endif - - #include "base/eintr_wrapper.h" - #include "base/platform_thread.h" -diff -Naur chromium-4.0.212.0_p26343.orig/net/base/listen_socket.cc chromium-4.0.212.0_p26343/net/base/listen_socket.cc ---- chromium-4.0.212.0_p26343.orig/net/base/listen_socket.cc 2009-09-17 17:06:23.000000000 +0200 -+++ chromium-4.0.212.0_p26343/net/base/listen_socket.cc 2009-09-17 17:10:12.000000000 +0200 -@@ -13,8 +13,12 @@ - #include <sys/socket.h> - #include <arpa/inet.h> - #include "net/base/net_errors.h" -+#if defined(USE_SYSTEM_LIBEVENT) -+#include <event.h> -+#else - #include "third_party/libevent/event.h" - #endif -+#endif - - #include "base/eintr_wrapper.h" - #include "net/base/net_util.h" -diff -Naur chromium-4.0.212.0_p26343.orig/net/base/telnet_server.cc chromium-4.0.212.0_p26343/net/base/telnet_server.cc ---- chromium-4.0.212.0_p26343.orig/net/base/telnet_server.cc 2009-09-17 17:06:23.000000000 +0200 -+++ chromium-4.0.212.0_p26343/net/base/telnet_server.cc 2009-09-17 17:10:06.000000000 +0200 -@@ -13,7 +13,11 @@ - #include <sys/socket.h> - #include "base/message_loop.h" - #include "net/base/net_errors.h" -+#if defined(USE_SYSTEM_LIBEVENT) -+#include <event.h> -+#else - #include "third_party/libevent/event.h" -+#endif - #include "base/message_pump_libevent.h" - #endif - -diff -Naur chromium-4.0.212.0_p26343.orig/net/socket/tcp_client_socket_libevent.cc chromium-4.0.212.0_p26343/net/socket/tcp_client_socket_libevent.cc ---- chromium-4.0.212.0_p26343.orig/net/socket/tcp_client_socket_libevent.cc 2009-09-17 17:06:23.000000000 +0200 -+++ chromium-4.0.212.0_p26343/net/socket/tcp_client_socket_libevent.cc 2009-09-17 17:09:49.000000000 +0200 -@@ -15,8 +15,11 @@ - #include "base/trace_event.h" - #include "net/base/io_buffer.h" - #include "net/base/net_errors.h" -+#if defined(USE_SYSTEM_LIBEVENT) -+#include <event.h> -+#else - #include "third_party/libevent/event.h" -- -+#endif - - namespace net { - -diff -Naur chromium-4.0.212.0_p26343.orig/third_party/libevent/libevent.gyp chromium-4.0.212.0_p26343/third_party/libevent/libevent.gyp ---- chromium-4.0.212.0_p26343.orig/third_party/libevent/libevent.gyp 2009-12-02 17:36:16.000000000 +0100 -+++ chromium-4.0.212.0_p26343/third_party/libevent/libevent.gyp 2009-12-02 17:46:03.000000000 +0100 -@@ -3,54 +3,78 @@ - # found in the LICENSE file. - - { -- 'targets': [ -- { -- 'target_name': 'libevent', -- 'product_name': 'event', -- 'type': '<(library)', -- 'sources': [ -- 'buffer.c', -- 'evbuffer.c', -- 'evdns.c', -- 'event.c', -- 'event_tagging.c', -- 'evrpc.c', -- 'evutil.c', -- 'http.c', -- 'log.c', -- 'poll.c', -- 'select.c', -- 'signal.c', -- 'strlcpy.c', -+ 'variables': { -+ 'use_system_libevent%': 0, -+ }, -+ 'conditions': [ -+ ['use_system_libevent==0', { -+ 'targets': [ -+ { -+ 'target_name': 'libevent', -+ 'product_name': 'event', -+ 'type': '<(library)', -+ 'sources': [ -+ 'buffer.c', -+ 'evbuffer.c', -+ 'evdns.c', -+ 'event.c', -+ 'event_tagging.c', -+ 'evrpc.c', -+ 'evutil.c', -+ 'http.c', -+ 'log.c', -+ 'poll.c', -+ 'select.c', -+ 'signal.c', -+ 'strlcpy.c', -+ ], -+ 'defines': [ -+ 'HAVE_CONFIG_H', -+ ], -+ 'include_dirs': [ -+ '.', # libevent includes some of its own headers with #include <...> -+ # instead of #include "..." -+ ], -+ 'conditions': [ -+ # libevent has platform-specific implementation files. Since its -+ # native build uses autoconf, platform-specific config.h files are -+ # provided and live in platform-specific directories. -+ [ 'OS == "linux"', { -+ 'sources': [ 'epoll.c', 'epoll_sub.c' ], -+ 'include_dirs': [ 'linux' ], -+ 'link_settings': { -+ 'libraries': [ -+ # We need rt for clock_gettime(). -+ # TODO(port) Maybe on FreeBSD as well? -+ '-lrt', -+ ], -+ }, -+ }], -+ [ 'OS == "mac" or OS == "freebsd"', { -+ 'sources': [ 'kqueue.c' ], -+ 'include_dirs': [ 'mac' ] -+ }], -+ ], -+ }, - ], -- 'defines': [ -- 'HAVE_CONFIG_H', -- ], -- 'include_dirs': [ -- '.', # libevent includes some of its own headers with #include <...> -- # instead of #include "..." -- ], -- 'conditions': [ -- # libevent has platform-specific implementation files. Since its -- # native build uses autoconf, platform-specific config.h files are -- # provided and live in platform-specific directories. -- [ 'OS == "linux"', { -- 'sources': [ 'epoll.c', 'epoll_sub.c' ], -- 'include_dirs': [ 'linux' ], -+ }, { -+ 'targets': [ -+ { -+ 'target_name': 'libevent', -+ 'type': 'settings', -+ 'direct_dependent_settings': { -+ 'defines': [ -+ 'USE_SYSTEM_LIBEVENT', -+ ], -+ }, - 'link_settings': { - 'libraries': [ -- # We need rt for clock_gettime(). -- # TODO(port) Maybe on FreeBSD as well? -- '-lrt', -+ '-levent', - ], - }, -- }], -- [ 'OS == "mac" or OS == "freebsd"', { -- 'sources': [ 'kqueue.c' ], -- 'include_dirs': [ 'mac' ] -- }], -+ } - ], -- }, -+ }], - ], - } - |