Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 581248 - net-libs/webkit-gtk 2.10.x no support for 2d canvas acceleration
Summary: net-libs/webkit-gtk 2.10.x no support for 2d canvas acceleration
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-04-26 09:38 UTC by cronolio
Modified: 2018-07-23 22:30 UTC (History)
1 user (show)

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


Attachments
webkitgtk-2.10.7 where no 2d canvas (file_581248.txt,14.05 KB, text/plain)
2016-04-26 09:38 UTC, cronolio
Details
webkitgtk-2.8.5 where 2d canvas availlable (file_581248.txt,14.60 KB, text/plain)
2016-04-26 09:41 UTC, cronolio
Details
patch to enable 2d canvas if webgl use flag enabled (file_581248.txt,971 bytes, patch)
2016-05-09 17:52 UTC, cronolio
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description cronolio 2016-04-26 09:38:59 UTC
Created attachment 432072 [details]
webkitgtk-2.10.7 where no 2d canvas

emerge --info
Portage 2.2.26 (python 3.4.3-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.3, glibc-2.22-r4, 4.2.6-gentoo x86_64)
=================================================================
System uname: Linux-4.2.6-gentoo-x86_64-Pentium-R-_Dual-Core_CPU_E6600_@_3.06GHz-with-gentoo-2.2
KiB Mem:     4045972 total,    898372 free
KiB Swap:    3145724 total,   2974516 free
Timestamp of repository gentoo: Mon, 25 Apr 2016 13:25:18 +0000
sh bash 4.3_p42-r1
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
ccache version 3.2.4 [enabled]
app-shells/bash:          4.3_p42-r1::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.10-r1::gentoo, 3.4.3-r1::gentoo
dev-util/ccache:          3.2.4::gentoo
dev-util/cmake:           3.3.1-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.19.1::gentoo
sys-apps/sandbox:         2.10-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::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: 4.3::gentoo (virtual/os-headers)
sys-libs/glibc:           2.22-r4::gentoo
Repositories:

gentoo
    location: /mnt/mirror/portage
    sync-type: git
    sync-uri: git://github.com/gentoo-mirror/gentoo
    priority: -1000

rion
    location: /var/lib/layman/rion
    sync-type: laymansync
    sync-uri: git://github.com/rion-overlay/rion-overlay.git
    masters: gentoo
    priority: 50

steam-overlay
    location: /var/lib/layman/steam-overlay
    sync-type: laymansync
    sync-uri: git://github.com/anyc/steam-overlay.git
    masters: gentoo
    priority: 50

local-crossdev
    location: /mnt/mirror/portage-crossdev
    masters: gentoo
    priority: 9999

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -O2 -pipe -mssse3 -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt /var/bind"
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/terminfo"
CXXFLAGS="-march=core2 -O2 -pipe -mssse3 -fomit-frame-pointer"
DISTDIR="/mnt/mirror/gentoo-distfiles/distfiles/"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news nodoc parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles/"
LANG="ru_RU.utf8"
LC_ALL=""
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j3"
PKGDIR="/mnt/mirror/gentoo-distfiles/package/"
PORTAGE_CONFIGROOT="/"
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 aacplus acl acpi alsa amd64 bash-completion berkdb branding bzip2 cairo cdda cdr cli consolekit cpudetection cracklib crypt cue cxx dbus djvu dri dts dvd dvdr emboss encode exif faac fam ffmpeg firefox flac gdbm gif glamor gnome-keyring gstreamer gtk gtk3 gtkstyle iconv jpeg lcms libnotify lzma mad matroska mmx mmxext mng modplug modules mp3 mp4 mpeg multilib musepack mysqli natspec ncurses networkmanager nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pulseaudio rar readline sdl seccomp session spell sse sse2 sse3 ssl ssse3 startup-notification svg theora tiff truetype twolame udev udisks unicode upower usb v4l vaapi vdpau vorbis vpx wavpack wxwidgets x264 xattr xcb xml xv xvid xvmc zlib" ABI_X86="64" ALSA_CARDS="hda-intel" 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" APACHE2_MPMS="prefork" 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 sse sse2 sse3 ssse3" 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" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru ru_RU" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_USER_TARGETS="x86_64" RUBY_TARGETS="ruby20" USERLAND="GNU" VIDEO_CARDS="nvidia" 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, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 cronolio 2016-04-26 09:41:44 UTC
Created attachment 432082 [details]
webkitgtk-2.8.5 where 2d canvas availlable
Comment 2 cronolio 2016-04-26 10:17:39 UTC
[ebuild   R    ] net-libs/webkit-gtk-2.8.5:4/37::gentoo  USE="(X) egl geoloc gstreamer introspection jit opengl spell webgl -coverage -doc -gles2 -libsecret {-test} -wayland"

