Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 547630 | Differences between
and this patch

Collapse All | Expand All

(-)a/chromium-44.0.2403.61.ebuild (-4 / +50 lines)
Lines 19-25 SRC_URI="https://commondatastorage.googl Link Here
19
LICENSE="BSD hotwording? ( no-source-code )"
19
LICENSE="BSD hotwording? ( no-source-code )"
20
SLOT="0"
20
SLOT="0"
21
KEYWORDS="~amd64 ~arm ~x86"
21
KEYWORDS="~amd64 ~arm ~x86"
22
IUSE="cups gnome gnome-keyring hidpi hotwording kerberos neon pic +proprietary-codecs pulseaudio selinux +tcmalloc"
22
IUSE="cups gnome gnome-keyring hidpi hotwording kerberos neon pic +proprietary-codecs pulseaudio selinux +tcmalloc +widevine"
23
RESTRICT="proprietary-codecs? ( bindist )"
23
RESTRICT="proprietary-codecs? ( bindist )"
24
24
25
# Native Client binaries are compiled with different set of flags, bug #452066.
25
# Native Client binaries are compiled with different set of flags, bug #452066.
Lines 91-97 DEPEND="${RDEPEND} Link Here
91
	sys-apps/hwids[usb(+)]
91
	sys-apps/hwids[usb(+)]
92
	>=sys-devel/bison-2.4.3
92
	>=sys-devel/bison-2.4.3
93
	sys-devel/flex
93
	sys-devel/flex
94
	virtual/pkgconfig"
94
	virtual/pkgconfig
95
	widevine? ( www-plugins/chrome-binary-plugins[widevine] )"
95
96
96
# For nvidia-drivers blocker, see bug #413637 .
97
# For nvidia-drivers blocker, see bug #413637 .
97
RDEPEND+="
98
RDEPEND+="
Lines 122-127 if ! has chromium_pkg_die ${EBUILD_DEATH Link Here
122
	EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
123
	EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
123
fi
124
fi
124
125
126
# TODO: flag-mask widevine in non-intel profiles
127
REQUIRED_USE="|| ( x86 amd64 !widevine )"
128
125
DISABLE_AUTOFORMATTING="yes"
129
DISABLE_AUTOFORMATTING="yes"
126
DOC_CONTENTS="
130
DOC_CONTENTS="
127
Some web pages may require additional fonts to display properly.
131
Some web pages may require additional fonts to display properly.
Lines 189-194 src_prepare() { Link Here
189
	epatch "${FILESDIR}/${PN}-system-jinja-r7.patch"
193
	epatch "${FILESDIR}/${PN}-system-jinja-r7.patch"
190
	epatch "${FILESDIR}/${PN}-hotwording-2403.patch"
194
	epatch "${FILESDIR}/${PN}-hotwording-2403.patch"
191
195
196
	# When building non-Chrome-branded linux targets,
197
	# build a full widevine cdm if requested (#547630)
198
	epatch "${FILESDIR}/${PN}-widevine-2403.patch"
199
200
	if use widevine; then
201
		local WIDEVINE_VERSION="$(< "${ROOT}/usr/$(get_libdir)/chromium-browser/widevine.version")"
202
		[[ -z $WIDEVINE_VERSION ]] && die "Could not determine Widevine version."
203
204
		# to build the full widevine cdm, we must provide some versioning constants:
205
		local header_lines=(
206
			"#include \"third_party/widevine/cdm/widevine_cdm_common.h\""
207
			"#define WIDEVINE_CDM_AVAILABLE"
208
			"#define WINEVINE_CDM_VERSION_STRING \"${WIDEVINE_VERSION}\""
209
		)
210
211
		# inject just above widevine_cdm_version.h's last line
212
		local header_line sedscript='$i'
213
		for header_line in "${header_lines[@]}"; do 
214
			sedscript+=${header_line}
215
			sedscript+='\n'
216
		done
217
		sed -e "${sedscript}" -i third_party/widevine/cdm/widevine_cdm_version.h || die
218
	fi
219
192
	epatch_user
220
	epatch_user
193
221
194
	# Remove most bundled libraries. Some are still needed.
222
	# Remove most bundled libraries. Some are still needed.
Lines 286-295 src_prepare() { Link Here
286
		'v8/src/third_party/fdlibm' \
314
		'v8/src/third_party/fdlibm' \
287
		'v8/src/third_party/kernel' \
315
		'v8/src/third_party/kernel' \
288
		'v8/src/third_party/valgrind' \
316
		'v8/src/third_party/valgrind' \
317
		'third_party/devscripts' \
289
		--do-remove || die
318
		--do-remove || die
290
}
319
}
291
320
292
src_configure() {
321
src_configure() {
322
	if use widevine; then
323
		local WIDEVINE_SUPPORTED_ARCHS="x64 ia32"
324
		local arch
325
		for arch in ${WIDEVINE_SUPPORTED_ARCHS}; do
326
			[[ -d third_party/widevine/cdm/linux/${arch} ]] \
327
				|| mkdir -p third_party/widevine/cdm/linux/${arch} \
328
					|| die "Could not make widevine header directory for arch \"${arch}\"."
329
			cp "${ROOT}/usr/$(get_libdir)/chromium-browser/libwidevinecdm.so" \
330
				third_party/widevine/cdm/widevine_cdm_*.h \
331
				third_party/widevine/cdm/linux/${arch}/ \
332
					|| die "Could not copy headers for Widevine."
333
		done
334
	fi
335
293
	local myconf=""
336
	local myconf=""
294
337
295
	# Never tell the build system to "enable" SSE2, it has a few unexpected
338
	# Never tell the build system to "enable" SSE2, it has a few unexpected
Lines 362-368 src_configure() { Link Here
362
		$(gyp_use hotwording enable_hotwording)
405
		$(gyp_use hotwording enable_hotwording)
363
		$(gyp_use kerberos)
406
		$(gyp_use kerberos)
364
		$(gyp_use pulseaudio)
407
		$(gyp_use pulseaudio)
365
		$(gyp_use tcmalloc use_allocator tcmalloc none)"
408
		$(gyp_use tcmalloc use_allocator tcmalloc none)
409
		$(gyp_use widevine enable_widevine)"
366
410
367
	# Use explicit library dependencies instead of dlopen.
411
	# Use explicit library dependencies instead of dlopen.
368
	# This makes breakages easier to detect by revdep-rebuild.
412
	# This makes breakages easier to detect by revdep-rebuild.
Lines 582-588 src_install() { Link Here
582
	newman out/Release/chrome.1 chromium${CHROMIUM_SUFFIX}.1 || die
626
	newman out/Release/chrome.1 chromium${CHROMIUM_SUFFIX}.1 || die
583
	newman out/Release/chrome.1 chromium-browser${CHROMIUM_SUFFIX}.1 || die
627
	newman out/Release/chrome.1 chromium-browser${CHROMIUM_SUFFIX}.1 || die
584
628
585
	doexe out/Release/libffmpegsumo.so || die
629
	if use widevine; then
630
		doexe out/Release/libwidevinecdmadapter.so
631
	fi
586
632
587
	# Install icons and desktop entry.
633
	# Install icons and desktop entry.
588
	local branding size
634
	local branding size

Return to bug 547630