commit:     9650d52d25c1796baba0b0c71104ec588608ca3f
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 10 17:44:02 2017 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Dec 10 17:47:37 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9650d52d

www-client/chromium: pax-mark v8_context_snapshot_generator

Bug: https://bugs.gentoo.org/640480
Package-Manager: Portage-2.3.17, Repoman-2.3.6_p24

 www-client/chromium/chromium-63.0.3239.84.ebuild | 33 ++++++++++++++----------
 www-client/chromium/chromium-64.0.3282.14.ebuild | 33 ++++++++++++++----------
 2 files changed, 40 insertions(+), 26 deletions(-)

diff --git a/www-client/chromium/chromium-63.0.3239.84.ebuild 
b/www-client/chromium/chromium-63.0.3239.84.ebuild
index c228cfc0c39..71a061010b7 100644
--- a/www-client/chromium/chromium-63.0.3239.84.ebuild
+++ b/www-client/chromium/chromium-63.0.3239.84.ebuild
@@ -537,24 +537,31 @@ src_configure() {
        "$@" || die
 }
 
-src_compile() {
-       local ninja_targets="chrome chromedriver"
-       if use suid; then
-               ninja_targets+=" chrome_sandbox"
-       fi
+host_binary() {
+       local x
+       for x; do
+               if tc-is-cross-compiler; then
+                       eninja -C out/Release "host/${x}"
+                       pax-mark m "out/Release/host/${x}"
+               else
+                       eninja -C out/Release "${x}"
+                       pax-mark m "out/Release/${x}"
+               fi
+       done
+}
 
+src_compile() {
        # Build mksnapshot and pax-mark it.
-       if tc-is-cross-compiler; then
-               eninja -C out/Release host/mksnapshot || die
-               pax-mark m out/Release/host/mksnapshot
-       else
-               eninja -C out/Release mksnapshot || die
-               pax-mark m out/Release/mksnapshot
-       fi
+       host_binary mksnapshot v8_context_snapshot_generator
+
+       # Work around circular dep issue
+       # https://chromium-review.googlesource.com/c/chromium/src/+/617768
+       eninja -C out/Release gen/ui/accessibility/ax_enums.h
 
        # Even though ninja autodetects number of CPUs, we respect
        # user's options, for debugging with -j 1 or any other reason.
-       eninja -C out/Release ${ninja_targets} || die
+       eninja -C out/Release chrome chromedriver
+       use suid && eninja -C out/Release chrome_sandbox
 
        pax-mark m out/Release/chrome
 }

diff --git a/www-client/chromium/chromium-64.0.3282.14.ebuild 
b/www-client/chromium/chromium-64.0.3282.14.ebuild
index a03199f2130..e436cbd1b59 100644
--- a/www-client/chromium/chromium-64.0.3282.14.ebuild
+++ b/www-client/chromium/chromium-64.0.3282.14.ebuild
@@ -539,27 +539,34 @@ src_configure() {
        "$@" || die
 }
 
+host_binary() {
+       local x
+       for x; do
+               if tc-is-cross-compiler; then
+                       eninja -C out/Release "host/${x}"
+                       pax-mark m "out/Release/host/${x}"
+               else
+                       eninja -C out/Release "${x}"
+                       pax-mark m "out/Release/${x}"
+               fi
+       done
+}
+
 src_compile() {
        # Calling this here supports resumption via FEATURES=keepwork
        python_setup
 
-       local ninja_targets="chrome chromedriver"
-       if use suid; then
-               ninja_targets+=" chrome_sandbox"
-       fi
-
        # Build mksnapshot and pax-mark it.
-       if tc-is-cross-compiler; then
-               eninja -C out/Release host/mksnapshot || die
-               pax-mark m out/Release/host/mksnapshot
-       else
-               eninja -C out/Release mksnapshot || die
-               pax-mark m out/Release/mksnapshot
-       fi
+       host_binary mksnapshot v8_context_snapshot_generator
+
+       # Work around circular dep issue
+       # https://chromium-review.googlesource.com/c/chromium/src/+/617768
+       eninja -C out/Release gen/ui/accessibility/ax_enums.h
 
        # Even though ninja autodetects number of CPUs, we respect
        # user's options, for debugging with -j 1 or any other reason.
-       eninja -C out/Release ${ninja_targets} || die
+       eninja -C out/Release chrome chromedriver
+       use suid && eninja -C out/Release chrome_sandbox
 
        pax-mark m out/Release/chrome
 }

Reply via email to