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-12.0.742.112.ebuild chromium-12.0.742.91-r2.ebuild
Date: Wed, 29 Jun 2011 07:58:08
Message-Id: 20110629075755.E703020054@flycatcher.gentoo.org
1 phajdan.jr 11/06/29 07:57:55
2
3 Modified: ChangeLog
4 Added: chromium-12.0.742.112.ebuild
5 Removed: chromium-12.0.742.91-r2.ebuild
6 Log:
7 Version bump for stable channel release. Remove old.
8
9 (Portage version: 2.1.9.42/cvs/Linux i686)
10
11 Revision Changes Path
12 1.393 www-client/chromium/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.393&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.393&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?r1=1.392&r2=1.393
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v
21 retrieving revision 1.392
22 retrieving revision 1.393
23 diff -u -r1.392 -r1.393
24 --- ChangeLog 28 Jun 2011 13:27:06 -0000 1.392
25 +++ ChangeLog 29 Jun 2011 07:57:55 -0000 1.393
26 @@ -1,6 +1,12 @@
27 # ChangeLog for www-client/chromium
28 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.392 2011/06/28 13:27:06 phajdan.jr Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.393 2011/06/29 07:57:55 phajdan.jr Exp $
31 +
32 +*chromium-12.0.742.112 (29 Jun 2011)
33 +
34 + 29 Jun 2011; Pawel Hajdan jr <phajdan.jr@g.o>
35 + -chromium-12.0.742.91-r2.ebuild, +chromium-12.0.742.112.ebuild:
36 + Version bump for stable channel release. Remove old.
37
38 *chromium-14.0.803.0 (28 Jun 2011)
39
40
41
42
43 1.1 www-client/chromium/chromium-12.0.742.112.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-12.0.742.112.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-12.0.742.112.ebuild?rev=1.1&content-type=text/plain
47
48 Index: chromium-12.0.742.112.ebuild
49 ===================================================================
50 # Copyright 1999-2011 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-12.0.742.112.ebuild,v 1.1 2011/06/29 07:57:55 phajdan.jr Exp $
53
54 EAPI="3"
55 PYTHON_DEPEND="2:2.6"
56
57 inherit eutils fdo-mime flag-o-matic gnome2-utils linux-info multilib \
58 pax-utils portability python toolchain-funcs versionator virtualx
59
60 DESCRIPTION="Open-source version of Google Chrome web browser"
61 HOMEPAGE="http://chromium.org/"
62 SRC_URI="http://build.chromium.org/official/${P}.tar.bz2"
63
64 LICENSE="BSD"
65 SLOT="0"
66 KEYWORDS="~amd64 ~x86"
67 IUSE="cups gnome gnome-keyring kerberos xinerama"
68
69 RDEPEND="app-arch/bzip2
70 dev-libs/dbus-glib
71 >=dev-libs/icu-4.4.1
72 >=dev-libs/libevent-1.4.13
73 dev-libs/libxml2[icu]
74 dev-libs/libxslt
75 >=dev-libs/nss-3.12.3
76 gnome? ( >=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/flac
80 virtual/jpeg
81 media-libs/libpng
82 >=media-libs/libvpx-0.9.5
83 >=media-libs/libwebp-0.1.2
84 media-libs/speex
85 cups? ( >=net-print/cups-1.3.11 )
86 sys-libs/pam
87 sys-libs/zlib
88 x11-libs/gtk+:2
89 x11-libs/libXScrnSaver
90 x11-libs/libXtst"
91 DEPEND="${RDEPEND}
92 dev-lang/perl
93 dev-lang/yasm
94 >=dev-util/gperf-3.0.3
95 >=dev-util/pkgconfig-0.23
96 sys-devel/flex
97 >=sys-devel/make-3.81-r2
98 x11-libs/libXinerama
99 test? (
100 dev-python/pyftpdlib
101 dev-python/simplejson
102 virtual/krb5
103 )"
104 RDEPEND+="
105 kerberos? ( virtual/krb5 )
106 xinerama? ( x11-libs/libXinerama )
107 x11-misc/xdg-utils
108 virtual/ttf-fonts"
109
110 gyp_use() {
111 if [[ $# -lt 2 ]]; then
112 echo "!!! usage: gyp_use <USEFLAG> <GYPFLAG>" >&2
113 return 1
114 fi
115 if use "$1"; then echo "-D$2=1"; else echo "-D$2=0"; fi
116 }
117
118 egyp() {
119 set -- build/gyp_chromium --depth=. "${@}"
120 echo "${@}" >&2
121 "${@}"
122 }
123
124 pkg_setup() {
125 CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
126
127 # Make sure the build system will use the right tools, bug #340795.
128 tc-export AR CC CXX RANLIB
129
130 # Make sure the build system will use the right python, bug #344367.
131 python_set_active_version 2
132 python_pkg_setup
133
134 # Prevent user problems like bug #299777.
135 if ! grep -q /dev/shm <<< $(get_mounts); then
136 ewarn "You don't have tmpfs mounted at /dev/shm."
137 ewarn "${PN} may fail to start in that configuration."
138 ewarn "Please uncomment the /dev/shm entry in /etc/fstab,"
139 ewarn "and run 'mount /dev/shm'."
140 fi
141 if [ `stat -c %a /dev/shm` -ne 1777 ]; then
142 ewarn "/dev/shm does not have correct permissions."
143 ewarn "${PN} may fail to start in that configuration."
144 ewarn "Please run 'chmod 1777 /dev/shm'."
145 fi
146
147 # Prevent user problems like bug #348235.
148 eshopts_push -s extglob
149 if is-flagq '-g?(gdb)?([1-9])'; then
150 ewarn "You have enabled debug info (probably have -g or -ggdb in your \$C{,XX}FLAGS)."
151 ewarn "You may experience really long compilation times and/or increased memory usage."
152 ewarn "If compilation fails, please try removing -g{,gdb} before reporting a bug."
153 fi
154 eshopts_pop
155
156 # Warn if the kernel doesn't support features useful for sandboxing,
157 # bug #363907.
158 CONFIG_CHECK="~PID_NS ~NET_NS"
159 PID_NS_WARNING="PID (process id) namespaces are needed for sandboxing."
160 NET_NS_WARNING="Network namespaces are needed for sandboxing."
161 check_extra_config
162 }
163
164 src_prepare() {
165 # Make sure we don't use bundled libvpx headers.
166 epatch "${FILESDIR}/${PN}-system-vpx-r4.patch"
167
168 # Fix compilation with system zlib, bug #364205. To be upstreamed.
169 epatch "${FILESDIR}/${PN}-system-zlib-r0.patch"
170
171 # Fix compilation without CUPS, bug #364525. To be upstreamed.
172 epatch "${FILESDIR}/${PN}-cups-r0.patch"
173
174 # Backport build fix for perl-5.14, bug #372301.
175 epatch "${FILESDIR}/${PN}-perl-5.14-r0.patch"
176
177 # Remove most bundled libraries. Some are still needed.
178 find third_party -type f \! -iname '*.gyp*' \
179 \! -path 'third_party/WebKit/*' \
180 \! -path 'third_party/angle/*' \
181 \! -path 'third_party/cacheinvalidation/*' \
182 \! -path 'third_party/cld/*' \
183 \! -path 'third_party/expat/*' \
184 \! -path 'third_party/ffmpeg/*' \
185 \! -path 'third_party/flac/flac.h' \
186 \! -path 'third_party/gpsd/*' \
187 \! -path 'third_party/harfbuzz/*' \
188 \! -path 'third_party/hunspell/*' \
189 \! -path 'third_party/iccjpeg/*' \
190 \! -path 'third_party/launchpad_translations/*' \
191 \! -path 'third_party/leveldb/*' \
192 \! -path 'third_party/libjingle/*' \
193 \! -path 'third_party/libsrtp/*' \
194 \! -path 'third_party/libvpx/libvpx.h' \
195 \! -path 'third_party/mesa/*' \
196 \! -path 'third_party/modp_b64/*' \
197 \! -path 'third_party/npapi/*' \
198 \! -path 'third_party/openmax/*' \
199 \! -path 'third_party/ots/*' \
200 \! -path 'third_party/protobuf/*' \
201 \! -path 'third_party/skia/*' \
202 \! -path 'third_party/speex/speex.h' \
203 \! -path 'third_party/sqlite/*' \
204 \! -path 'third_party/tcmalloc/*' \
205 \! -path 'third_party/tlslite/*' \
206 \! -path 'third_party/undoview/*' \
207 \! -path 'third_party/zlib/contrib/minizip/*' \
208 -delete || die
209
210 # Make sure the build system will use the right python, bug #344367.
211 # Only convert directories that need it, to save time.
212 python_convert_shebangs -q -r 2 build tools
213 }
214
215 src_configure() {
216 local myconf=""
217
218 # Never tell the build system to "enable" SSE2, it has a few unexpected
219 # additions, bug #336871.
220 myconf+=" -Ddisable_sse2=1"
221
222 # Use system-provided libraries.
223 # TODO: use_system_ffmpeg (bug #71931). That makes yasm unneeded.
224 # TODO: use_system_hunspell (upstream changes needed).
225 # TODO: use_system_ssl (http://crbug.com/58087).
226 # TODO: use_system_sqlite (http://crbug.com/22208).
227 myconf+="
228 -Duse_system_bzip2=1
229 -Duse_system_flac=1
230 -Duse_system_icu=1
231 -Duse_system_libevent=1
232 -Duse_system_libjpeg=1
233 -Duse_system_libpng=1
234 -Duse_system_libwebp=1
235 -Duse_system_libxml=1
236 -Duse_system_speex=1
237 -Duse_system_vpx=1
238 -Duse_system_xdg_utils=1
239 -Duse_system_yasm=1
240 -Duse_system_zlib=1"
241
242 # Optional dependencies.
243 myconf+="
244 $(gyp_use cups use_cups)
245 $(gyp_use gnome use_gconf)
246 $(gyp_use gnome-keyring use_gnome_keyring)
247 $(gyp_use gnome-keyring linux_link_gnome_keyring)"
248
249 # Enable sandbox.
250 myconf+="
251 -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
252 -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
253
254 if host-is-pax; then
255 # Prevent the build from failing (bug #301880). The performance
256 # difference is very small.
257 myconf+=" -Dv8_use_snapshot=0"
258 fi
259
260 # Our system ffmpeg should support more codecs than the bundled one
261 # for Chromium.
262 # TODO: uncomment when bug #371931 is fixed.
263 # myconf+=" -Dproprietary_codecs=1"
264
265 # Use target arch detection logic from bug #354601.
266 case ${CHOST} in
267 i?86-*) myarch=x86 ;;
268 x86_64-*)
269 if [[ $ABI = "" ]] ; then
270 myarch=amd64
271 else
272 myarch="$ABI"
273 fi ;;
274 arm*-*) myarch=arm ;;
275 *) die "Unrecognized CHOST: ${CHOST}"
276 esac
277
278 if [[ $myarch = amd64 ]] ; then
279 myconf+=" -Dtarget_arch=x64"
280 elif [[ $myarch = x86 ]] ; then
281 myconf+=" -Dtarget_arch=ia32"
282 elif [[ $myarch = arm ]] ; then
283 # TODO: check this again after
284 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
285 append-flags -fno-tree-sink
286
287 myconf+=" -Dtarget_arch=arm -Ddisable_nacl=1 -Dlinux_use_tcmalloc=0"
288 else
289 die "Failed to determine target arch, got '$myarch'."
290 fi
291
292 # Make sure that -Werror doesn't get added to CFLAGS by the build system.
293 # Depending on GCC version the warnings are different and we don't want
294 # the build to fail because of that.
295 myconf+=" -Dwerror="
296
297 # Avoid a build error with -Os, bug #352457.
298 replace-flags "-Os" "-O2"
299
300 egyp ${myconf} || die
301 }
302
303 src_compile() {
304 emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die
305 pax-mark m out/Release/chrome
306 if use test; then
307 emake {base,crypto,googleurl,net}_unittests BUILDTYPE=Release V=1 || die
308 pax-mark m out/Release/{base,crypto,googleurl,net}_unittests
309 fi
310 }
311
312 src_test() {
313 # For more info see bug #350349.
314 local mylocale='en_US.utf8'
315 if ! locale -a | grep -q "$mylocale"; then
316 eerror "${PN} requires ${mylocale} locale for tests"
317 eerror "Please read the following guides for more information:"
318 eerror " http://www.gentoo.org/doc/en/guide-localization.xml"
319 eerror " http://www.gentoo.org/doc/en/utf-8.xml"
320 die "locale ${mylocale} is not supported"
321 fi
322
323 # For more info see bug #370957.
324 if [[ $UID -eq 0 ]]; then
325 die "Tests must be run as non-root. Please use FEATURES=userpriv."
326 fi
327
328 # For more info see bug #350347.
329 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/base_unittests virtualmake \
330 '--gtest_filter=-ICUStringConversionsTest.*'
331
332 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/crypto_unittests virtualmake
333 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/googleurl_unittests virtualmake
334
335 # NetUtilTest: bug #361885.
336 # UDP: unstable, active development. We should revisit this later.
337 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/net_unittests virtualmake \
338 '--gtest_filter=-NetUtilTest.IDNToUnicode*:NetUtilTest.FormatUrl*:*UDP*'
339 }
340
341 src_install() {
342 exeinto "${CHROMIUM_HOME}"
343 doexe out/Release/chrome
344 doexe out/Release/chrome_sandbox || die
345 fperms 4755 "${CHROMIUM_HOME}/chrome_sandbox"
346 newexe "${FILESDIR}"/chromium-launcher-r1.sh chromium-launcher.sh || die
347
348 # It is important that we name the target "chromium-browser",
349 # xdg-utils expect it; bug #355517.
350 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser || die
351 # keep the old symlink around for consistency
352 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium || die
353
354 insinto "${CHROMIUM_HOME}"
355 doins out/Release/chrome.pak || die
356 doins out/Release/resources.pak || die
357
358 doins -r out/Release/locales || die
359 doins -r out/Release/resources || die
360
361 newman out/Release/chrome.1 chromium.1 || die
362 newman out/Release/chrome.1 chromium-browser.1 || die
363
364 # Chromium looks for these in its folder
365 # See media_posix.cc and base_paths_linux.cc
366 # TODO: uncomment when bug #371931 is fixed.
367 #dosym /usr/$(get_libdir)/libavcodec.so.52 "${CHROMIUM_HOME}" || die
368 #dosym /usr/$(get_libdir)/libavformat.so.52 "${CHROMIUM_HOME}" || die
369 #dosym /usr/$(get_libdir)/libavutil.so.50 "${CHROMIUM_HOME}" || die
370 doexe out/Release/ffmpegsumo_nolink || die
371 doexe out/Release/libffmpegsumo.so || die
372
373 # Install icons and desktop entry.
374 for SIZE in 16 22 24 32 48 64 128 256 ; do
375 insinto /usr/share/icons/hicolor/${SIZE}x${SIZE}/apps
376 newins chrome/app/theme/chromium/product_logo_${SIZE}.png \
377 chromium-browser.png || die
378 done
379 local mime_types="text/html;text/xml;application/xhtml+xml;"
380 mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
381 make_desktop_entry chromium-browser "Chromium" chromium-browser \
382 "Network;WebBrowser" "MimeType=${mime_types}"
383 sed -e "/^Exec/s/$/ %U/" -i "${D}"/usr/share/applications/*.desktop || die
384
385 # Install GNOME default application entry (bug #303100).
386 if use gnome; then
387 dodir /usr/share/gnome-control-center/default-apps || die
388 insinto /usr/share/gnome-control-center/default-apps
389 doins "${FILESDIR}"/chromium-browser.xml || die
390 fi
391 }
392
393 pkg_preinst() {
394 gnome2_icon_savelist
395 }
396
397 pkg_postinst() {
398 fdo-mime_desktop_database_update
399 gnome2_icon_cache_update
400
401 # For more info see bug #292201, bug #352263, bug #361859.
402 elog
403 elog "Depending on your desktop environment, you may need"
404 elog "to install additional packages to get icons on the Downloads page."
405 elog
406 elog "For KDE, the required package is kde-base/oxygen-icons."
407 elog
408 elog "For other desktop environments, try one of the following:"
409 elog " - x11-themes/gnome-icon-theme"
410 elog " - x11-themes/tango-icon-theme"
411
412 # For more info see bug #359153.
413 elog
414 elog "Some web pages may require additional fonts to display properly."
415 elog "Try installing some of the following packages if some characters"
416 elog "are not displayed properly:"
417 elog " - media-fonts/arphicfonts"
418 elog " - media-fonts/bitstream-cyberbit"
419 elog " - media-fonts/droid"
420 elog " - media-fonts/ipamonafont"
421 elog " - media-fonts/ja-ipafonts"
422 elog " - media-fonts/takao-fonts"
423 elog " - media-fonts/wqy-microhei"
424 elog " - media-fonts/wqy-zenhei"
425 }
426
427 pkg_postrm() {
428 gnome2_icon_cache_update
429 }