Gentoo Archives: gentoo-commits

From: "Mike Gilbert (floppym)" <floppym@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in www-client/chromium: ChangeLog chromium-14.0.835.124.ebuild
Date: Thu, 01 Sep 2011 02:40:54
Message-Id: 20110901024044.CD96020051@flycatcher.gentoo.org
1 floppym 11/09/01 02:40:44
2
3 Modified: ChangeLog
4 Added: chromium-14.0.835.124.ebuild
5 Log:
6 Version bump for beta channel release.
7
8 (Portage version: 2.2.0_alpha51/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.427 www-client/chromium/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.427&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.427&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?r1=1.426&r2=1.427
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v
20 retrieving revision 1.426
21 retrieving revision 1.427
22 diff -u -r1.426 -r1.427
23 --- ChangeLog 31 Aug 2011 03:33:36 -0000 1.426
24 +++ ChangeLog 1 Sep 2011 02:40:44 -0000 1.427
25 @@ -1,6 +1,11 @@
26 # ChangeLog for www-client/chromium
27 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.426 2011/08/31 03:33:36 floppym Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.427 2011/09/01 02:40:44 floppym Exp $
30 +
31 +*chromium-14.0.835.124 (01 Sep 2011)
32 +
33 + 01 Sep 2011; Mike Gilbert <floppym@g.o> +chromium-14.0.835.124.ebuild:
34 + Version bump for beta channel release.
35
36 *chromium-14.0.835.122 (31 Aug 2011)
37
38
39
40
41 1.1 www-client/chromium/chromium-14.0.835.124.ebuild
42
43 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-14.0.835.124.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-14.0.835.124.ebuild?rev=1.1&content-type=text/plain
45
46 Index: chromium-14.0.835.124.ebuild
47 ===================================================================
48 # Copyright 1999-2011 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-14.0.835.124.ebuild,v 1.1 2011/09/01 02:40:44 floppym Exp $
51
52 EAPI="3"
53 PYTHON_DEPEND="2:2.6"
54
55 inherit eutils fdo-mime flag-o-matic gnome2-utils linux-info multilib \
56 pax-utils portability python toolchain-funcs versionator virtualx
57
58 DESCRIPTION="Open-source version of Google Chrome web browser"
59 HOMEPAGE="http://chromium.org/"
60 SRC_URI="http://build.chromium.org/official/${P}.tar.bz2"
61
62 LICENSE="BSD"
63 SLOT="0"
64 KEYWORDS="~amd64 ~x86"
65 IUSE="cups gnome gnome-keyring kerberos"
66
67 # en_US is ommitted on purpose from the list below. It must always be available.
68 LANGS="am ar bg bn ca cs da de el en_GB es es_LA et fa fi fil fr gu he hi hr
69 hu id it ja kn ko lt lv ml mr nb nl pl pt_BR pt_PT ro ru sk sl sr sv sw ta te th
70 tr uk vi zh_CN zh_TW"
71 for lang in ${LANGS}; do
72 IUSE+=" linguas_${lang}"
73 done
74
75 RDEPEND="app-arch/bzip2
76 dev-libs/dbus-glib
77 >=dev-libs/icu-4.4.1
78 >=dev-libs/libevent-1.4.13
79 dev-libs/libxml2[icu]
80 dev-libs/libxslt
81 >=dev-libs/nss-3.12.3
82 gnome? ( >=gnome-base/gconf-2.24.0 )
83 gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2 )
84 >=media-libs/alsa-lib-1.0.19
85 media-libs/flac
86 virtual/jpeg
87 media-libs/libpng
88 >=media-libs/libwebp-0.1.2
89 media-libs/speex
90 cups? (
91 dev-libs/libgcrypt
92 >=net-print/cups-1.3.11
93 )
94 sys-libs/zlib
95 x11-libs/gtk+:2
96 x11-libs/libXinerama
97 x11-libs/libXScrnSaver
98 x11-libs/libXtst"
99 DEPEND="${RDEPEND}
100 dev-lang/perl
101 >=dev-util/gperf-3.0.3
102 >=dev-util/pkgconfig-0.23
103 >=sys-devel/bison-2.4.3
104 sys-devel/flex
105 >=sys-devel/make-3.81-r2
106 test? (
107 dev-python/pyftpdlib
108 dev-python/simplejson
109 virtual/krb5
110 )"
111 RDEPEND+="
112 kerberos? ( virtual/krb5 )
113 x11-misc/xdg-utils
114 virtual/ttf-fonts"
115
116 gyp_use() {
117 if [[ $# -lt 2 ]]; then
118 echo "!!! usage: gyp_use <USEFLAG> <GYPFLAG>" >&2
119 return 1
120 fi
121 if use "$1"; then echo "-D$2=1"; else echo "-D$2=0"; fi
122 }
123
124 egyp() {
125 set -- build/gyp_chromium --depth=. "${@}"
126 echo "${@}" >&2
127 "${@}"
128 }
129
130 # Chromium uses different names for some langs,
131 # return Chromium name corresponding to a Gentoo lang.
132 chromium_lang() {
133 if [[ "$1" == "es_LA" ]]; then
134 echo "es_419"
135 else
136 echo "$1"
137 fi
138 }
139
140 pkg_setup() {
141 CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
142
143 # Make sure the build system will use the right tools, bug #340795.
144 tc-export AR CC CXX RANLIB
145
146 # Make sure the build system will use the right python, bug #344367.
147 python_set_active_version 2
148 python_pkg_setup
149
150 # Prevent user problems like bug #348235.
151 eshopts_push -s extglob
152 if is-flagq '-g?(gdb)?([1-9])'; then
153 ewarn "You have enabled debug info (probably have -g or -ggdb in your \$C{,XX}FLAGS)."
154 ewarn "You may experience really long compilation times and/or increased memory usage."
155 ewarn "If compilation fails, please try removing -g{,gdb} before reporting a bug."
156 fi
157 eshopts_pop
158
159 # Warn if the kernel doesn't support features useful for sandboxing,
160 # bug #363907.
161 CONFIG_CHECK="~PID_NS ~NET_NS"
162 check_extra_config
163 }
164
165 src_prepare() {
166 # bug #374903 - ICU 4.8 compatibility
167 epatch "${FILESDIR}/${PN}-icu-compatibility-r0.patch"
168
169 # Fix build with system libevent, to be upstreamed.
170 epatch "${FILESDIR}/${PN}-system-libevent-r0.patch"
171
172 # Remove most bundled libraries. Some are still needed.
173 find third_party -type f \! -iname '*.gyp*' \
174 \! -path 'third_party/WebKit/*' \
175 \! -path 'third_party/angle/*' \
176 \! -path 'third_party/cacheinvalidation/*' \
177 \! -path 'third_party/cld/*' \
178 \! -path 'third_party/expat/*' \
179 \! -path 'third_party/ffmpeg/*' \
180 \! -path 'third_party/flac/flac.h' \
181 \! -path 'third_party/gpsd/*' \
182 \! -path 'third_party/harfbuzz/*' \
183 \! -path 'third_party/hunspell/*' \
184 \! -path 'third_party/iccjpeg/*' \
185 \! -path 'third_party/launchpad_translations/*' \
186 \! -path 'third_party/leveldb/*' \
187 \! -path 'third_party/libjingle/*' \
188 \! -path 'third_party/libphonenumber/*' \
189 \! -path 'third_party/libvpx/*' \
190 \! -path 'third_party/mesa/*' \
191 \! -path 'third_party/modp_b64/*' \
192 \! -path 'third_party/npapi/*' \
193 \! -path 'third_party/openmax/*' \
194 \! -path 'third_party/ots/*' \
195 \! -path 'third_party/protobuf/*' \
196 \! -path 'third_party/sfntly/*' \
197 \! -path 'third_party/skia/*' \
198 \! -path 'third_party/speex/speex.h' \
199 \! -path 'third_party/sqlite/*' \
200 \! -path 'third_party/tcmalloc/*' \
201 \! -path 'third_party/tlslite/*' \
202 \! -path 'third_party/undoview/*' \
203 \! -path 'third_party/webgl_conformance/*' \
204 \! -path 'third_party/webrtc/*' \
205 \! -path 'third_party/yasm/*' \
206 \! -path 'third_party/zlib/contrib/minizip/*' \
207 -delete || die
208
209 # Make sure the build system will use the right python, bug #344367.
210 # Only convert directories that need it, to save time.
211 python_convert_shebangs -q -r 2 build tools
212 }
213
214 src_configure() {
215 local myconf=""
216
217 # Never tell the build system to "enable" SSE2, it has a few unexpected
218 # additions, bug #336871.
219 myconf+=" -Ddisable_sse2=1"
220
221 # Disable NaCl temporarily, this tarball doesn't have IRT.
222 myconf+=" -Ddisable_nacl=1"
223
224 # Disable WebRTC until they make PulseAudio dependency optional,
225 # bug #377847.
226 myconf+=" -Denable_webrtc=0"
227
228 # Use system-provided libraries.
229 # TODO: use_system_ffmpeg
230 # TODO: use_system_hunspell (upstream changes needed).
231 # TODO: use_system_ssl (http://crbug.com/58087).
232 # TODO: use_system_sqlite (http://crbug.com/22208).
233 # TODO: use_system_vpx
234 myconf+="
235 -Duse_system_bzip2=1
236 -Duse_system_flac=1
237 -Duse_system_icu=1
238 -Duse_system_libevent=1
239 -Duse_system_libjpeg=1
240 -Duse_system_libpng=1
241 -Duse_system_libwebp=1
242 -Duse_system_libxml=1
243 -Duse_system_speex=1
244 -Duse_system_xdg_utils=1
245 -Duse_system_zlib=1"
246
247 # Optional dependencies.
248 myconf+="
249 $(gyp_use cups use_cups)
250 $(gyp_use gnome use_gconf)
251 $(gyp_use gnome-keyring use_gnome_keyring)
252 $(gyp_use gnome-keyring linux_link_gnome_keyring)"
253
254 # Enable sandbox.
255 myconf+="
256 -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
257 -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
258
259 if host-is-pax; then
260 # Prevent the build from failing (bug #301880). The performance
261 # difference is very small.
262 myconf+=" -Dv8_use_snapshot=0"
263 fi
264
265 # Our system ffmpeg should support more codecs than the bundled one
266 # for Chromium.
267 # myconf+=" -Dproprietary_codecs=1"
268
269 local myarch="$(tc-arch)"
270 if [[ $myarch = amd64 ]] ; then
271 myconf+=" -Dtarget_arch=x64"
272 elif [[ $myarch = x86 ]] ; then
273 myconf+=" -Dtarget_arch=ia32"
274 elif [[ $myarch = arm ]] ; then
275 # TODO: check this again after
276 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
277 append-flags -fno-tree-sink
278
279 myconf+=" -Dtarget_arch=arm -Ddisable_nacl=1 -Dlinux_use_tcmalloc=0"
280 else
281 die "Failed to determine target arch, got '$myarch'."
282 fi
283
284 # Make sure that -Werror doesn't get added to CFLAGS by the build system.
285 # Depending on GCC version the warnings are different and we don't want
286 # the build to fail because of that.
287 myconf+=" -Dwerror="
288
289 # Avoid a build error with -Os, bug #352457.
290 replace-flags "-Os" "-O2"
291
292 egyp ${myconf} || die
293 }
294
295 src_compile() {
296 emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die
297 pax-mark m out/Release/chrome
298 if use test; then
299 emake {base,crypto,googleurl,net}_unittests BUILDTYPE=Release V=1 || die
300 pax-mark m out/Release/{base,crypto,googleurl,net}_unittests
301 fi
302 }
303
304 src_test() {
305 # For more info see bug #350349.
306 local mylocale='en_US.utf8'
307 if ! locale -a | grep -q "$mylocale"; then
308 eerror "${PN} requires ${mylocale} locale for tests"
309 eerror "Please read the following guides for more information:"
310 eerror " http://www.gentoo.org/doc/en/guide-localization.xml"
311 eerror " http://www.gentoo.org/doc/en/utf-8.xml"
312 die "locale ${mylocale} is not supported"
313 fi
314
315 # For more info see bug #370957.
316 if [[ $UID -eq 0 ]]; then
317 die "Tests must be run as non-root. Please use FEATURES=userpriv."
318 fi
319
320 # For more info see bug #350347.
321 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/base_unittests virtualmake \
322 '--gtest_filter=-ICUStringConversionsTest.*'
323
324 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/crypto_unittests virtualmake
325 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/googleurl_unittests virtualmake
326
327 # NetUtilTest: bug #361885.
328 # UDP: unstable, active development. We should revisit this later.
329 LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/net_unittests virtualmake \
330 '--gtest_filter=-NetUtilTest.IDNToUnicode*:NetUtilTest.FormatUrl*:*UDP*'
331 }
332
333 src_install() {
334 exeinto "${CHROMIUM_HOME}"
335 doexe out/Release/chrome
336 doexe out/Release/chrome_sandbox || die
337 fperms 4755 "${CHROMIUM_HOME}/chrome_sandbox"
338
339 # Install Native Client files on platforms that support it.
340 # insinto "${CHROMIUM_HOME}"
341 # case "$(tc-arch)" in
342 # amd64)
343 # doins native_client/irt_binaries/nacl_irt_x86_64.nexe || die
344 # doins out/Release/libppGoogleNaClPluginChrome.so || die
345 # ;;
346 # x86)
347 # doins native_client/irt_binaries/nacl_irt_x86_32.nexe || die
348 # doins out/Release/libppGoogleNaClPluginChrome.so || die
349 # ;;
350 # esac
351
352 newexe "${FILESDIR}"/chromium-launcher-r2.sh chromium-launcher.sh || die
353
354 # It is important that we name the target "chromium-browser",
355 # xdg-utils expect it; bug #355517.
356 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser || die
357 # keep the old symlink around for consistency
358 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium || die
359
360 # Allow users to override command-line options, bug #357629.
361 dodir /etc/chromium || die
362 insinto /etc/chromium
363 newins "${FILESDIR}/chromium.default" "default" || die
364
365 # Support LINGUAS, bug #332751.
366 local pak
367 for pak in out/Release/locales/*.pak; do
368 local pakbasename="$(basename ${pak})"
369 local pakname="${pakbasename%.pak}"
370 local langname="${pakname//-/_}"
371
372 # Do not issue warning for en_US locale. This is the fallback
373 # locale so it should always be installed.
374 if [[ "${langname}" == "en_US" ]]; then
375 continue
376 fi
377
378 local found=false
379 local lang
380 for lang in ${LANGS}; do
381 local crlang="$(chromium_lang ${lang})"
382 if [[ "${langname}" == "${crlang}" ]]; then
383 found=true
384 break
385 fi
386 done
387 if ! $found; then
388 ewarn "LINGUAS warning: no ${langname} in LANGS"
389 fi
390 done
391 local lang
392 for lang in ${LANGS}; do
393 local crlang="$(chromium_lang ${lang})"
394 local pakfile="out/Release/locales/${crlang//_/-}.pak"
395 if [ ! -f "${pakfile}" ]; then
396 ewarn "LINGUAS warning: no .pak file for ${lang} (${pakfile} not found)"
397 fi
398 if ! use linguas_${lang}; then
399 rm "${pakfile}" || die
400 fi
401 done
402
403 insinto "${CHROMIUM_HOME}"
404 doins out/Release/chrome.pak || die
405 doins out/Release/resources.pak || die
406
407 doins -r out/Release/locales || die
408 doins -r out/Release/resources || die
409
410 newman out/Release/chrome.1 chromium.1 || die
411 newman out/Release/chrome.1 chromium-browser.1 || die
412
413 # Chromium looks for these in its folder
414 # See media_posix.cc and base_paths_linux.cc
415 # dosym /usr/$(get_libdir)/libavcodec.so.52 "${CHROMIUM_HOME}" || die
416 # dosym /usr/$(get_libdir)/libavformat.so.52 "${CHROMIUM_HOME}" || die
417 # dosym /usr/$(get_libdir)/libavutil.so.50 "${CHROMIUM_HOME}" || die
418 doexe out/Release/ffmpegsumo_nolink || die
419 doexe out/Release/libffmpegsumo.so || die
420
421 # Install icons and desktop entry.
422 for SIZE in 16 22 24 32 48 64 128 256 ; do
423 insinto /usr/share/icons/hicolor/${SIZE}x${SIZE}/apps
424 newins chrome/app/theme/chromium/product_logo_${SIZE}.png \
425 chromium-browser.png || die
426 done
427 local mime_types="text/html;text/xml;application/xhtml+xml;"
428 mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
429 make_desktop_entry chromium-browser "Chromium" chromium-browser \
430 "Network;WebBrowser" \
431 "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
432 sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
433
434 # Install GNOME default application entry (bug #303100).
435 if use gnome; then
436 dodir /usr/share/gnome-control-center/default-apps || die
437 insinto /usr/share/gnome-control-center/default-apps
438 doins "${FILESDIR}"/chromium-browser.xml || die
439 fi
440 }
441
442 pkg_preinst() {
443 gnome2_icon_savelist
444 }
445
446 pkg_postinst() {
447 fdo-mime_desktop_database_update
448 gnome2_icon_cache_update
449
450 # For more info see bug #292201, bug #352263, bug #361859.
451 elog
452 elog "Depending on your desktop environment, you may need"
453 elog "to install additional packages to get icons on the Downloads page."
454 elog
455 elog "For KDE, the required package is kde-base/oxygen-icons."
456 elog
457 elog "For other desktop environments, try one of the following:"
458 elog " - x11-themes/gnome-icon-theme"
459 elog " - x11-themes/tango-icon-theme"
460
461 # For more info see bug #359153.
462 elog
463 elog "Some web pages may require additional fonts to display properly."
464 elog "Try installing some of the following packages if some characters"
465 elog "are not displayed properly:"
466 elog " - media-fonts/arphicfonts"
467 elog " - media-fonts/bitstream-cyberbit"
468 elog " - media-fonts/droid"
469 elog " - media-fonts/ipamonafont"
470 elog " - media-fonts/ja-ipafonts"
471 elog " - media-fonts/takao-fonts"
472 elog " - media-fonts/wqy-microhei"
473 elog " - media-fonts/wqy-zenhei"
474 }
475
476 pkg_postrm() {
477 gnome2_icon_cache_update
478 }