Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 576634 - net-libs/webkit-gtk-2.10.7 fails to configure with USE="-opengl -gles2"
Summary: net-libs/webkit-gtk-2.10.7 fails to configure with USE="-opengl -gles2"
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-03-06 20:18 UTC by Yann Leprince
Modified: 2016-04-04 19:30 UTC (History)
0 users

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


Attachments
Proposed fixed ebuild (webkit-gtk-2.10.7.ebuild,7.85 KB, text/plain)
2016-03-06 20:18 UTC, Yann Leprince
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yann Leprince 2016-03-06 20:18:28 UTC
Created attachment 427622 [details]
Proposed fixed ebuild

Emerging net-libs/webkit-gtk-2.10.7 with USE="-opengl -gles2" triggers the following configuration error:

CMake Error at Source/cmake/OptionsGTK.cmake:306 (message):
  Either OpenGL or OpenGLES2 is needed for ENABLE_OPENGL.
Call Stack (most recent call first):
  CMakeLists.txt:168 (include)


-- Configuring incomplete, errors occurred!


This is due to the ebuild not overriding the default ENABLE_OPENGL=ON when neither the opengl or the gles2 USE-flags are used. The attached ebuild does just that, it fixes the problem for me. Here is the diff to the current version:

--- /usr/portage/net-libs/webkit-gtk/webkit-gtk-2.10.7.ebuild	2016-03-01 05:28:51.000000000 +0100
+++ /home/yann/yann-overlay/net-libs/webkit-gtk/webkit-gtk-2.10.7.ebuild	2016-03-06 15:52:19.170837726 +0100
@@ -210,6 +210,12 @@
 	# should somehow let user select between them?
 	#
 	# FTL_JIT requires llvm
+	local opengl_enabled
+	if use opengl || use gles2; then
+		opengl_enabled=ON
+	else
+		opengl_enabled=OFF
+	fi
 	local mycmakeargs=(
 		$(cmake-utils_use_enable aqua QUARTZ_TARGET)
 		$(cmake-utils_use_enable test API_TESTS)
@@ -228,6 +234,7 @@
 		$(cmake-utils_use_enable webgl WEBGL)
 		$(cmake-utils_use_find_package egl EGL)
 		$(cmake-utils_use_find_package opengl OpenGL)
+		-DENABLE_OPENGL=${opengl_enabled}
 		$(cmake-utils_use_enable X X11_TARGET)
 		-DCMAKE_BUILD_TYPE=Release
 		-DPORT=GTK


Contextual info:

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

$ emerge --info '=net-libs/webkit-gtk-2.10.7::gentoo'
Portage 2.2.26 (python 3.4.3-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.3, glibc-2.21-r2, 4.1.15-gentoo-r1 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.1.15-gentoo-r1-x86_64-Intel-R-_Core-TM-_i5-2430M_CPU_@_2.40GHz-with-gentoo-2.2
KiB Mem:     3923460 total,    693000 free
KiB Swap:    3998716 total,   3995360 free
Timestamp of repository gentoo: Sat, 05 Mar 2016 00:45:01 +0000
sh dash 0.5.8.2
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
app-shells/bash:          4.3_p42-r1::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.10-r1::gentoo, 3.4.3-r1::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.21-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: webrsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: 9999

brainvisa-overlay
    location: /home/yann/brainvisa-overlay
    masters: gentoo
    priority: 10000

ylep-overlay
    location: /home/yann/ylep-overlay
    masters: gentoo
    priority: 10000

yann-overlay
    location: /home/yann/yann-overlay
    masters: gentoo
    priority: 10001

Installed sets: @brainvisa
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE minc"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe -g1 -frecord-gcc-switches"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /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/portage/package.accept_keywords/zzz-auto-add /etc/portage/package.use/zzz-auto-add /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe -g1 -frecord-gcc-switches"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y --autounmask-keep-masks"
FCFLAGS="-march=native -O2 -pipe -g1 -frecord-gcc-switches"
FEATURES="assume-digests binpkg-logs cgroup collision-protect compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync webrsync-gpg xattr"
FFLAGS="-march=native -O2 -pipe -g1 -frecord-gcc-switches"
GENTOO_MIRRORS="ftp://ftp.free.fr/mirrors/ftp.gentoo.org/     ftp://gentoo.imj.fr/pub/gentoo/     http://gentoo.modulix.net/gentoo/     http://mirror.qubenet.net/mirror/gentoo/"
LANG="fr_FR.UTF-8"
LDFLAGS="-Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2 -l4"
PKGDIR="/usr/portage/packages"
PORTAGE_COMPRESS="xz"
PORTAGE_COMPRESS_FLAGS="-4"
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 acl acpi aes alsa amd64 avx bash-completion bazaar berkdb bluetooth branding bzip2 cairo caps cdda cdparanoia cdr cli colord consolekit cracklib crypt cups cxx dbus djvu dri dts dvd dvdr emacs emboss encode exif fam fat ffmpeg fftw firefox flac fontconfig fortran gdbm gif git glamor gnutls gphoto2 gpm graphviz gstreamer gtk gtk3 iconv idn inotify ipv6 jbig jingle jit jpeg jpeg2k ladspa latex lcms libnotify libsamplerate luatex lzma lzo mad man matroska mmx mmxext mng modules mp3 mp4 mpd mpeg mtp multilib ncurses networkmanager nls nptl nsplugin ntfs ogg opengl openmp opus pam pango pch pcmcia pcre pdf png policykit popcnt postscript ppds pulseaudio qt3support qt4 readline replaygain resolvconf rss scanner sdl seccomp session smp sound speex spell sse sse2 sse3 sse4_1 sse4_2 ssl ssse3 startup-notification subversion svg tcpd theora threads tiff truetype udev udisks unicode upower usb vaapi vorbis wifi wmf x264 xattr xcb xetex xft xml xmp xv xvid zlib zsh-completion" ABI_X86="64" CAMERAS="ptp2" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="gnutls" ELIBC="glibc" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LIBREOFFICE_EXTENSIONS="pdfimport presenter-console presenter-minimizer" LINGUAS="fr_FR fr en_GB en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20" USERLAND="GNU" VIDEO_CARDS="intel i965"
USE_PYTHON="2.7 3.4"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Yuriy Dmitriev 2016-03-06 22:29:09 UTC
clone WebKit via git to Webkit


cd Webkit


save it to file.

#!/bin/bash
dst=~/wk
echo $dst
mkdir $dst
cd $dst
cmake -DCMAKE_BUILD_TYPE=Release \
        -DCMAKE_INSTALL_PREFIX=$dst/usr \
        -DCMAKE_SKIP_RPATH=ON \
        -DPORT=GTK -DLIB_INSTALL_DIR=$dst/usr/lib \
        -DENABLE_MINIBROWSER=ON \
        -DENABLE_GEOLOCATION=OFF \
        -DENABLE_PLUGIN_PROCESS_GTK2=OFF \
        -Wno-dev ../WebKit && make -j4 


and run as user.

Last,

$ cd ~/wk
$ make install

export LD_LIBRARY_PATH=~/wk/lib/

At this point you able run WebKit's reference app named as MiniBrowser)))
Comment 2 Pacho Ramos gentoo-dev 2016-04-04 19:30:35 UTC
2.10.9 should solve this