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-7.0.517.36.ebuild
Date: Fri, 08 Oct 2010 13:02:50
Message-Id: 20101008121106.D36A720051@flycatcher.gentoo.org
1 phajdan.jr 10/10/08 12:11:06
2
3 Modified: ChangeLog
4 Added: chromium-7.0.517.36.ebuild
5 Log:
6 Version bump for beta channel release.
7 (Portage version: 2.1.8.3/cvs/Linux i686)
8
9 Revision Changes Path
10 1.198 www-client/chromium/ChangeLog
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.198&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.198&content-type=text/plain
14 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?r1=1.197&r2=1.198
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v
19 retrieving revision 1.197
20 retrieving revision 1.198
21 diff -u -r1.197 -r1.198
22 --- ChangeLog 7 Oct 2010 15:20:09 -0000 1.197
23 +++ ChangeLog 8 Oct 2010 12:11:06 -0000 1.198
24 @@ -1,6 +1,12 @@
25 # ChangeLog for www-client/chromium
26 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.197 2010/10/07 15:20:09 phajdan.jr Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.198 2010/10/08 12:11:06 phajdan.jr Exp $
29 +
30 +*chromium-7.0.517.36 (08 Oct 2010)
31 +
32 + 08 Oct 2010; Pawel Hajdan jr <phajdan.jr@g.o>
33 + +chromium-7.0.517.36.ebuild:
34 + Version bump for beta channel release.
35
36 07 Oct 2010; Pawel Hajdan jr <phajdan.jr@g.o> chromium-9999.ebuild:
37 Remove patch applied upstream (system sqlite support).
38
39
40
41 1.1 www-client/chromium/chromium-7.0.517.36.ebuild
42
43 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-7.0.517.36.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-7.0.517.36.ebuild?rev=1.1&content-type=text/plain
45
46 Index: chromium-7.0.517.36.ebuild
47 ===================================================================
48 # Copyright 1999-2010 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-7.0.517.36.ebuild,v 1.1 2010/10/08 12:11:06 phajdan.jr Exp $
51
52 EAPI="2"
53
54 inherit eutils flag-o-matic multilib pax-utils toolchain-funcs
55
56 DESCRIPTION="Open-source version of Google Chrome web browser"
57 HOMEPAGE="http://chromium.org/"
58 SRC_URI="http://build.chromium.org/buildbot/official/${P}.tar.bz2"
59
60 LICENSE="BSD"
61 SLOT="0"
62 KEYWORDS="~amd64 ~arm ~x86"
63 IUSE="cups gnome gnome-keyring"
64
65 RDEPEND="app-arch/bzip2
66 >=dev-libs/icu-4.4.1
67 >=dev-libs/libevent-1.4.13
68 dev-libs/libxml2
69 dev-libs/libxslt
70 >=dev-libs/nss-3.12.3
71 >=gnome-base/gconf-2.24.0
72 gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2 )
73 >=media-libs/alsa-lib-1.0.19
74 media-libs/jpeg:0
75 media-libs/libpng
76 cups? ( >=net-print/cups-1.4.4 )
77 sys-libs/zlib
78 >=x11-libs/gtk+-2.14.7
79 x11-libs/libXScrnSaver"
80 DEPEND="${RDEPEND}
81 dev-lang/perl
82 >=dev-util/gperf-3.0.3
83 >=dev-util/pkgconfig-0.23
84 sys-devel/flex"
85 RDEPEND+="
86 || (
87 x11-themes/gnome-icon-theme
88 x11-themes/oxygen-molecule
89 x11-themes/tango-icon-theme
90 x11-themes/xfce4-icon-theme
91 )
92 x11-apps/xmessage
93 x11-misc/xdg-utils
94 virtual/ttf-fonts"
95
96 remove_bundled_lib() {
97 einfo "Removing bundled library $1 ..."
98 local out
99 out="$(find $1 -mindepth 1 \! -iname '*.gyp' -print -delete)" \
100 || die "failed to remove bundled library $1"
101 if [[ -z $out ]]; then
102 die "no files matched when removing bundled library $1"
103 fi
104 }
105
106 pkg_setup() {
107 CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
108 }
109
110 src_prepare() {
111 # Add Gentoo plugin paths.
112 epatch "${FILESDIR}"/${PN}-plugins-path-r0.patch
113
114 # Make compile-time dependency on gnome-keyring optional, bug #332411.
115 epatch "${FILESDIR}"/${PN}-gnome-keyring-r0.patch
116
117 remove_bundled_lib "third_party/bzip2"
118 remove_bundled_lib "third_party/codesighs"
119 remove_bundled_lib "third_party/cros"
120 remove_bundled_lib "third_party/icu"
121 remove_bundled_lib "third_party/jemalloc"
122 remove_bundled_lib "third_party/lcov"
123 remove_bundled_lib "third_party/libevent"
124 remove_bundled_lib "third_party/libjpeg"
125 remove_bundled_lib "third_party/libpng"
126 remove_bundled_lib "third_party/libxml"
127 remove_bundled_lib "third_party/libxslt"
128 remove_bundled_lib "third_party/lzma_sdk"
129 remove_bundled_lib "third_party/molokocacao"
130 remove_bundled_lib "third_party/ocmock"
131 remove_bundled_lib "third_party/pyftpdlib"
132 remove_bundled_lib "third_party/simplejson"
133 remove_bundled_lib "third_party/tlslite"
134 # TODO: also remove third_party/zlib. For now the compilation fails if we
135 # remove it (minizip-related).
136 }
137
138 src_configure() {
139 local myconf=""
140
141 # Never tell the build system to "enable" SSE2, it has a few unexpected
142 # additions, bug #336871.
143 myconf+=" -Ddisable_sse2=1"
144
145 # Use system-provided libraries.
146 # TODO: use_system_ffmpeg (http://crbug.com/50678).
147 # TODO: use_system_sqlite (http://crbug.com/22208).
148 # TODO: use_system_hunspell (upstream changes needed).
149 # TODO: use_system_ssl when we have a recent enough system NSS.
150 myconf+="
151 -Duse_system_bzip2=1
152 -Duse_system_icu=1
153 -Duse_system_libevent=1
154 -Duse_system_libjpeg=1
155 -Duse_system_libpng=1
156 -Duse_system_libxml=1
157 -Duse_system_zlib=1"
158
159 # The dependency on cups is optional, see bug #324105.
160 if use cups; then
161 myconf+=" -Duse_cups=1"
162 else
163 myconf+=" -Duse_cups=0"
164 fi
165
166 if use "gnome-keyring"; then
167 myconf+=" -Duse_gnome_keyring=1 -Dlinux_link_gnome_keyring=1"
168 else
169 # TODO: we should also disable code trying to dlopen
170 # gnome-keyring in that case.
171 myconf+=" -Duse_gnome_keyring=0 -Dlinux_link_gnome_keyring=0"
172 fi
173
174 # Enable sandbox.
175 myconf+="
176 -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
177 -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
178
179 # Disable the V8 snapshot. It breaks the build on hardened (bug #301880),
180 # and the performance gain isn't worth it.
181 myconf+=" -Dv8_use_snapshot=0"
182
183 # Disable tcmalloc memory allocator. It causes problems,
184 # for example bug #320419.
185 myconf+=" -Dlinux_use_tcmalloc=0"
186
187 # Use target arch detection logic from bug #296917.
188 local myarch="$ABI"
189 [[ $myarch = "" ]] && myarch="$ARCH"
190
191 if [[ $myarch = amd64 ]] ; then
192 myconf+=" -Dtarget_arch=x64"
193 elif [[ $myarch = x86 ]] ; then
194 myconf+=" -Dtarget_arch=ia32"
195 elif [[ $myarch = arm ]] ; then
196 # TODO: check this again after
197 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
198 append-flags -fno-tree-sink
199
200 myconf+=" -Dtarget_arch=arm -Ddisable_nacl=1 -Dlinux_use_tcmalloc=0"
201 else
202 die "Failed to determine target arch, got '$myarch'."
203 fi
204
205 if [[ "$(gcc-major-version)$(gcc-minor-version)" == "44" ]]; then
206 myconf+=" -Dno_strict_aliasing=1 -Dgcc_version=44"
207 fi
208
209 # Work around a likely GCC bug, see bug #331945.
210 if [[ "$(gcc-major-version)$(gcc-minor-version)" == "45" ]]; then
211 append-flags -fno-ipa-cp
212 fi
213
214 # Make sure that -Werror doesn't get added to CFLAGS by the build system.
215 # Depending on GCC version the warnings are different and we don't want
216 # the build to fail because of that.
217 myconf+=" -Dwerror="
218
219 build/gyp_chromium -f make build/all.gyp ${myconf} --depth=. || die
220 }
221
222 src_compile() {
223 emake -r V=1 chrome chrome_sandbox BUILDTYPE=Release \
224 CC="$(tc-getCC)" \
225 CXX="$(tc-getCXX)" \
226 AR="$(tc-getAR)" \
227 RANLIB="$(tc-getRANLIB)" \
228 || die
229 }
230
231 src_install() {
232 exeinto "${CHROMIUM_HOME}"
233 pax-mark m out/Release/chrome
234 doexe out/Release/chrome
235 doexe out/Release/chrome_sandbox || die
236 fperms 4755 "${CHROMIUM_HOME}/chrome_sandbox"
237 doexe out/Release/xdg-settings || die
238 doexe "${FILESDIR}"/chromium-launcher.sh || die
239
240 insinto "${CHROMIUM_HOME}"
241 doins out/Release/chrome.pak || die
242 doins out/Release/resources.pak || die
243
244 doins -r out/Release/locales || die
245 doins -r out/Release/resources || die
246
247 # chrome.1 is for chromium --help
248 newman out/Release/chrome.1 chrome.1 || die
249 newman out/Release/chrome.1 chromium.1 || die
250
251 doexe out/Release/ffmpegsumo_nolink || die
252 doexe out/Release/libffmpegsumo.so || die
253
254 # Install icon and desktop entry.
255 newicon out/Release/product_logo_48.png ${PN}-browser.png || die
256 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium || die
257 make_desktop_entry chromium "Chromium" ${PN}-browser "Network;WebBrowser" \
258 "MimeType=text/html;text/xml;application/xhtml+xml;"
259 sed -e "/^Exec/s/$/ %U/" -i "${D}"/usr/share/applications/*.desktop || die
260
261 # Install GNOME default application entry (bug #303100).
262 if use gnome; then
263 dodir /usr/share/gnome-control-center/default-apps || die
264 insinto /usr/share/gnome-control-center/default-apps
265 doins "${FILESDIR}"/chromium.xml || die
266 fi
267 }