dev-qt: Add Qt 5.12.2
[gentoo.git] / dev-qt / qtcore / qtcore-5.12.2.ebuild
1 # Copyright 1999-2019 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5 QT5_MODULE="qtbase"
6 inherit qt5-build
7
8 DESCRIPTION="Cross-platform application development framework"
9
10 if [[ ${QT5_BUILD_TYPE} == release ]]; then
11         KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
12 fi
13
14 IUSE="icu systemd"
15
16 DEPEND="
17         dev-libs/double-conversion:=
18         dev-libs/glib:2
19         dev-libs/libpcre2[pcre16,unicode]
20         sys-libs/zlib:=
21         icu? ( dev-libs/icu:= )
22         !icu? ( virtual/libiconv )
23         systemd? ( sys-apps/systemd:= )
24 "
25 RDEPEND="${DEPEND}
26         !<dev-qt/qtcore-4.8.7-r4:4
27 "
28
29 QT5_TARGET_SUBDIRS=(
30         src/tools/bootstrap
31         src/tools/moc
32         src/tools/rcc
33         src/tools/qfloat16-tables
34         src/corelib
35         src/tools/qlalr
36         doc
37 )
38
39 QT5_GENTOO_PRIVATE_CONFIG=(
40         !:network
41         !:sql
42         !:testlib
43         !:xml
44 )
45
46 src_prepare() {
47         # don't add -O3 to CXXFLAGS, bug 549140
48         sed -i -e '/CONFIG\s*+=/s/optimize_full//' src/corelib/corelib.pro || die
49
50         # fix missing qt_version_tag symbol w/ LTO, bug 674382
51         sed -i -e 's/^gcc:ltcg/gcc/' src/corelib/global/global.pri || die
52
53         qt5-build_src_prepare
54 }
55
56 src_configure() {
57         local myconf=(
58                 -no-feature-statx       # bug 672856
59                 $(qt_use icu)
60                 $(qt_use !icu iconv)
61                 $(qt_use systemd journald)
62         )
63         qt5-build_src_configure
64 }
65
66 src_install() {
67         qt5-build_src_install
68
69         local flags=(
70                 DBUS FREETYPE IMAGEFORMAT_JPEG IMAGEFORMAT_PNG
71                 OPENGL OPENSSL SSL WIDGETS
72         )
73
74         for flag in ${flags[@]}; do
75                 cat >> "${D%/}"/${QT5_HEADERDIR}/QtCore/qconfig.h <<- _EOF_ || die
76
77                         #if defined(QT_NO_${flag}) && defined(QT_${flag})
78                         # undef QT_NO_${flag}
79                         #elif !defined(QT_NO_${flag}) && !defined(QT_${flag})
80                         # define QT_NO_${flag}
81                         #endif
82                 _EOF_
83         done
84 }