[ebuild     U  ] net-libs/webkit-gtk-2.10.7:4/37::gentoo [2.8.5:4/37::gentoo] USE="(X) egl geoloc gnome-keyring%* gstreamer introspection jit opengl spell webgl (-aqua) -coverage -doc -gles2 -nsplugin% {-test} -wayland (-libsecret%)"

[ebuild   R    ] x11-libs/cairo-1.14.2::gentoo  USE="X glib opengl svg xcb (-aqua) -debug (-directfb) (-gles2) -static-libs -valgrind -xlib-xcb" ABI_X86="32 (64) (-x32)"

[ebuild   R    ] media-libs/mesa-11.0.6::gentoo  USE="classic dri3 egl gallium gbm nptl udev vaapi vdpau xvmc -bindist -d3d9 -debug -gles1 -gles2 -llvm -opencl -openmax -osmesa -pax_kernel -pic (-selinux) -wayland -xa" ABI_X86="32 (64) (-x32)" VIDEO_CARDS="(-freedreno) -i915 -i965 -ilo -intel -nouveau -r100 -r200 -r300 -r600 -radeon -radeonsi -vmware" 

why webkit-gtk-2.8.5 configured with 2d canvas but net-libs/webkit-gtk-2.10.7 not
Comment 3 cronolio 2016-05-09 17:52:42 UTC
Created attachment 433786 [details, diff]
patch to enable 2d canvas if webgl use flag enabled
Comment 4 Pacho Ramos gentoo-dev 2016-07-03 15:38:06 UTC
done in 2.12.3
Comment 5 Larry the Git Cow gentoo-dev 2018-07-23 22:30:12 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73d95b14d48bc96582f3dca2029ffdf790d1aafd

commit 73d95b14d48bc96582f3dca2029ffdf790d1aafd
Author:     Mart Raudsepp <leio@gentoo.org>
AuthorDate: 2018-07-23 09:36:00 +0000
Commit:     Mart Raudsepp <leio@gentoo.org>
CommitDate: 2018-07-23 22:23:43 +0000

    net-libs/webkit-gtk-2.20.3: disable experimental accelerated 2D canvas
    
    ACCELERATED_2D_CANVAS is considered experimental by upstream. I'm not sure
    what the justification was for enabling it with USE="webgl opengl" for us.
    The only reason this code isn't removed fully from upstream is because it
    _MIGHT_ be useful for some embedded use cases, yet it doesn't work with
    GLES2 yet, only desktop opengl.
    Additionally, for us this is causing additional cairo[opengl] dependency
    that can't be avoided for just non-experimental WebGL support via desktop
    GL as it was setup before in ebuild. No-one but Gentoo is building with
    this experimental option (not even upstream developers), and any issues
    about it won't really be cared about.
    Disable it and drop the cairo[opengl] dependency.
    
    https://lists.webkit.org/pipermail/webkit-gtk/2017-March/002969.html
    https://lists.webkit.org/pipermail/webkit-gtk/2017-April/003004.html
    
    If this is ever added back for any reason, make sure cairo[opengl] isn't
    depended on when not necessary (when accelerated 2d canvas is disabled,
    e.g. previously USE="opengl gles2" pulled in cairo[opengl] still, albeit
    that combination was not allowed previously, but a future webkit-gtk
    upstream version may support them together) and review if cairo-glesv2
    is supported (and so it'd be supported with USE=gles2 too, unlike now).
    
    Bug: https://bugs.gentoo.org/581248
    Closes: https://bugs.gentoo.org/643726
    Package-Manager: Portage-2.3.43, Repoman-2.3.10

 net-libs/webkit-gtk/webkit-gtk-2.20.3.ebuild | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)