Gentoo Archives: gentoo-commits

From: "PaweA Hajdan (phajdan.jr)" <phajdan.jr@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in www-client/chromium: ChangeLog chromium-9.0.570.0.ebuild chromium-8.0.552.18.ebuild
Date: Wed, 03 Nov 2010 17:28:04
Message-Id: 20101103172753.B1C7D20051@flycatcher.gentoo.org
1 phajdan.jr 10/11/03 17:27:53
2
3 Modified: ChangeLog
4 Added: chromium-9.0.570.0.ebuild
5 Removed: chromium-8.0.552.18.ebuild
6 Log:
7 Version bump for dev channel release.
8 (Portage version: 2.1.8.3/cvs/Linux i686)
9
10 Revision Changes Path
11 1.213 www-client/chromium/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.213&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.213&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?r1=1.212&r2=1.213
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v
20 retrieving revision 1.212
21 retrieving revision 1.213
22 diff -u -r1.212 -r1.213
23 --- ChangeLog 31 Oct 2010 20:47:30 -0000 1.212
24 +++ ChangeLog 3 Nov 2010 17:27:53 -0000 1.213
25 @@ -1,6 +1,12 @@
26 # ChangeLog for www-client/chromium
27 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.212 2010/10/31 20:47:30 phajdan.jr Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.213 2010/11/03 17:27:53 phajdan.jr Exp $
30 +
31 +*chromium-9.0.570.0 (03 Nov 2010)
32 +
33 + 03 Nov 2010; Pawel Hajdan jr <phajdan.jr@g.o>
34 + -chromium-8.0.552.18.ebuild, +chromium-9.0.570.0.ebuild:
35 + Version bump for dev channel release.
36
37 31 Oct 2010; Pawel Hajdan jr <phajdan.jr@g.o>
38 chromium-8.0.552.23.ebuild, chromium-9999.ebuild:
39
40
41
42 1.1 www-client/chromium/chromium-9.0.570.0.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-9.0.570.0.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-9.0.570.0.ebuild?rev=1.1&content-type=text/plain
46
47 Index: chromium-9.0.570.0.ebuild
48 ===================================================================
49 # Copyright 1999-2010 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9.0.570.0.ebuild,v 1.1 2010/11/03 17:27:53 phajdan.jr Exp $
52
53 EAPI="2"
54
55 inherit eutils flag-o-matic multilib pax-utils toolchain-funcs
56
57 DESCRIPTION="Open-source version of Google Chrome web browser"
58 HOMEPAGE="http://chromium.org/"
59 SRC_URI="http://build.chromium.org/buildbot/official/${P}.tar.bz2"
60
61 LICENSE="BSD"
62 SLOT="0"
63 KEYWORDS="~amd64 ~arm ~x86"
64 IUSE="cups +gecko-mediaplayer gnome gnome-keyring system-sqlite system-v8"
65
66 RDEPEND="app-arch/bzip2
67 system-sqlite? (
68 >=dev-db/sqlite-3.6.23.1[fts3,icu,secure-delete,threadsafe]
69 )
70 system-v8? ( ~dev-lang/v8-2.4.9.10 )
71 >=dev-libs/icu-4.4.1
72 >=dev-libs/libevent-1.4.13
73 dev-libs/libxml2
74 dev-libs/libxslt
75 >=dev-libs/nss-3.12.3
76 >=gnome-base/gconf-2.24.0
77 gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2 )
78 >=media-libs/alsa-lib-1.0.19
79 media-libs/jpeg:0
80 media-libs/libpng
81 >=media-video/ffmpeg-0.6_p25423[threads]
82 cups? ( >=net-print/cups-1.4.4 )
83 sys-libs/zlib
84 >=x11-libs/gtk+-2.14.7
85 x11-libs/libXScrnSaver"
86 DEPEND="${RDEPEND}
87 dev-lang/perl
88 >=dev-util/gperf-3.0.3
89 >=dev-util/pkgconfig-0.23
90 sys-devel/flex"
91 RDEPEND+="
92 || (
93 x11-themes/gnome-icon-theme
94 x11-themes/oxygen-molecule
95 x11-themes/tango-icon-theme
96 x11-themes/xfce4-icon-theme
97 )
98 x11-apps/xmessage
99 x11-misc/xdg-utils
100 virtual/ttf-fonts
101 gecko-mediaplayer? ( !www-plugins/gecko-mediaplayer[gnome] )"
102
103 remove_bundled_lib() {
104 einfo "Removing bundled library $1 ..."
105 local out
106 out="$(find $1 -type f \! -iname '*.gyp' -print -delete)" \
107 || die "failed to remove bundled library $1"
108 if [[ -z $out ]]; then
109 die "no files matched when removing bundled library $1"
110 fi
111 }
112
113 pkg_setup() {
114 CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
115
116 # Make sure the build system will use the right tools, bug #340795.
117 tc-export AR CC CXX RANLIB
118 }
119
120 src_prepare() {
121 # Enable optional support for gecko-mediaplayer.
122 epatch "${FILESDIR}"/${PN}-gecko-mediaplayer-r0.patch
123
124 remove_bundled_lib "third_party/bzip2"
125 remove_bundled_lib "third_party/codesighs"
126 remove_bundled_lib "third_party/icu"
127 remove_bundled_lib "third_party/jemalloc"
128 remove_bundled_lib "third_party/lcov"
129 remove_bundled_lib "third_party/libevent"
130 remove_bundled_lib "third_party/libjpeg"
131 remove_bundled_lib "third_party/libpng"
132 remove_bundled_lib "third_party/libxml"
133 remove_bundled_lib "third_party/libxslt"
134 remove_bundled_lib "third_party/lzma_sdk"
135 remove_bundled_lib "third_party/molokocacao"
136 remove_bundled_lib "third_party/ocmock"
137 remove_bundled_lib "third_party/pyftpdlib"
138 remove_bundled_lib "third_party/simplejson"
139 remove_bundled_lib "third_party/tlslite"
140 # TODO: also remove third_party/ffmpeg (needs to be compile-tested).
141 # TODO: also remove third_party/zlib. For now the compilation fails if we
142 # remove it (minizip-related).
143
144 if use system-sqlite; then
145 remove_bundled_lib "third_party/sqlite/src"
146 remove_bundled_lib "third_party/sqlite/preprocessed"
147 fi
148
149 if use system-v8; then
150 # Provide our own gyp file that links with the system v8.
151 # TODO: move this upstream.
152 cp "${FILESDIR}"/v8.gyp v8/tools/gyp || die
153
154 remove_bundled_lib "v8"
155
156 # The implementation files include v8 headers with full path,
157 # like #include "v8/include/v8.h". Make sure the system headers
158 # will be used.
159 # TODO: find a solution that can be upstreamed.
160 rmdir v8/include || die
161 ln -s /usr/include v8/include || die
162 fi
163 }
164
165 src_configure() {
166 local myconf=""
167
168 # Never tell the build system to "enable" SSE2, it has a few unexpected
169 # additions, bug #336871.
170 myconf+=" -Ddisable_sse2=1"
171
172 # Use system-provided libraries.
173 # TODO: use_system_hunspell (upstream changes needed).
174 # TODO: use_system_ssl (need to consult upstream).
175 myconf+="
176 -Duse_system_bzip2=1
177 -Duse_system_ffmpeg=1
178 -Duse_system_icu=1
179 -Duse_system_libevent=1
180 -Duse_system_libjpeg=1
181 -Duse_system_libpng=1
182 -Duse_system_libxml=1
183 -Duse_system_zlib=1"
184
185 if use system-sqlite; then
186 myconf+=" -Duse_system_sqlite=1"
187 fi
188
189 # The dependency on cups is optional, see bug #324105.
190 if use cups; then
191 myconf+=" -Duse_cups=1"
192 else
193 myconf+=" -Duse_cups=0"
194 fi
195
196 if use "gnome-keyring"; then
197 myconf+=" -Duse_gnome_keyring=1 -Dlinux_link_gnome_keyring=1"
198 else
199 # TODO: we should also disable code trying to dlopen
200 # gnome-keyring in that case.
201 myconf+=" -Duse_gnome_keyring=0 -Dlinux_link_gnome_keyring=0"
202 fi
203
204 # Enable sandbox.
205 myconf+="
206 -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
207 -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
208
209 if host-is-pax; then
210 # Prevent the build from failing (bug #301880). The performance
211 # difference is very small.
212 myconf+=" -Dv8_use_snapshot=0"
213 fi
214
215 if use gecko-mediaplayer; then
216 # Disable hardcoded blacklist for gecko-mediaplayer.
217 # When www-plugins/gecko-mediaplayer is compiled with USE=gnome, it causes
218 # the browser to hang. We can handle the situation via dependencies,
219 # thus making it possible to use gecko-mediaplayer.
220 append-flags -DGENTOO_CHROMIUM_ENABLE_GECKO_MEDIAPLAYER
221 fi
222
223 # Our system ffmpeg should support more codecs than the bundled one
224 # for Chromium.
225 myconf+=" -Dproprietary_codecs=1"
226
227 # Use target arch detection logic from bug #296917.
228 local myarch="$ABI"
229 [[ $myarch = "" ]] && myarch="$ARCH"
230
231 if [[ $myarch = amd64 ]] ; then
232 myconf+=" -Dtarget_arch=x64"
233 elif [[ $myarch = x86 ]] ; then
234 myconf+=" -Dtarget_arch=ia32"
235 elif [[ $myarch = arm ]] ; then
236 # TODO: check this again after
237 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
238 append-flags -fno-tree-sink
239
240 myconf+=" -Dtarget_arch=arm -Ddisable_nacl=1 -Dlinux_use_tcmalloc=0"
241 else
242 die "Failed to determine target arch, got '$myarch'."
243 fi
244
245 if [[ "$(gcc-major-version)$(gcc-minor-version)" == "44" ]]; then
246 myconf+=" -Dno_strict_aliasing=1 -Dgcc_version=44"
247 fi
248
249 # Work around a likely GCC bug, see bug #331945.
250 if [[ "$(gcc-major-version)$(gcc-minor-version)" == "45" ]]; then
251 append-flags -fno-ipa-cp
252 fi
253
254 # Make sure that -Werror doesn't get added to CFLAGS by the build system.
255 # Depending on GCC version the warnings are different and we don't want
256 # the build to fail because of that.
257 myconf+=" -Dwerror="
258
259 build/gyp_chromium --depth=. ${myconf} || die
260 }
261
262 src_compile() {
263 emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die
264 }
265
266 src_install() {
267 exeinto "${CHROMIUM_HOME}"
268 pax-mark m out/Release/chrome
269 doexe out/Release/chrome
270 doexe out/Release/chrome_sandbox || die
271 fperms 4755 "${CHROMIUM_HOME}/chrome_sandbox"
272 doexe out/Release/xdg-settings || die
273 doexe "${FILESDIR}"/chromium-launcher.sh || die
274
275 insinto "${CHROMIUM_HOME}"
276 doins out/Release/chrome.pak || die
277 doins out/Release/resources.pak || die
278
279 doins -r out/Release/locales || die
280 doins -r out/Release/resources || die
281
282 # chrome.1 is for chromium --help
283 newman out/Release/chrome.1 chrome.1 || die
284 newman out/Release/chrome.1 chromium.1 || die
285
286 # Chromium looks for these in its folder
287 # See media_posix.cc and base_paths_linux.cc
288 dosym /usr/$(get_libdir)/libavcodec.so.52 "${CHROMIUM_HOME}" || die
289 dosym /usr/$(get_libdir)/libavformat.so.52 "${CHROMIUM_HOME}" || die
290 dosym /usr/$(get_libdir)/libavutil.so.50 "${CHROMIUM_HOME}" || die
291
292 # Install icon and desktop entry.
293 newicon out/Release/product_logo_48.png ${PN}-browser.png || die
294 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium || die
295 make_desktop_entry chromium "Chromium" ${PN}-browser "Network;WebBrowser" \
296 "MimeType=text/html;text/xml;application/xhtml+xml;"
297 sed -e "/^Exec/s/$/ %U/" -i "${D}"/usr/share/applications/*.desktop || die
298
299 # Install GNOME default application entry (bug #303100).
300 if use gnome; then
301 dodir /usr/share/gnome-control-center/default-apps || die
302 insinto /usr/share/gnome-control-center/default-apps
303 doins "${FILESDIR}"/chromium.xml || die
304 fi
305 }