www-client/chromium: add support for component build
authorPawel Hajdan, Jr <phajdan.jr@gentoo.org>
Tue, 3 Jan 2017 21:42:01 +0000 (21:42 +0000)
committerPawel Hajdan, Jr <phajdan.jr@gentoo.org>
Tue, 3 Jan 2017 21:45:15 +0000 (22:45 +0100)
This addresses bug #601590 by David Kredba .

www-client/chromium/chromium-57.0.2950.4.ebuild
www-client/chromium/metadata.xml

index 1da0e2c5115a818c8daa353a7ac6f0ab553456d1..04ae77e145b099238db7efd57c5175447bf14b9f 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -18,7 +18,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE="cups gnome gnome-keyring gtk3 +hangouts kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +tcmalloc widevine"
+IUSE="component-build cups gnome gnome-keyring gtk3 +hangouts kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +tcmalloc widevine"
 RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
 
 # Native Client binaries are compiled with different set of flags, bug #452066.
@@ -340,6 +340,10 @@ src_configure() {
        # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
        myconf_gn+=" is_debug=false"
 
+       # Component build isn't generally intended for use by end users. It's mostly useful
+       # for development and debugging.
+       myconf_gn+=" is_component_build=$(usex component-build true false)"
+
        # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
        myconf_gn+=" enable_nacl=false"
 
@@ -579,6 +583,7 @@ src_install() {
        insinto "${CHROMIUM_HOME}"
        doins out/Release/*.bin
        doins out/Release/*.pak
+       doins out/Release/*.so
 
        # Needed by bundled icu
        doins out/Release/icudtl.dat
index 008a4e4a01deb3fba034eeb5f164c41b4e62b1fc..cbab844193a60a95bf3830ab5251b6e0b286e99f 100644 (file)
@@ -7,6 +7,7 @@
        </maintainer>
        <longdescription>Chromium is the open-source web browser project behind Google Chrome</longdescription>
        <use>
+               <flag name="component-build">Split build into more shared libraries to speed up linking. Mostly intended for debugging and development, NOT RECOMMENDED for general use.</flag>
                <flag name="gn">Use GN (generate ninja) instead of GYP for building</flag>
                <flag name="gtk3">Use gtk3 instead of gtk2</flag>
                <flag name="hangouts">Enable support for Google Hangouts features such as screen sharing</flag>