commit:     4b265d4ccf3af7b9fa7fcbb0173f043c50fe601c
Author:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 19 07:52:16 2020 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Wed Apr 22 14:48:31 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b265d4c

www-client/chromium: add ppc64 glue

no keywords, but this allows users do download patches
and use gentoo ebuild to install chromium on ppc64le machines

patch downloader script available at:
https://gist.github.com/gyakovlev/d9dee9a554f5f1ff086b15e6f927ebf7

Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 www-client/chromium/chromium-81.0.4044.113.ebuild | 21 +++++++++++++++++----
 www-client/chromium/chromium-83.0.4103.14.ebuild  | 21 +++++++++++++++++----
 2 files changed, 34 insertions(+), 8 deletions(-)

diff --git a/www-client/chromium/chromium-81.0.4044.113.ebuild 
b/www-client/chromium/chromium-81.0.4044.113.ebuild
index 71890ea048b..551aed9bd1d 100644
--- a/www-client/chromium/chromium-81.0.4044.113.ebuild
+++ b/www-client/chromium/chromium-81.0.4044.113.ebuild
@@ -89,9 +89,6 @@ DEPEND="${COMMON_DEPEND}
 BDEPEND="
        ${PYTHON_DEPS}
        >=app-arch/gzip-1.7
-       !arm? (
-               dev-lang/yasm
-       )
        dev-lang/perl
        dev-util/gn
        dev-vcs/git
@@ -101,8 +98,12 @@ BDEPEND="
        sys-apps/hwids[usb(+)]
        >=sys-devel/bison-2.4.3
        sys-devel/flex
-       closure-compile? ( virtual/jre )
        virtual/pkgconfig
+       closure-compile? ( virtual/jre )
+       !system-libvpx? (
+               amd64? ( dev-lang/yasm )
+               x86? ( dev-lang/yasm )
+       )
 "
 
 : ${CHROMIUM_FORCE_CLANG=no}
@@ -403,6 +404,15 @@ src_prepare() {
        if ! use system-libvpx; then
                keeplibs+=( third_party/libvpx )
                keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc 
)
+
+               # we need to generate ppc64 stuff because upstream does not 
ship it yet
+               # it has to be done before unbundling.
+               if use ppc64; then
+                       pushd third_party/libvpx >/dev/null || die
+                       mkdir -p source/config/linux/ppc64 || die
+                       ./generate_gni.sh || die
+                       popd >/dev/null || die
+               fi
        fi
        if use tcmalloc; then
                keeplibs+=( third_party/tcmalloc )
@@ -569,6 +579,9 @@ src_configure() {
        elif [[ $myarch = arm ]] ; then
                myconf_gn+=" target_cpu=\"arm\""
                ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
+       elif [[ $myarch = ppc64 ]] ; then
+               myconf_gn+=" target_cpu=\"ppc64\""
+               ffmpeg_target_arch=ppc64
        else
                die "Failed to determine target arch, got '$myarch'."
        fi

diff --git a/www-client/chromium/chromium-83.0.4103.14.ebuild 
b/www-client/chromium/chromium-83.0.4103.14.ebuild
index 94c94ec2ffe..831d1ba21f8 100644
--- a/www-client/chromium/chromium-83.0.4103.14.ebuild
+++ b/www-client/chromium/chromium-83.0.4103.14.ebuild
@@ -91,9 +91,6 @@ BDEPEND="
        ${PYTHON_DEPS}
        >=app-arch/gzip-1.7
        app-arch/unzip
-       !arm? (
-               dev-lang/yasm
-       )
        dev-lang/perl
        >=dev-util/gn-0.1726
        dev-vcs/git
@@ -103,8 +100,12 @@ BDEPEND="
        sys-apps/hwids[usb(+)]
        >=sys-devel/bison-2.4.3
        sys-devel/flex
-       closure-compile? ( virtual/jre )
        virtual/pkgconfig
+       closure-compile? ( virtual/jre )
+       !system-libvpx? (
+               amd64? ( dev-lang/yasm )
+               x86? ( dev-lang/yasm )
+       )
 "
 
 : ${CHROMIUM_FORCE_CLANG=no}
@@ -419,6 +420,15 @@ src_prepare() {
        if ! use system-libvpx; then
                keeplibs+=( third_party/libvpx )
                keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc 
)
+
+               # we need to generate ppc64 stuff because upstream does not 
ship it yet
+               # it has to be done before unbundling.
+               if use ppc64; then
+                       pushd third_party/libvpx >/dev/null || die
+                       mkdir -p source/config/linux/ppc64 || die
+                       ./generate_gni.sh || die
+                       popd >/dev/null || die
+               fi      
        fi
        if use tcmalloc; then
                keeplibs+=( third_party/tcmalloc )
@@ -586,6 +596,9 @@ src_configure() {
        elif [[ $myarch = arm ]] ; then
                myconf_gn+=" target_cpu=\"arm\""
                ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
+       elif [[ $myarch = ppc64 ]] ; then
+               myconf_gn+=" target_cpu=\"ppc64\""
+               ffmpeg_target_arch=ppc64
        else
                die "Failed to determine target arch, got '$myarch'."
        fi

Reply via email to