dev-qt: Drop arm from 5.12.3
[gentoo.git] / dev-qt / qtwebengine / qtwebengine-5.12.3.ebuild
1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5
6 PYTHON_COMPAT=( python2_7 )
7 inherit multiprocessing python-any-r1 qt5-build
8
9 DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications"
10
11 if [[ ${QT5_BUILD_TYPE} == release ]]; then
12         KEYWORDS="x86"
13 fi
14
15 IUSE="alsa bindist designer geolocation jumbo-build pulseaudio +system-ffmpeg +system-icu widgets"
16 REQUIRED_USE="designer? ( widgets )"
17
18 RDEPEND="
19         app-arch/snappy:=
20         dev-libs/glib:2
21         dev-libs/nspr
22         dev-libs/nss
23         ~dev-qt/qtcore-${PV}
24         ~dev-qt/qtdeclarative-${PV}
25         ~dev-qt/qtgui-${PV}
26         ~dev-qt/qtnetwork-${PV}
27         ~dev-qt/qtprintsupport-${PV}
28         ~dev-qt/qtwebchannel-${PV}[qml]
29         dev-libs/expat
30         dev-libs/libevent:=
31         dev-libs/libxml2[icu]
32         dev-libs/libxslt
33         dev-libs/re2:=
34         media-libs/fontconfig
35         media-libs/freetype
36         media-libs/harfbuzz:=
37         media-libs/lcms:2
38         media-libs/libjpeg-turbo:=
39         media-libs/libpng:0=
40         >=media-libs/libvpx-1.5:=[svc]
41         media-libs/libwebp:=
42         media-libs/mesa[egl,X(+)]
43         media-libs/opus
44         sys-apps/dbus
45         sys-apps/pciutils
46         sys-libs/zlib[minizip]
47         virtual/libudev
48         x11-libs/libdrm
49         x11-libs/libX11
50         x11-libs/libXcomposite
51         x11-libs/libXcursor
52         x11-libs/libXdamage
53         x11-libs/libXext
54         x11-libs/libXfixes
55         x11-libs/libXi
56         x11-libs/libXrandr
57         x11-libs/libXrender
58         x11-libs/libXScrnSaver
59         x11-libs/libXtst
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:= )
66         widgets? (
67                 ~dev-qt/qtdeclarative-${PV}[widgets]
68                 ~dev-qt/qtwidgets-${PV}
69         )
70 "
71 DEPEND="${RDEPEND}
72         ${PYTHON_DEPS}
73         >=app-arch/gzip-1.7
74         dev-util/gperf
75         dev-util/ninja
76         dev-util/re2c
77         sys-devel/bison
78         !!=sys-devel/binutils-2.31.1-r5
79         !!=sys-devel/binutils-2.32-r0
80 "
81
82 PATCHES+=(
83         "${FILESDIR}/${PN}-5.12.0-nouveau-disable-gpu.patch" # bug 609752
84         "${FILESDIR}/${PN}-5.12.5-pulseaudio-13.patch" # bug 694960, 705434
85         "${FILESDIR}/${PN}-5.12.5-icu-65.patch"
86 )
87
88 src_prepare() {
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
92         fi
93
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
96
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
99
100         qt_use_disable_mod designer webenginewidgets src/plugins/plugins.pro
101
102         qt_use_disable_mod geolocation positioning \
103                 mkspecs/features/configure.prf \
104                 src/core/core_chromium.pri \
105                 src/core/core_common.pri
106
107         qt_use_disable_mod widgets widgets src/src.pro
108
109         qt5-build_src_prepare
110 }
111
112 src_configure() {
113         export NINJA_PATH=/usr/bin/ninja
114         export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}"
115
116         local myqmakeargs=(
117                 --
118                 -opus
119                 -printing-and-pdf
120                 -webp
121                 $(usex alsa '-alsa' '')
122                 $(usex bindist '' '-proprietary-codecs')
123                 $(usex pulseaudio '-pulseaudio' '')
124                 $(usex system-ffmpeg '-ffmpeg' '')
125                 $(usex system-icu '-webengine-icu' '')
126         )
127         qt5-build_src_configure
128 }
129
130 src_install() {
131         qt5-build_src_install
132
133         # bug 601472
134         if [[ ! -f ${D%/}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then
135                 die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/"
136         fi
137 }