summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2009-09-22 15:46:22 +0000
committerBernard Cafarelli <voyageur@gentoo.org>2009-09-22 15:46:22 +0000
commitc5f98874ab73573f120684c544f262d15d178d81 (patch)
treeb654b3fcc9d50fdd268228d8920eeed8a85c6fd1 /www-client
parentfixed --as-needed issues. (diff)
downloadgentoo-2-c5f98874ab73573f120684c544f262d15d178d81.tar.gz
gentoo-2-c5f98874ab73573f120684c544f262d15d178d81.tar.bz2
gentoo-2-c5f98874ab73573f120684c544f262d15d178d81.zip
Bump to fix truncated downloads, http://crbug.com/406 . Also use system libevent
(Portage version: 2.2_rc41/cvs/Linux x86_64)
Diffstat (limited to 'www-client')
-rw-r--r--www-client/chromium/ChangeLog10
-rw-r--r--www-client/chromium/chromium-4.0.212.0_p26805.ebuild (renamed from www-client/chromium/chromium-4.0.212.0_p26343.ebuild)15
-rw-r--r--www-client/chromium/files/chromium-use_system_libevent.patch203
3 files changed, 220 insertions, 8 deletions
diff --git a/www-client/chromium/ChangeLog b/www-client/chromium/ChangeLog
index f816ff761c91..0891e5e79c87 100644
--- a/www-client/chromium/ChangeLog
+++ b/www-client/chromium/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for www-client/chromium
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.5 2009/09/22 12:08:57 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.6 2009/09/22 15:46:22 voyageur Exp $
+
+*chromium-4.0.212.0_p26805 (22 Sep 2009)
+
+ 22 Sep 2009; Bernard Cafarelli <voyageur@gentoo.org>
+ -chromium-4.0.212.0_p26343.ebuild, +chromium-4.0.212.0_p26805.ebuild,
+ +files/chromium-use_system_libevent.patch:
+ Bump to fix truncated downloads, http://crbug.com/406 . Also use system
+ libevent
22 Sep 2009; Bernard Cafarelli <voyageur@gentoo.org>
chromium-4.0.212.0_p26343.ebuild:
diff --git a/www-client/chromium/chromium-4.0.212.0_p26343.ebuild b/www-client/chromium/chromium-4.0.212.0_p26805.ebuild
index 1649d0ac045d..16da1465b022 100644
--- a/www-client/chromium/chromium-4.0.212.0_p26343.ebuild
+++ b/www-client/chromium/chromium-4.0.212.0_p26805.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-4.0.212.0_p26343.ebuild,v 1.2 2009/09/22 12:08:57 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-4.0.212.0_p26805.ebuild,v 1.1 2009/09/22 15:46:22 voyageur Exp $
EAPI="2"
inherit eutils multilib toolchain-funcs
@@ -16,6 +16,7 @@ KEYWORDS="~amd64 ~x86"
IUSE=""
RDEPEND="app-arch/bzip2
+ >=dev-libs/libevent-1.4.7
dev-libs/libxml2
dev-libs/libxslt
>=dev-libs/nss-3.12.2
@@ -43,11 +44,10 @@ src_prepare() {
# Changing this in ~/include.gypi does not work
sed -i "s/'-Werror'/''/" build/common.gypi || die "Werror sed failed"
- # Prevent automatic -march=pentium4 -msse2 enabling on x86
+ # Prevent automatic -march=pentium4 -msse2 enabling on x86, http://crbug.com/9007
epatch "${FILESDIR}"/${PN}-drop_sse2.patch
-
- # New gyp_chromium to use, but not marked executable
- chmod +x build/gyp_chromium
+ # Use system libevent, http://crbug.com/22208
+ epatch "${FILESDIR}"/${PN}-use_system_libevent.patch
}
src_configure() {
@@ -64,9 +64,9 @@ EOF
export HOME="${S}"
# Configuration options (system libraries)
- local myconf="-Duse_system_bzip2=1 -Duse_system_zlib=1 -Duse_system_libjpeg=1 -Duse_system_libpng=1 -Duse_system_libxml=1 -Duse_system_libxslt=1 -Duse_system_ffmpeg=1 -Dlinux_use_tcmalloc=1"
+ local myconf="-Duse_system_bzip2=1 -Duse_system_zlib=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 -Dlinux_use_tcmalloc=1"
# -Duse_system_sqlite=1 : http://crbug.com/22208
- # Others still bundled: icu (not possible?), hunspell, libevent
+ # Others still bundled: icu (not possible?), hunspell
# Sandbox paths
myconf="${myconf} -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
@@ -115,6 +115,7 @@ src_install() {
doins -r out/Release/themes
# Chromium looks for these in its folder
+ # See media_posix.cc and base_paths_linux.cc
dosym /usr/$(get_libdir)/libavcodec.so.52 ${CHROMIUM_HOME}
dosym /usr/$(get_libdir)/libavformat.so.52 ${CHROMIUM_HOME}
dosym /usr/$(get_libdir)/libavutil.so.50 ${CHROMIUM_HOME}
diff --git a/www-client/chromium/files/chromium-use_system_libevent.patch b/www-client/chromium/files/chromium-use_system_libevent.patch
new file mode 100644
index 000000000000..60d431c95564
--- /dev/null
+++ b/www-client/chromium/files/chromium-use_system_libevent.patch
@@ -0,0 +1,203 @@
+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-09-17 17:06:23.000000000 +0200
++++ chromium-4.0.212.0_p26343/third_party/libevent/libevent.gyp 2009-09-17 17:00:06.000000000 +0200
+@@ -3,52 +3,76 @@
+ # 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',
++ }, {
++ 'targets': [
++ {
++ 'target_name': 'libevent',
++ 'type': 'settings',
++ 'direct_dependent_settings': {
++ 'defines': [
++ 'USE_SYSTEM_LIBEVENT',
++ ],
++ },
++ 'link_settings': {
++ 'libraries': [
++ '-levent',
++ ],
++ },
++ }
+ ],
+- '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' ] } ],
+- ],
+- },
++ }],
+ ],
+ }