dev-qt/qtwebengine: fix building on x86
[gentoo.git] / dev-qt / qtwebengine / qtwebengine-5.14.1.ebuild
1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
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="~amd64 ~arm ~arm64 ~x86"
13 fi
14
15 IUSE="alsa bindist designer 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/qtpositioning-${PV}
28         ~dev-qt/qtprintsupport-${PV}
29         ~dev-qt/qtwebchannel-${PV}[qml]
30         dev-libs/expat
31         dev-libs/libevent:=
32         dev-libs/libxml2[icu]
33         dev-libs/libxslt
34         dev-libs/re2:=
35         media-libs/fontconfig
36         media-libs/freetype
37         media-libs/harfbuzz:=
38         media-libs/lcms:2
39         media-libs/libjpeg-turbo:=
40         media-libs/libpng:0=
41         >=media-libs/libvpx-1.5:=[svc]
42         media-libs/libwebp:=
43         media-libs/mesa[egl,X(+)]
44         media-libs/opus
45         sys-apps/dbus
46         sys-apps/pciutils
47         sys-libs/zlib[minizip]
48         virtual/libudev
49         x11-libs/libdrm
50         x11-libs/libX11
51         x11-libs/libXcomposite
52         x11-libs/libXcursor
53         x11-libs/libXdamage
54         x11-libs/libXext
55         x11-libs/libXfixes
56         x11-libs/libXi
57         x11-libs/libXrandr
58         x11-libs/libXrender
59         x11-libs/libXScrnSaver
60         x11-libs/libXtst
61         alsa? ( media-libs/alsa-lib )
62         designer? ( ~dev-qt/designer-${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 "
79
80 PATCHES=(
81         "${FILESDIR}/${P}-disable-fatal-warnings.patch" # bug 695446
82 )
83
84 src_prepare() {
85         if ! use jumbo-build; then
86                 sed -i -e 's|use_jumbo_build=true|use_jumbo_build=false|' \
87                         src/buildtools/config/common.pri || die
88         fi
89
90         # bug 620444 - ensure local headers are used
91         find "${S}" -type f -name "*.pr[fio]" | xargs sed -i -e 's|INCLUDEPATH += |&$$QTWEBENGINE_ROOT/include |' || die
92
93         qt_use_disable_config alsa webengine-alsa src/buildtools/config/linux.pri
94         qt_use_disable_config pulseaudio webengine-pulseaudio src/buildtools/config/linux.pri
95
96         qt_use_disable_mod designer webenginewidgets src/plugins/plugins.pro
97
98         qt_use_disable_mod widgets widgets src/src.pro
99
100         qt5-build_src_prepare
101 }
102
103 src_configure() {
104         export NINJA_PATH=/usr/bin/ninja
105         export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}"
106
107         local myqmakeargs=(
108                 --
109                 -opus
110                 -printing-and-pdf
111                 -webp
112                 $(usex alsa '-alsa' '')
113                 $(usex bindist '' '-proprietary-codecs')
114                 $(usex pulseaudio '-pulseaudio' '')
115                 $(usex system-ffmpeg '-ffmpeg' '')
116                 $(usex system-icu '-webengine-icu' '')
117         )
118         qt5-build_src_configure
119 }
120
121 src_install() {
122         qt5-build_src_install
123
124         # bug 601472
125         if [[ ! -f ${D}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then
126                 die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/"
127         fi
128 }