Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 560090 - www-client/chromium-45.0.2454.85 fails to build
Summary: www-client/chromium-45.0.2454.85 fails to build
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Chromium Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-09-10 08:39 UTC by François Valenduc
Modified: 2015-09-15 16:06 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
full build log (build.log,858.27 KB, text/plain)
2015-09-10 16:32 UTC, François Valenduc
Details

Note You need to log in before you can comment on or make changes to this bug.
Description François Valenduc 2015-09-10 08:39:27 UTC
When I try to compile chromium 45.0.2454.85, this is what I get:
 
./../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2_impl.h:28:23: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
 static INLINE __m256i k_madd_epi32_avx2(__m256i a, __m256i b) {
                       ^
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/immintrin.h:43:0,
                 from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:11:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/avx2intrin.h:570:1: erreur: inlining failed in call to always_inline ‘_mm256_mul_epu32’: target specific option mismatch
 _mm256_mul_epu32 (__m256i __A, __m256i __B)
 ^
In file included from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:24:0:
../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2_impl.h:30:8: erreur: appelé d'ici
   buf0 = _mm256_mul_epu32(a, b);
        ^
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/immintrin.h:43:0,
                 from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:11:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/avx2intrin.h:790:1: erreur: inlining failed in call to always_inline ‘_mm256_srli_epi64’: target specific option mismatch
 _mm256_srli_epi64 (__m256i __A, int __B)
 ^
In file included from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:24:0:
../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2_impl.h:31:5: erreur: appelé d'ici
   a = _mm256_srli_epi64(a, 32);
     ^
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/immintrin.h:43:0,
                 from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:11:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/avx2intrin.h:790:1: erreur: inlining failed in call to always_inline ‘_mm256_srli_epi64’: target specific option mismatch
 _mm256_srli_epi64 (__m256i __A, int __B)
 ^
In file included from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:24:0:
../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2_impl.h:32:5: erreur: appelé d'ici
   b = _mm256_srli_epi64(b, 32);
     ^
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/immintrin.h:43:0,
                 from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:11:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/avx2intrin.h:570:1: erreur: inlining failed in call to always_inline ‘_mm256_mul_epu32’: target specific option mismatch
 _mm256_mul_epu32 (__m256i __A, __m256i __B)
 ^
In file included from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:24:0:
../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2_impl.h:33:8: erreur: appelé d'ici
   buf1 = _mm256_mul_epu32(a, b);
        ^
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/immintrin.h:43:0,
                 from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:11:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/avx2intrin.h:126:1: erreur: inlining failed in call to always_inline ‘_mm256_add_epi64’: target specific option mismatch
 _mm256_add_epi64 (__m256i __A, __m256i __B)
 ^
In file included from ../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct_avx2.c:24:0:
../../third_party/libvpx/source/libvpx/vp9/encoder/x86/vp9_dct32x32_avx2_impl.h:34:10: erreur: appelé d'ici
   return _mm256_add_epi64(buf0, buf1);


Reproducible: Always




output of emerge --info:

Portage 2.2.20.1 (python 3.4.1-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.3, glibc-2.20-r2, 4.1.6 x86_64)
=================================================================
System uname: Linux-4.1.6-x86_64-Intel-R-_Core-TM-_i3_CPU_M_350_@_2.27GHz-with-gentoo-2.2
KiB Mem:     2939848 total,    680004 free
KiB Swap:    3145724 total,   3135352 free
sh bash 4.3_p39
ld GNU ld (Gentoo 2.24 p1.4) 2.24
distcc 3.1 x86_64-pc-linux-gnu [enabled]
ccache version 3.1.9 [enabled]
app-shells/bash:          4.3_p39::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.9-r1::gentoo, 3.3.5-r1::gentoo, 3.4.1::gentoo
dev-util/ccache:          3.1.9-r4::gentoo
dev-util/cmake:           3.2.2::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.12.6::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.24-r3::gentoo
sys-devel/gcc:            4.9.3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: git://anongit.gentoo.org/repo/gentoo.git
    priority: -1000

rion
    location: /var/lib/layman/rion
    masters: gentoo
    priority: 0

java
    location: /var/lib/layman/java
    masters: gentoo
    priority: 1

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 2

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA Oracle-BCLA-JavaSE dlj-1.1 AdobeFlash-10.3 AdobeFlash-11.x skype-4.0.0.7-copyright PUEL"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=westmere -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mno-movbe -mno-aes -mno-sha -mno-pclmul -mpopcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mno-avx -mno-avx2 -msse4.2 -msse4.1 -mno-lzcnt -mno-rtm -mno-hle -mno-rdrnd -mno-f16c -mno-fsgsbase -mno-rdseed -mno-prfchw -mno-adx -mfxsr -mno-xsave -mno-xsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=westmere -fstack-protector-strong"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/easy-rsa /usr/share/genkernel/arch /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -march=westmere -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mno-movbe -mno-aes -mno-sha -mno-pclmul -mpopcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mno-avx -mno-avx2 -msse4.2 -msse4.1 -mno-lzcnt -mno-rtm -mno-hle -mno-rdrnd -mno-f16c -mno-fsgsbase -mno-rdseed -mno-prfchw -mno-adx -mfxsr -mno-xsave -mno-xsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=westmere -fstack-protector-strong"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildsyspkg ccache config-protect-if-modified distcc distlocks ebuild-locks fixlafiles merge-sync metadata-transfer news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync webrsync-gpg"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://pc-francois.local/ http://mirror.ovh.net/gentoo-distfiles/"
LANG="fr_BE.UTF-8"
LC_ALL="fr_BE.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude='/lost+found'"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cddb cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gif glamor gpm gstreamer gtk iconv ipv6 java jpeg kde kerberos kpathsea lcms libnotify lzma mad mmx mmxext mng modules mp3 mp4 mpeg multilib musicbrainz ncurses networkmanager nls nptl nsplugin ogg opengl openmp pam pango pcre pdf png policykit ppds qt3support qt4 readline samba scanner sdl seccomp semantic-desktop session spell sse sse2 sse3 ssl ssse3 startup-notification svg tcpd tiff truetype udev udisks unicode upnp upower usb v4l2 vim-syntax vorbis wxwidgets xcb xml xosd xv xvid zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" DRACUT_MODULES="plymouth lvm" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="fr" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="intel i915" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON
Comment 1 François Valenduc 2015-09-10 14:10:04 UTC
If I use the following CFLAGS, I don't get the error:
CFLAGS="-march=westmere -O2 -pipe -maes -msse4.2 -mavx"
Since I use distcc, I don't use -march=native. However, the flags listed in the output of emerge --info are those that would be selected by -march=native.
Comment 2 Mike Gilbert gentoo-dev 2015-09-10 14:51:47 UTC
Are you building chromium with USE="custom-cflags"?

Please attach a build log.
Comment 3 François Valenduc 2015-09-10 16:20:57 UTC
As I said, I use distcc, so I set the same CFLAGS as those that would be selected by -march=native (as explained here: https://wiki.gentoo.org/wiki/Distcc/fr#-march.3Dnative). I am restarting a build with these cflags to get a fuild build log containing the error.
Comment 4 François Valenduc 2015-09-10 16:32:43 UTC
Created attachment 411554 [details]
full build log

So here is the full build log. And I don't use custom-cflags.
Comment 5 Mike Gilbert gentoo-dev 2015-09-10 17:45:16 UTC
Ok, so we probably need to filter some additional -mno-xxx flags. Here's what we currently have:

    # Avoid CFLAGS problems, bug #352457, bug #390147.
    if ! use custom-cflags; then
        replace-flags "-Os" "-O2"
        strip-flags

        # Prevent linker from running out of address space, bug #471810 .
        if use x86; then
            filter-flags "-g*"
        fi

        # Prevent libvpx build failures. Bug 530248, 544702, 546984.
        if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
            filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx2
        fi
    fi


I will have to review the log to find what we are missing.
Comment 6 bgo 2015-09-15 14:45:15 UTC
I was hit by this too (compile failed at libvpx). For me removing -mno-avx from CFLAGS fixed it. (Had it there because of legacy problems with gcc-4.4 and sandybridge)

Failing CFLAGS:
CFLAGS="-march=native -O2 -pipe -mno-avx"

Successful CFLAGS:
CFLAGS="-march=native -O2 -pipe"
Comment 7 Mike Gilbert gentoo-dev 2015-09-15 16:06:42 UTC
commit bbdae66fe299fab36e8531eb1bc1239cd35da57c
Author: Mike Gilbert <floppym@gentoo.org>
Date:   Tue Sep 15 12:05:42 2015 -0400

    www-client/chromium: Filter -mno-avx

    Bug: https://bugs.gentoo.org/560090

    Package-Manager: portage-2.2.20

 www-client/chromium/chromium-45.0.2454.85.ebuild | 2 +-
 www-client/chromium/chromium-46.0.2490.13.ebuild | 2 +-
 www-client/chromium/chromium-47.0.2503.0.ebuild  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)