1 # Copyright 1999-2019 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
8 DESCRIPTION="The GUI module and platform plugins for the Qt5 framework"
10 if [[ ${QT5_BUILD_TYPE} == release ]]; then
11 KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
16 IUSE="accessibility dbus egl eglfs evdev +gif gles2 ibus
17 jpeg +libinput +png tslib tuio +udev vnc +xcb"
20 accessibility? ( dbus xcb )
24 xcb? ( gles2? ( egl ) )
31 >=media-libs/freetype-2.6.1:2
32 >=media-libs/harfbuzz-1.6.0:=
35 dbus? ( ~dev-qt/qtdbus-${PV} )
36 egl? ( media-libs/mesa[egl] )
41 evdev? ( sys-libs/mtdev )
42 gles2? ( media-libs/mesa[gles2] )
43 jpeg? ( virtual/jpeg:0 )
46 >=x11-libs/libxkbcommon-0.5.0
48 png? ( media-libs/libpng:0= )
49 tslib? ( x11-libs/tslib )
50 tuio? ( ~dev-qt/qtnetwork-${PV} )
51 udev? ( virtual/libudev:= )
52 vnc? ( ~dev-qt/qtnetwork-${PV} )
57 >=x11-libs/libxcb-1.12:=[xkb]
58 >=x11-libs/libxkbcommon-0.5.0[X]
59 x11-libs/xcb-util-image
60 x11-libs/xcb-util-keysyms
61 x11-libs/xcb-util-renderutil
66 evdev? ( sys-kernel/linux-headers )
67 udev? ( sys-kernel/linux-headers )
70 ibus? ( app-i18n/ibus )
80 src/plugins/imageformats
82 src/plugins/platforminputcontexts
86 accessibility:accessibility-atspi-bridge
89 eglfs:eglfs_egldevice:
94 :system-freetype:FREETYPE
98 gles2:opengles2:OPENGL_ES_2
102 jpeg:system-jpeg:IMAGEFORMAT_JPEG
108 png:system-png:IMAGEFORMAT_PNG
121 QT5_GENTOO_PRIVATE_CONFIG=(
126 # don't add -O3 to CXXFLAGS, bug 549140
127 sed -i -e '/CONFIG\s*+=/s/optimize_full//' src/gui/gui.pro || die
129 # egl_x11 is activated when both egl and xcb are enabled
130 use egl && QT5_GENTOO_CONFIG+=(xcb:egl_x11:) || QT5_GENTOO_CONFIG+=(egl:egl_x11:)
132 qt_use_disable_config dbus dbus \
133 src/platformsupport/themes/genericunix/genericunix.pri
135 qt_use_disable_config tuio tuiotouch src/plugins/generic/generic.pro
137 qt_use_disable_mod ibus dbus \
138 src/plugins/platforminputcontexts/platforminputcontexts.pro
140 use vnc || sed -i -e '/SUBDIRS += vnc/d' \
141 src/plugins/platforms/platforms.pro || die
143 qt5-build_src_prepare
148 $(usex dbus -dbus-linked '')
151 $(usex eglfs '-gbm -kms' '')
153 $(qt_use evdev mtdev)
156 $(usex gif '' -no-gif)
159 $(qt_use jpeg libjpeg system)
161 -opengl $(usex gles2 es2 desktop)
162 $(qt_use png libpng system)
164 $(qt_use udev libudev)
165 $(qt_use xcb xcb system)
166 $(usex xcb '-xcb-xlib -xcb-xinput -xkb' '')
168 if use libinput || use xcb; then
169 myconf+=( -xkbcommon )
171 qt5-build_src_configure