Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 507080 - www-client/chromium-34.0.1847.116 with sys-devel/gcc-4.8.2 on hardened - In function ‘apply_window.constprop.0’: ../../third_party/ffmpeg/libavcodec/x86/mpegaudiodsp.c:82:5: error: ‘asm’ operand has impossible constraints
Summary: www-client/chromium-34.0.1847.116 with sys-devel/gcc-4.8.2 on hardened - In f...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: Chromium Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-07 18:57 UTC by Anthoine Bourgeois
Modified: 2014-05-24 08:16 UTC (History)
1 user (show)

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


Attachments
emerge --info (emerge-info,5.19 KB, text/plain)
2014-04-07 18:58 UTC, Anthoine Bourgeois
Details
emerge -pqv '=www-client/chromium-34.0.1847.116::gentoo' (emerge-pqv,420 bytes, text/plain)
2014-04-07 18:59 UTC, Anthoine Bourgeois
Details
disable -fstack-check (chromium-34.0.1847.116-r1.ebuild.diff,527 bytes, patch)
2014-04-07 19:06 UTC, Anthoine Bourgeois
Details | Diff
chromium-ffmpeg-r0.patch (chromium-ffmpeg-r0.patch,1018 bytes, patch)
2014-05-22 09:05 UTC, Paweł Hajdan, Jr. (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Anthoine Bourgeois 2014-04-07 18:57:33 UTC
Hi,

As bug #506206, the bundled ffmpeg library can't be built with gcc-4.8.2-hardened for the same reason (not enough register available with the new stack-check option added in gcc-4.8.2 hardened profile). This can be workaround by selecting gcc-4.7 or gcc-4.8.2-hardenednossp.



Reproducible: Always
Comment 1 Anthoine Bourgeois 2014-04-07 18:58:31 UTC
Created attachment 374496 [details]
emerge --info
Comment 2 Anthoine Bourgeois 2014-04-07 18:59:08 UTC
Created attachment 374498 [details]
emerge -pqv '=www-client/chromium-34.0.1847.116::gentoo'
Comment 3 Anthoine Bourgeois 2014-04-07 19:06:58 UTC
Created attachment 374504 [details, diff]
disable -fstack-check

The append-flags must be after the strip-flags otherwise -fstack-check=no is filtered.
Comment 4 Mike Gilbert gentoo-dev 2014-05-05 03:14:48 UTC
This sounds reasonable to me. Does anyone else have an opinion?

On small thing: I think "use x86" should probably be a CHOST check instead.
Comment 5 Magnus Granberg gentoo-dev 2014-05-05 11:27:22 UTC
(In reply to Mike Gilbert from comment #4)
> This sounds reasonable to me. Does anyone else have an opinion?
> 
> On small thing: I think "use x86" should probably be a CHOST check instead.
Works fine with me.
Comment 6 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2014-05-22 07:59:09 UTC
This is the error message:

FAILED: i686-pc-linux-gnu-gcc -MMD -MF obj/third_party/ffmpeg/libavcodec/x86/ffmpegsumo.vp3dsp_init.o.d -DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -D_FILE_OFFSET
_BITS=64 -DDISABLE_NACL -DCHROMIUM_BUILD -DTOOLKIT_VIEWS=1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1
 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_ONE_CLICK_SIGNIN -DUSE_XI2_MT=2 -DENABLE_REMOTING=1 -DENABLE_WEBRTC=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_CONFIGUR
ATION_POLICY -DENABLE_INPUT_SPEECH -DENABLE_NOTIFICATIONS -DUSE_UDEV -DENABLE_EGLIMAGE=1 -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_PLUGIN
S=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_BACKGROUND=1 -DENABLE_AUTOMATION=1 -DENABLE_GOOGLE_NOW=1 -DCLD_VERSION=2 -DENABLE_FULL_PRINTING=
1 -DENABLE_PRINTING=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_MANAGED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE
_DISCOVERY=1 -DHAVE_AV_CONFIG_H -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -D_ISOC99_SOURCE -D_LARGEFILE_SOURCE -DUSE_NSS=1 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLE
D=0 -I../../third_party/ffmpeg/chromium/config/Chromium/linux/ia32 -I../../third_party/ffmpeg -fstack-protector --param=ssp-buffer-size=4  -pthread -fno-exceptions -fno-strict-alias
ing -Wno-unused-parameter -Wno-missing-field-initializers -pipe -fPIC -Wno-unused-local-typedefs -fPIC -fomit-frame-pointer -w -std=c99 -pthread -fno-math-errno -fno-signed-zeros -f
no-tree-vectorize -fomit-frame-pointer -Wno-deprecated-declarations -Wno-format -Wno-unused-result -msse2 -mfpmath=sse -mmmx -m32 -O2 -fno-ident -fdata-sections -ffunction-sections 
-funwind-tables -O2 -march=i686 -pipe  -c ../../third_party/ffmpeg/libavcodec/x86/vp3dsp_init.c -o obj/third_party/ffmpeg/libavcodec/x86/ffmpegsumo.vp3dsp_init.o
../../third_party/ffmpeg/libavcodec/x86/vp3dsp_init.c: In function ‘put_vp_no_rnd_pixels8_l2_mmx’:
../../third_party/ffmpeg/libavcodec/x86/vp3dsp_init.c:71:5: error: ‘asm’ operand has impossible constraints
     __asm__ volatile(
     ^
ninja: build stopped: subcommand failed.
 ESC[31;01m*ESC[0m ERROR: www-client/chromium-35.0.1916.114-r1::gentoo failed (compile phase):
 ESC[31;01m*ESC[0m   (no error message)

I'm working on applying the upstream ffmpeg patch - it seems a better solution than disabling -fstack-check, especially that this is hardened profile.
Comment 7 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2014-05-22 09:05:58 UTC
Created attachment 377412 [details, diff]
chromium-ffmpeg-r0.patch
Comment 8 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2014-05-24 08:16:35 UTC
  24 May 2014; Pawel Hajdan jr
  +files/chromium-ffmpeg-r0.patch, chromium-36.0.1985.18.ebuild:
  Fix build on hardened x86, bug #507080 by Anthoine Bourgeois.