1 # Copyright 1999-2018 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
5 PYTHON_COMPAT=( python2_7 )
6 inherit multiprocessing pax-utils python-any-r1 qt5-build
8 DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications"
10 if [[ ${QT5_BUILD_TYPE} == release ]]; then
11 KEYWORDS="~amd64 ~arm ~arm64 ~x86"
14 IUSE="alsa bindist designer geolocation +jumbo-build pax_kernel pulseaudio
15 +system-ffmpeg +system-icu widgets"
16 REQUIRED_USE="designer? ( widgets )"
24 ~dev-qt/qtdeclarative-${PV}
26 ~dev-qt/qtnetwork-${PV}
27 ~dev-qt/qtprintsupport-${PV}
28 ~dev-qt/qtwebchannel-${PV}[qml]
37 media-libs/libjpeg-turbo:=
39 >=media-libs/libvpx-1.5:=[svc]
46 sys-libs/zlib[minizip]
50 x11-libs/libXcomposite
58 x11-libs/libXScrnSaver
60 alsa? ( media-libs/alsa-lib )
61 designer? ( ~dev-qt/designer-${PV} )
62 geolocation? ( ~dev-qt/qtpositioning-${PV} )
63 pulseaudio? ( media-sound/pulseaudio:= )
64 system-ffmpeg? ( media-video/ffmpeg:0= )
65 system-icu? ( >=dev-libs/icu-60.2:= )
67 ~dev-qt/qtdeclarative-${PV}[widgets]
68 ~dev-qt/qtwidgets-${PV}
78 pax_kernel? ( sys-apps/elfix )
82 "${FILESDIR}/${PN}-5.9.6-gcc8.patch" # bug 657124
83 "${FILESDIR}/${PN}-5.11.1-nouveau-disable-gpu.patch" # bug 609752
87 use pax_kernel && PATCHES+=( "${FILESDIR}/${PN}-5.9.3-paxmark-mksnapshot.patch" )
89 if ! use jumbo-build; then
90 sed -i -e 's|use_jumbo_build=true|use_jumbo_build=false|' \
91 src/core/config/common.pri || die
94 # bug 620444 - ensure local headers are used
95 find "${S}" -type f -name "*.pr[fio]" | xargs sed -i -e 's|INCLUDEPATH += |&$$QTWEBENGINE_ROOT/include |' || die
97 qt_use_disable_config alsa webengine-alsa src/core/config/linux.pri
98 qt_use_disable_config pulseaudio webengine-pulseaudio src/core/config/linux.pri
100 qt_use_disable_mod designer webenginewidgets src/plugins/plugins.pro
102 qt_use_disable_mod geolocation positioning \
103 mkspecs/features/configure.prf \
104 src/core/core_chromium.pri \
105 src/core/core_common.pri
107 qt_use_disable_mod widgets widgets src/src.pro
109 qt5-build_src_prepare
113 export NINJA_PATH=/usr/bin/ninja
114 export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}"
121 $(usex alsa '-alsa' '')
122 $(usex bindist '' '-proprietary-codecs')
123 $(usex pulseaudio '-pulseaudio' '')
124 $(usex system-ffmpeg '-ffmpeg' '')
125 $(usex system-icu '-webengine-icu' '')
127 qt5-build_src_configure
131 qt5-build_src_install
134 if [[ ! -f ${D%/}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then
135 die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/"
138 pax-mark m "${D%/}${QT5_LIBEXECDIR}"/QtWebEngineProcess