1 |
commit: f830be2016a1d4773032d7d821dea6c61c496937 |
2 |
Author: Davide Pesavento <pesa <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat May 30 01:57:31 2015 +0000 |
4 |
Commit: Davide Pesavento <pesa <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat May 30 01:57:31 2015 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/qt.git/commit/?id=f830be20 |
7 |
|
8 |
[dev-qt/qtwebkit23] Several fixes and enhancements. |
9 |
|
10 |
* Implement debug USE flag |
11 |
* Relaxed and simplified some deps |
12 |
* Drop qtsvg, qtxmlpatterns, freetype, libXext deps as they don't seem |
13 |
to be used directly by this module |
14 |
* USE=sqlite is required for qtsql |
15 |
* Rewrite multilib_src_compile using a bash array so that we can print |
16 |
the command before executing it |
17 |
* Pass more QMAKE_* variables to the build system, similarly to eqmake4 |
18 |
* Other minor cleanups |
19 |
|
20 |
Package-Manager: portage-2.2.20 |
21 |
|
22 |
dev-qt/qtwebkit23/metadata.xml | 3 + |
23 |
dev-qt/qtwebkit23/qtwebkit23-2.3.4.ebuild | 106 ++++++++++++++++-------------- |
24 |
2 files changed, 61 insertions(+), 48 deletions(-) |
25 |
|
26 |
diff --git a/dev-qt/qtwebkit23/metadata.xml b/dev-qt/qtwebkit23/metadata.xml |
27 |
index afb3b43..37dc834 100644 |
28 |
--- a/dev-qt/qtwebkit23/metadata.xml |
29 |
+++ b/dev-qt/qtwebkit23/metadata.xml |
30 |
@@ -2,6 +2,9 @@ |
31 |
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
32 |
<pkgmetadata> |
33 |
<herd>qt</herd> |
34 |
+ <use> |
35 |
+ <flag name="gstreamer">Enable HTML5 audio/video support via <pkg>media-libs/gstreamer:1.0</pkg></flag> |
36 |
+ </use> |
37 |
<upstream> |
38 |
<bugs-to>https://bugreports.qt.io/</bugs-to> |
39 |
<doc>http://doc.qt.io/</doc> |
40 |
|
41 |
diff --git a/dev-qt/qtwebkit23/qtwebkit23-2.3.4.ebuild b/dev-qt/qtwebkit23/qtwebkit23-2.3.4.ebuild |
42 |
index 3148278..f375165 100644 |
43 |
--- a/dev-qt/qtwebkit23/qtwebkit23-2.3.4.ebuild |
44 |
+++ b/dev-qt/qtwebkit23/qtwebkit23-2.3.4.ebuild |
45 |
@@ -3,9 +3,8 @@ |
46 |
# $Header: /var/cvsroot/gentoo-x86/dev-qt/qtwebkit/qtwebkit-4.8.6-r1.ebuild,v 1.1 2014/11/15 02:38:53 pesa Exp $ |
47 |
|
48 |
EAPI=5 |
49 |
- |
50 |
PYTHON_COMPAT=( python2_7 ) |
51 |
-inherit eutils multibuild multilib python-any-r1 qmake-utils toolchain-funcs multilib-minimal |
52 |
+inherit eutils multilib python-any-r1 qmake-utils toolchain-funcs multilib-minimal |
53 |
|
54 |
DESCRIPTION="The WebKit module for the Qt toolkit" |
55 |
HOMEPAGE="https://www.qt.io/" |
56 |
@@ -14,34 +13,30 @@ SRC_URI="http://dev.gentoo.org/~kensington/distfiles/${P}.tar.xz" |
57 |
LICENSE="|| ( LGPL-2.1 GPL-3 )" |
58 |
SLOT="4" |
59 |
KEYWORDS="~amd64" |
60 |
-IUSE="+gstreamer" |
61 |
+IUSE="debug +gstreamer" |
62 |
|
63 |
RDEPEND=" |
64 |
- >=dev-db/sqlite-3.8.9:3[${MULTILIB_USEDEP}] |
65 |
- >=dev-libs/libxml2-2.9.2-r1:2[${MULTILIB_USEDEP}] |
66 |
- >=dev-libs/libxslt-1.1.28-r4[${MULTILIB_USEDEP}] |
67 |
+ >=dev-db/sqlite-3.8.3:3[${MULTILIB_USEDEP}] |
68 |
+ dev-libs/libxml2:2[${MULTILIB_USEDEP}] |
69 |
+ dev-libs/libxslt[${MULTILIB_USEDEP}] |
70 |
>=dev-qt/qtcore-4.8.6-r1:4[ssl,${MULTILIB_USEDEP}] |
71 |
>=dev-qt/qtdeclarative-4.8.6-r1:4[${MULTILIB_USEDEP}] |
72 |
- >=dev-qt/qtgui-4.8.6-r2:4[${MULTILIB_USEDEP}] |
73 |
+ >=dev-qt/qtgui-4.8.6-r1:4[${MULTILIB_USEDEP}] |
74 |
>=dev-qt/qtopengl-4.8.6-r1:4[${MULTILIB_USEDEP}] |
75 |
>=dev-qt/qtscript-4.8.6-r1:4[${MULTILIB_USEDEP}] |
76 |
- >=dev-qt/qtsql-4.8.6-r1:4[${MULTILIB_USEDEP}] |
77 |
- >=dev-qt/qtsvg-4.8.6-r1:4[${MULTILIB_USEDEP}] |
78 |
- >=dev-qt/qtxmlpatterns-4.8.6-r1:4[${MULTILIB_USEDEP}] |
79 |
- >=media-libs/fontconfig-2.11.1-r2[${MULTILIB_USEDEP}] |
80 |
- >=media-libs/freetype-2.5.5[${MULTILIB_USEDEP}] |
81 |
- >=media-libs/libpng-1.6.16:0=[${MULTILIB_USEDEP}] |
82 |
+ >=dev-qt/qtsql-4.8.6-r1:4[sqlite,${MULTILIB_USEDEP}] |
83 |
+ >=media-libs/fontconfig-2.10.2-r1[${MULTILIB_USEDEP}] |
84 |
+ media-libs/libpng:0=[${MULTILIB_USEDEP}] |
85 |
>=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] |
86 |
virtual/jpeg:0[${MULTILIB_USEDEP}] |
87 |
- virtual/libudev[${MULTILIB_USEDEP}] |
88 |
+ virtual/libudev:=[${MULTILIB_USEDEP}] |
89 |
>=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] |
90 |
- >=x11-libs/libXext-1.3.3[${MULTILIB_USEDEP}] |
91 |
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] |
92 |
- >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}] |
93 |
+ x11-libs/libX11[${MULTILIB_USEDEP}] |
94 |
+ x11-libs/libXrender[${MULTILIB_USEDEP}] |
95 |
gstreamer? ( |
96 |
- >=dev-libs/glib-2.42.2:2[${MULTILIB_USEDEP}] |
97 |
- >=media-libs/gstreamer-1.4.5:1.0[${MULTILIB_USEDEP}] |
98 |
- >=media-libs/gst-plugins-base-1.4.5:1.0[${MULTILIB_USEDEP}] |
99 |
+ dev-libs/glib:2[${MULTILIB_USEDEP}] |
100 |
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}] |
101 |
+ media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}] |
102 |
) |
103 |
" |
104 |
DEPEND="${RDEPEND} |
105 |
@@ -51,47 +46,62 @@ DEPEND="${RDEPEND} |
106 |
dev-util/gperf |
107 |
sys-devel/bison |
108 |
sys-devel/flex |
109 |
+ virtual/perl-Digest-MD5 |
110 |
virtual/perl-File-Spec |
111 |
virtual/perl-Getopt-Long |
112 |
" |
113 |
|
114 |
src_prepare() { |
115 |
- # bug 458222 |
116 |
+ # examples cause a sandbox violation (bug 458222) |
117 |
sed -i -e '/SUBDIRS += examples/d' Source/QtWebKit.pro || die |
118 |
- sed -i -e "/QMAKE_CXXFLAGS_RELEASE/d" Source/WTF/WTF.pro Source/JavaScriptCore/Target.pri || die |
119 |
+ |
120 |
+ # respect CXXFLAGS |
121 |
+ sed -i -e '/QMAKE_CXXFLAGS_RELEASE.*=/d' \ |
122 |
+ Source/WTF/WTF.pro \ |
123 |
+ Source/JavaScriptCore/Target.pri || die |
124 |
|
125 |
epatch "${FILESDIR}"/${PN}-2.3.4-use-correct-typedef.patch |
126 |
+ epatch_user |
127 |
} |
128 |
|
129 |
multilib_src_compile() { |
130 |
- # Change the build dir |
131 |
- # Trick stolen from Fedora 21 SRPM |
132 |
- export WEBKITOUTPUTDIR="$PWD" |
133 |
+ local -x \ |
134 |
+ QTDIR=${EPREFIX}/usr/$(get_libdir)/qt4 \ |
135 |
+ WEBKITOUTPUTDIR=${BUILD_DIR} |
136 |
|
137 |
- export QTDIR=/usr/$(get_libdir)/qt4/ |
138 |
- export CC=$(tc-getCC) |
139 |
- export CXX=$(tc-getCXX) |
140 |
- # --qmake is needed to force the build system to use the qmake |
141 |
- # compiled for the correct architecture. For example using the amd64 |
142 |
- # qmake to compile the x86 qtwebkit will try to link it against |
143 |
- # amd64 qt libs, causing the build to fail |
144 |
- "${S}"/Tools/Scripts/build-webkit \ |
145 |
- --qt --release --no-webkit2 \ |
146 |
- --qmake=$(qt4_get_bindir)/qmake \ |
147 |
- $(use gstreamer || echo --no-video) \ |
148 |
- --makeargs="${MAKEOPTS}" \ |
149 |
- --qmakearg="CONFIG+=production_build CONFIG+=nostrip DEFINES+=HAVE_QTTESTLIB=0" \ |
150 |
- QMAKE_CC=\"$(tc-getCC)\" \ |
151 |
- QMAKE_CFLAGS=\"${CFLAGS}\" \ |
152 |
- QMAKE_CFLAGS_RELEASE=\"\" \ |
153 |
- QMAKE_CXX=\"$(tc-getCXX)\" \ |
154 |
- QMAKE_CXXFLAGS=\"${CXXFLAGS}\" \ |
155 |
- QMAKE_CXXFLAGS_RELEASE=\"\" \ |
156 |
- QMAKE_LINK=\"$(tc-getCXX)\" \ |
157 |
- QMAKE_LFLAGS+=\"${LDFLAGS}\" \ |
158 |
- || die |
159 |
+ local myconf=( |
160 |
+ "${S}"/Tools/Scripts/build-webkit |
161 |
+ --qt |
162 |
+ # tell the build system where to find the qmake binary for the current ABI |
163 |
+ --qmake="$(qt4_get_bindir)"/qmake |
164 |
+ --qmakearg="CONFIG+=nostrip CONFIG+=production_build DEFINES+=HAVE_QTTESTLIB=0" |
165 |
+ --makeargs="${MAKEOPTS}" |
166 |
+ --$(usex debug debug release) |
167 |
+ --$(usex gstreamer video no-video) |
168 |
+ --no-webkit2 |
169 |
+ # copied from eqmake4 |
170 |
+ QMAKE_AR="'$(tc-getAR) cqs'" |
171 |
+ QMAKE_CC="'$(tc-getCC)'" |
172 |
+ QMAKE_CXX="'$(tc-getCXX)'" |
173 |
+ QMAKE_LINK="'$(tc-getCXX)'" |
174 |
+ QMAKE_LINK_C="'$(tc-getCC)'" |
175 |
+ QMAKE_OBJCOPY="'$(tc-getOBJCOPY)'" |
176 |
+ QMAKE_RANLIB= |
177 |
+ QMAKE_STRIP= |
178 |
+ QMAKE_CFLAGS="'${CFLAGS}'" |
179 |
+ QMAKE_CFLAGS_RELEASE= |
180 |
+ QMAKE_CFLAGS_DEBUG= |
181 |
+ QMAKE_CXXFLAGS="'${CXXFLAGS}'" |
182 |
+ QMAKE_CXXFLAGS_RELEASE= |
183 |
+ QMAKE_CXXFLAGS_DEBUG= |
184 |
+ QMAKE_LFLAGS="'${LDFLAGS}'" |
185 |
+ QMAKE_LFLAGS_RELEASE= |
186 |
+ QMAKE_LFLAGS_DEBUG= |
187 |
+ ) |
188 |
+ echo "${myconf[@]}" |
189 |
+ "${myconf[@]}" || die |
190 |
} |
191 |
|
192 |
multilib_src_install() { |
193 |
- emake INSTALL_ROOT="${D}" install -C Release |
194 |
+ emake INSTALL_ROOT="${D}" install -C $(usex debug Debug Release) |
195 |
} |