Annotation of /branches/R11-stable/extras/qt4/qt4-4.8.6-r2.smage2
Parent Directory | Revision Log
Revision 24406 -
(hide annotations)
(download)
Fri Feb 20 10:19:27 2015 UTC (9 years, 7 months ago) by niro
File size: 20971 byte(s)
Fri Feb 20 10:19:27 2015 UTC (9 years, 7 months ago) by niro
File size: 20971 byte(s)
-release branches/R11-stable
1 | niro | 23283 | # $Id$ |
2 | |||
3 | PNAME="qt4" | ||
4 | PVER="4.8.6" | ||
5 | PBUILD="r2" | ||
6 | |||
7 | PCAT="x11-libs" | ||
8 | |||
9 | DESCRIPTION="Qt: Cross-Platform Rich Client Development Framework." | ||
10 | HOMEPAGE="http://qt-project.org/" | ||
11 | |||
12 | # build phonon or not (yes/no), disabled atm | ||
13 | QT4_PHONON="no" | ||
14 | SPECIAL_VARS="QT4_PHONON" | ||
15 | |||
16 | # use kde-qt patches or not (yes/no), disabled atm | ||
17 | KDE_QT_PATCHES="no" | ||
18 | # snapshot id of the patches | ||
19 | KDE_QT_SNAPSHOT_ID="8fa76375a2f030ecf8aa23c917f51f04333a1b2c" | ||
20 | |||
21 | # load qt4 here to overide all depends | ||
22 | # include kde4 to get the right KDEDIR for phonon! | ||
23 | niro | 23285 | sminclude mtools qt4 kde4 xdg fdo-mime |
24 | niro | 23283 | |
25 | DEPEND_CORE=">= dev-libs/openssl-1.0.1 | ||
26 | >= app-crypt/ca-certificates-2014 | ||
27 | >= dev-libs/glib2-2.42 | ||
28 | >= dev-libs/icu-54 | ||
29 | >= sys-libs/zlib-1.2.8 | ||
30 | >= sys-libs/libstdc++-4.8" | ||
31 | |||
32 | DEPEND_GUI="${DEPEND_CORE} | ||
33 | >= x11-libs/libICE-1 | ||
34 | >= x11-libs/libSM-1.1 | ||
35 | >= x11-libs/libXau-1 | ||
36 | >= x11-libs/libxcb-1.10 | ||
37 | >= x11-libs/libXdmcp-1 | ||
38 | >= x11-libs/libX11-1.6 | ||
39 | >= x11-libs/libXcursor-1.1 | ||
40 | >= x11-libs/libXext-1.3 | ||
41 | >= x11-libs/libXfont-1.4 | ||
42 | >= x11-libs/libXfixes-5 | ||
43 | >= x11-libs/libXft-2.2 | ||
44 | >= x11-libs/libXi-1.7 | ||
45 | >= x11-libs/libXinerama-1 | ||
46 | >= x11-libs/libXrandr-1.3 | ||
47 | >= x11-libs/libXrender-0.9 | ||
48 | >= media-libs/libjpeg-8 | ||
49 | >= media-libs/giflib-5.0 | ||
50 | >= media-libs/libmng-2 | ||
51 | >= media-libs/libpng-1.5 | ||
52 | >= media-libs/libtiff-4 | ||
53 | >= media-libs/freetype-2.5 | ||
54 | >= media-libs/fontconfig-2.11 | ||
55 | >= net-print/libcups-1.7 | ||
56 | >= media-libs/nas-1.9" | ||
57 | |||
58 | DEPEND_SQL=">= dev-db/sqlite-3.8 | ||
59 | >= dev-db/mysql-libs-5.5 | ||
60 | >= dev-db/unixodbc-2.3" | ||
61 | |||
62 | DEPEND_DBUS=">= sys-apps/dbus-1.8" | ||
63 | |||
64 | DEPEND_OPENGL=">= virtual/opengl" | ||
65 | |||
66 | DEPEND_MULTIMEDIA=">= media-libs/alsa-lib-1.0.28" | ||
67 | |||
68 | DEPEND_BEARER=">= net-misc/networkmanager-0.9.10" | ||
69 | |||
70 | SDEPEND="${DEPEND_CORE} | ||
71 | ${DEPEND_GUI} | ||
72 | ${DEPEND_SQL} | ||
73 | ${DEPEND_DBUS} | ||
74 | ${DEPEND_OPENGL} | ||
75 | ${DEPEND_MULTIMEDIA} | ||
76 | ${DEPEND_BEARER} | ||
77 | >= sys-dev/bison-2.5 | ||
78 | >= x11-proto/xineramaproto-1.1 | ||
79 | >= x11-proto/xextproto-7 | ||
80 | >= x11-proto/inputproto-2 | ||
81 | >= dev-util/pkgconfig-0.25 | ||
82 | >= dev-libs/expat-2 | ||
83 | >= media-libs/lcms-1.19" | ||
84 | |||
85 | if [[ ${QT4_PHONON} = yes ]] | ||
86 | then | ||
87 | DEPEND_PHONON="${DEPEND_DBUS} | ||
88 | >= media-libs/gstreamer1.0-1.0 | ||
89 | >= media-libs/gstreamer1.0-plugins-base-1.0 | ||
90 | >= media-libs/gstreamer1.0-plugins-good-1.0" | ||
91 | |||
92 | SDEPEND+=" | ||
93 | ${DEPEND_PHONON}" | ||
94 | fi | ||
95 | |||
96 | SRCFILE="${PNAME/4/}-everywhere-opensource-src-${PVER}.tar.gz" | ||
97 | SRCDIR="${BUILDDIR}/${PNAME/4/}-everywhere-opensource-src-${PVER}" | ||
98 | |||
99 | SPLIT_PACKAGES="qt4-core | ||
100 | qt4-dbus | ||
101 | qt4-script | ||
102 | qt4-gui | ||
103 | qt4-svg | ||
104 | qt4-sql | ||
105 | qt4-xmlpatterns | ||
106 | qt4-opengl | ||
107 | qt4-qt3support | ||
108 | qt4-webkit | ||
109 | qt4-test | ||
110 | qt4-multimedia | ||
111 | qt4-help | ||
112 | qt4-assistant | ||
113 | qt4-declarative | ||
114 | qt4-designer | ||
115 | qt4-linguist | ||
116 | qt4-pixeltool | ||
117 | qt4-qdbusviewer | ||
118 | qt4-bearer" | ||
119 | |||
120 | if [[ ${QT4_PHONON} = yes ]] | ||
121 | then | ||
122 | SPLIT_PACKAGES+="qt4-phonon" | ||
123 | fi | ||
124 | |||
125 | SRC_URI=( | ||
126 | http://download.qt-project.org/official_releases/qt/${PVER%.*}/${PVER}/${SRCFILE} | ||
127 | mirror://${PNAME}/${SRCFILE} | ||
128 | mirror://${PNAME}/qt-4.5.1-no-hardcoded_fonts.patch | ||
129 | mirror://${PNAME}/qt-4.8.1-improve-cups-support.patch | ||
130 | mirror://${PNAME}/qt-4.8.5-CVE-2013-4549.patch | ||
131 | ) | ||
132 | |||
133 | # add phonon patches | ||
134 | if [[ ${QT4_PHONON} = yes ]] | ||
135 | then | ||
136 | SRC_URI+=( mirror://${PNAME}/qt-4.5.3-phonon-2.patch ) | ||
137 | fi | ||
138 | |||
139 | # use kde-qt? | ||
140 | if [[ ${KDE_QT_PATCHES} = yes ]] | ||
141 | then | ||
142 | SRC_URI+=( mirror://${PNAME}/qt-${PVER}-kde-qt-${KDE_QT_SNAPSHOT_ID}.patch ) | ||
143 | fi | ||
144 | |||
145 | UP2DATE="updatecmd ${HOMEPAGE}/downloads | grep 4. | firsttarball gz" | ||
146 | |||
147 | # | ||
148 | ## global vars ## | ||
149 | # | ||
150 | # install prefix | ||
151 | # get this one from qt4.sminc, QTDIR gets overridden later on | ||
152 | export QT_PREFIX="${QTDIR}" | ||
153 | # source location | ||
154 | export QTDIR="${SRCDIR}" | ||
155 | export LD_LIBRARY_PATH="${QTDIR}/lib" | ||
156 | export PATH="${QTDIR}/bin:${PATH}" | ||
157 | export PLATFORM="linux-g++" | ||
158 | [[ ${ARCH} = x86_64 ]] && export PLATFORM="linux-g++-64" | ||
159 | # etc dir | ||
160 | export QT_SYSCONFDIR="/etc/${PNAME}" | ||
161 | # envfile | ||
162 | export QT_ENVFILE="/etc/env.d/45${PNAME}" | ||
163 | # | ||
164 | # do not export QMAKE from qt4.sminc | ||
165 | unset QMAKE | ||
166 | # do not run postinstall/remove from kde4 include | ||
167 | unset -f postinstall | ||
168 | unset -f postremove | ||
169 | |||
170 | split_info_qt4-core() | ||
171 | { | ||
172 | DESCRIPTION="Qt4: Cross-Platform Rich Client Development Framework." | ||
173 | DEPEND="${DEPEND_CORE}" | ||
174 | } | ||
175 | |||
176 | split_info_qt4-gui() | ||
177 | { | ||
178 | DESCRIPTION="The GUI module for the Qt4 toolkit." | ||
179 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
180 | == x11-libs/qt4-script-${PVER} | ||
181 | == x11-libs/qt4-dbus-${PVER} | ||
182 | ${DEPEND_GUI}" | ||
183 | } | ||
184 | |||
185 | split_info_qt4-svg() | ||
186 | { | ||
187 | DESCRIPTION="The SVG module for the Qt4 toolkit." | ||
188 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
189 | == x11-libs/qt4-gui-${PVER}" | ||
190 | } | ||
191 | |||
192 | split_info_qt4-sql() | ||
193 | { | ||
194 | DESCRIPTION="The SQL module for the Qt4 toolkit." | ||
195 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
196 | ${DEPEND_SQL}" | ||
197 | } | ||
198 | |||
199 | split_info_qt4-script() | ||
200 | { | ||
201 | DESCRIPTION="The ECMAScript module for the Qt4 toolkit." | ||
202 | DEPEND="== x11-libs/qt4-core-${PVER}" | ||
203 | } | ||
204 | |||
205 | split_info_qt4-xmlpatterns() | ||
206 | { | ||
207 | DESCRIPTION="The patternist module for the Qt toolkit." | ||
208 | DEPEND="== x11-libs/qt4-core-${PVER}" | ||
209 | } | ||
210 | |||
211 | split_info_qt4-dbus() | ||
212 | { | ||
213 | DESCRIPTION="The DBus module for the Qt4 toolkit." | ||
214 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
215 | ${DEPEND_DBUS}" | ||
216 | } | ||
217 | |||
218 | split_info_qt4-opengl() | ||
219 | { | ||
220 | DESCRIPTION="The OpenGL module for the Qt4 toolkit." | ||
221 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
222 | == x11-libs/qt4-gui-${PVER} | ||
223 | ${DEPEND_OPENGL}" | ||
224 | } | ||
225 | |||
226 | if [[ ${QT4_PHONON} = yes ]] | ||
227 | then | ||
228 | split_info_qt4-phonon() | ||
229 | { | ||
230 | DESCRIPTION="The Phonon module for the Qt4 toolkit." | ||
231 | DEPEND="== x11-libs/qt4-gui-${PVER} | ||
232 | == x11-libs/qt4-dbus-${PVER} | ||
233 | ${DEPEND_PHONON}" | ||
234 | |||
235 | PROVIDE="virtual/phonon" | ||
236 | } | ||
237 | |||
238 | preinstall_qt4-phonon() | ||
239 | { | ||
240 | if [[ -n $(magequery -n phonon) ]] | ||
241 | then | ||
242 | die "please uninstall kde-base/phonon first!" | ||
243 | fi | ||
244 | } | ||
245 | |||
246 | postinstall_qt4-phonon() | ||
247 | { | ||
248 | # breaks compilation if the old phonon symlink from kde-phonon exist | ||
249 | if [[ -L ${MROOT}/opt/kde4/lib/libphonon.so ]] | ||
250 | then | ||
251 | rm ${MROOT}/opt/kde4/lib/libphonon.so | ||
252 | fi | ||
253 | } | ||
254 | fi | ||
255 | |||
256 | split_info_qt4-qt3support() | ||
257 | { | ||
258 | DESCRIPTION="The Qt3 support module for the Qt toolkit." | ||
259 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
260 | == x11-libs/qt4-gui-${PVER} | ||
261 | == x11-libs/qt4-sql-${PVER}" | ||
262 | if [[ ${QT4_PHONON} = yes ]] | ||
263 | then | ||
264 | DEPEND+=" | ||
265 | == x11-libs/qt4-phonon-${PVER}" | ||
266 | fi | ||
267 | } | ||
268 | |||
269 | split_info_qt4-webkit() | ||
270 | { | ||
271 | DESCRIPTION="The Webkit module for the Qt4 toolkit." | ||
272 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
273 | == x11-libs/qt4-dbus-${PVER} | ||
274 | == x11-libs/qt4-gui-${PVER} | ||
275 | == x11-libs/qt4-xmlpatterns-${PVER}" | ||
276 | if [[ ${QT4_PHONON} = yes ]] | ||
277 | then | ||
278 | DEPEND+=" | ||
279 | == x11-libs/qt4-phonon-${PVER}" | ||
280 | fi | ||
281 | } | ||
282 | |||
283 | split_info_qt4-test() | ||
284 | { | ||
285 | DESCRIPTION="The testing framework module for the Qt4 toolkit." | ||
286 | DEPEND="== x11-libs/qt4-core-${PVER}" | ||
287 | } | ||
288 | |||
289 | split_info_qt4-multimedia() | ||
290 | { | ||
291 | DESCRIPTION="The Multimedia module for the Qt4 toolkit." | ||
292 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
293 | == x11-libs/qt4-gui-${PVER} | ||
294 | ${DEPEND_MULTIMEDIA}" | ||
295 | } | ||
296 | |||
297 | split_info_qt4-help() | ||
298 | { | ||
299 | DESCRIPTION="The assistant help module for the Qt4 toolkit." | ||
300 | DEPEND="x11-libs/qt4-core-${PVER} | ||
301 | == x11-libs/qt4-gui-${PVER} | ||
302 | == x11-libs/qt4-sql-${PVER}" | ||
303 | } | ||
304 | |||
305 | split_info_qt4-assistant() | ||
306 | { | ||
307 | DESCRIPTION="The assistant help module for the Qt4 toolkit." | ||
308 | DEPEND="x11-libs/qt4-core-${PVER} | ||
309 | == x11-libs/qt4-gui-${PVER} | ||
310 | == x11-libs/qt4-help-${PVER} | ||
311 | == x11-libs/qt4-sql-${PVER} | ||
312 | == x11-libs/qt4-webkit-${PVER}" | ||
313 | PCAT="x11-apps" | ||
314 | } | ||
315 | |||
316 | split_info_qt4-declarative() | ||
317 | { | ||
318 | DESCRIPTION="The Declarative module for the Qt4 toolkit." | ||
319 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
320 | == x11-libs/qt4-gui-${PVER} | ||
321 | == x11-libs/qt4-multimedia-${PVER} | ||
322 | == x11-libs/qt4-opengl-${PVER} | ||
323 | == x11-libs/qt4-script-${PVER} | ||
324 | == x11-libs/qt4-sql-${PVER} | ||
325 | == x11-libs/qt4-svg-${PVER} | ||
326 | == x11-libs/qt4-webkit-${PVER} | ||
327 | == x11-libs/qt4-qt3support-${PVER} | ||
328 | == x11-libs/qt4-xmlpatterns-${PVER}" | ||
329 | } | ||
330 | |||
331 | split_info_qt4-designer() | ||
332 | { | ||
333 | DESCRIPTION="WYSIWYG tool for designing and building Qt-based GUIs." | ||
334 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
335 | == x11-libs/qt4-gui-${PVER} | ||
336 | == x11-libs/qt4-script-${PVER} | ||
337 | == x11-libs/qt4-declarative-${PVER} | ||
338 | == x11-libs/qt4-qt3support-${PVER} | ||
339 | == x11-libs/qt4-webkit-${PVER}" | ||
340 | if [[ ${QT4_PHONON} = yes ]] | ||
341 | then | ||
342 | DEPEND+=" | ||
343 | == x11-libs/qt4-phonon-${PVER}" | ||
344 | fi | ||
345 | PCAT="x11-apps" | ||
346 | } | ||
347 | |||
348 | split_info_qt4-linguist() | ||
349 | { | ||
350 | DESCRIPTION="Graphical tool for translating Qt applications." | ||
351 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
352 | == x11-libs/qt4-gui-${PVER} | ||
353 | == x11-apps/qt4-designer-${PVER}" | ||
354 | PCAT="x11-apps" | ||
355 | } | ||
356 | |||
357 | split_info_qt4-pixeltool() | ||
358 | { | ||
359 | DESCRIPTION="Qt screen magnifier." | ||
360 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
361 | == x11-libs/qt4-gui-${PVER}" | ||
362 | PCAT="x11-apps" | ||
363 | } | ||
364 | |||
365 | split_info_qt4-qdbusviewer() | ||
366 | { | ||
367 | DESCRIPTION="Graphical tool that lets you introspect D-Bus objects and messages." | ||
368 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
369 | == x11-libs/qt4-gui-${PVER} | ||
370 | == x11-libs/qt4-dbus-${PVER}" | ||
371 | PCAT="x11-apps" | ||
372 | } | ||
373 | |||
374 | split_info_qt4-bearer() | ||
375 | { | ||
376 | DESCRIPTION="The network bearer plugins for the Qt toolkit." | ||
377 | DEPEND="== x11-libs/qt4-core-${PVER} | ||
378 | == x11-libs/qt4-dbus-${PVER} | ||
379 | ${DEPEND_BEARER}" | ||
380 | } | ||
381 | |||
382 | install_qt_target() | ||
383 | { | ||
384 | local targets | ||
385 | local i | ||
386 | |||
387 | targets="$@" | ||
388 | |||
389 | for i in ${targets} | ||
390 | do | ||
391 | mmake -C ${i} INSTALL_ROOT=${BINDIR} install || die "install of target '${i}' failed" | ||
392 | done | ||
393 | } | ||
394 | |||
395 | src_prepare() | ||
396 | { | ||
397 | munpack ${SRCFILE} || die | ||
398 | cd ${SRCDIR} | ||
399 | |||
400 | # security fix | ||
401 | mpatch qt-4.8.5-CVE-2013-4549.patch || die | ||
402 | |||
403 | # no hardcoded font-aliases | ||
404 | # see: https://cvs.fedoraproject.org/viewvc/rpms/qt4/F-8/qt-x11-opensource-src-4.3.4-no-hardcoded-font-aliases.patch?view=markup | ||
405 | mpatch qt-4.5.1-no-hardcoded_fonts.patch || die | ||
406 | |||
407 | # improve cups support | ||
408 | mpatch qt-4.8.1-improve-cups-support.patch || die | ||
409 | |||
410 | if [[ ${QT4_PHONON} = yes ]] | ||
411 | then | ||
412 | # install service files needed by kde | ||
413 | mpatch qt-4.5.3-phonon-2.patch || die | ||
414 | # fix variable kdelocation from the patch | ||
415 | sed -i "s:@@KDEDIR@@:${KDEDIR}:g" ${SRCDIR}/src/plugins/phonon/gstreamer/gstreamer.pro || die | ||
416 | fi | ||
417 | |||
418 | if [[ ${KDE_QT_PATCHES} = yes ]] | ||
419 | then | ||
420 | # kdeqt patches from http://gitorious.org/+kde-developers/qt/kde-qt | ||
421 | mpatch qt-${PVER}-kde-qt-${KDE_QT_SNAPSHOT_ID}.patch || die | ||
422 | fi | ||
423 | |||
424 | # set our cflags and fix up our header and lib locations | ||
425 | cd ${SRCDIR}/mkspecs/${PLATFORM} | ||
426 | sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \ | ||
427 | -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \ | ||
428 | -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \ | ||
429 | -e 's:$(QTDIR)/include:&/qt${PVER%%.*}:' \ | ||
430 | -e "s:\$(QTDIR)/lib:\$(QTDIR)/$(mlibdir):" \ | ||
431 | qmake.conf \ | ||
432 | || die | ||
433 | |||
434 | # fix libdir to lib64 on 64bit arches | ||
435 | sed -i "s:/lib$:/$(mlibdir):" qmake.conf || die | ||
436 | |||
437 | # disable rpath | ||
438 | sed -i "s:QMAKE_RPATH.*=.*:QMAKE_RPATH=:" qmake.conf || die | ||
439 | |||
440 | # get rid of /usr/X11R6 | ||
441 | sed -i "s:X11R6/::" qmake.conf || die | ||
442 | |||
443 | # same goes for the g++ definitions | ||
444 | # they where moved to an extra file with qt4 | ||
445 | cd ${SRCDIR}/mkspecs/common | ||
446 | sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CPPFLAGS} ${CFLAGS} ${ASFLAGS}:" \ | ||
447 | -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CPPFLAGS} ${CXXFLAGS} ${ASFLAGS}:" \ | ||
448 | -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \ | ||
449 | -e 's:$(QTDIR)/include:&/qt${PVER%%.*}:' \ | ||
450 | -e "s:\$(QTDIR)/lib:\$(QTDIR)/$(mlibdir):" \ | ||
451 | g++.conf \ | ||
452 | || die | ||
453 | |||
454 | # fix libdir to lib64 on 64bit arches | ||
455 | sed -i "s:/lib$:/$(mlibdir):" g++.conf || die | ||
456 | |||
457 | # disable rpath | ||
458 | sed -i "s:QMAKE_RPATH.*=.*:QMAKE_RPATH=:" g++.conf || die | ||
459 | |||
460 | # get rid of /usr/X11R6 | ||
461 | sed -i "s:X11R6/::" linux.conf || die | ||
462 | } | ||
463 | |||
464 | src_compile() | ||
465 | { | ||
466 | cd ${SRCDIR} | ||
467 | local myconf | ||
468 | |||
469 | # add missing lib64 search path on 64bit arches | ||
470 | [[ $(mlibdir) != lib ]] && myconf="-L/usr/$(mlibdir)" | ||
471 | |||
472 | # enable this only for binutils >=2.18 | ||
473 | [[ $(ld -v | sed 's/.*\ \([0-9].[0-9].*\)/\1/') > 2.17 ]] && myconf+=" -reduce-relocations" | ||
474 | |||
475 | # enable static if requested | ||
476 | mqueryfeature "static" && myconf+=" -static" | ||
477 | # always build shared libs | ||
478 | myconf+=" -shared" | ||
479 | |||
480 | # disable openvg atm | ||
481 | myconf+=" -no-openvg" | ||
482 | |||
483 | if [[ ${QT4_PHONON} = yes ]] | ||
484 | then | ||
485 | myconf+=" -phonon" | ||
486 | myconf+=" -phonon-backend" | ||
487 | else | ||
488 | myconf+=" -no-phonon" | ||
489 | myconf+=" -no-phonon-backend" | ||
490 | fi | ||
491 | |||
492 | ./configure \ | ||
493 | -prefix ${QT_PREFIX} \ | ||
494 | -sysconfdir ${QT_SYSCONFDIR} \ | ||
495 | -datadir ${QT_PREFIX}/share/qt${PVER%%.*} \ | ||
496 | -docdir ${QT_PREFIX}/share/doc/qt${PVER%%.*}-${PVER} \ | ||
497 | -headerdir ${QT_PREFIX}/include/qt${PVER%%.*} \ | ||
498 | -plugindir ${QT_PREFIX}/$(mlibdir)/qt${PVER%%.*}/plugins \ | ||
499 | niro | 23286 | -importdir ${QT_PREFIX}/$(mlibdir)/qt${PVER%%.*}/imports \ |
500 | niro | 23283 | -libdir ${QT_PREFIX}/$(mlibdir) \ |
501 | -datadir ${QT_PREFIX}/share/qt${PVER%%.*} \ | ||
502 | niro | 23286 | -translationdir ${QT_PREFIX}/share/qt${PVER%%.*}/translations \ |
503 | niro | 23283 | -confirm-license \ |
504 | -opensource \ | ||
505 | -platform ${PLATFORM} \ | ||
506 | -xplatform ${PLATFORM} \ | ||
507 | -verbose \ | ||
508 | -silent \ | ||
509 | -fast \ | ||
510 | -release \ | ||
511 | -no-separate-debug-info \ | ||
512 | -optimized-qmake \ | ||
513 | -system-libjpeg \ | ||
514 | -system-libmng \ | ||
515 | -system-libpng \ | ||
516 | -system-libtiff \ | ||
517 | -system-zlib \ | ||
518 | -system-nas-sound \ | ||
519 | -system-sqlite \ | ||
520 | -nomake examples \ | ||
521 | -nomake demos \ | ||
522 | -nomake docs \ | ||
523 | -no-rpath \ | ||
524 | -no-pch \ | ||
525 | -qt3support \ | ||
526 | -stl \ | ||
527 | -lpthread \ | ||
528 | -largefile \ | ||
529 | -sm \ | ||
530 | -xrender \ | ||
531 | -opengl \ | ||
532 | -cups \ | ||
533 | -dbus-linked \ | ||
534 | -openssl \ | ||
535 | -webkit \ | ||
536 | -svg \ | ||
537 | -icu \ | ||
538 | -xmlpatterns \ | ||
539 | -declarative \ | ||
540 | -plugin-sql-sqlite \ | ||
541 | -plugin-sql-mysql \ | ||
542 | -plugin-sql-odbc \ | ||
543 | -I/usr/include/mysql \ | ||
544 | -L/usr/$(mlibdir)/mysql \ | ||
545 | -graphicssystem raster \ | ||
546 | ${myconf} \ | ||
547 | || die | ||
548 | |||
549 | mmake all || die | ||
550 | } | ||
551 | |||
552 | src_install_qt4-core() | ||
553 | { | ||
554 | cd ${SRCDIR} | ||
555 | |||
556 | install_qt_target \ | ||
557 | src/tools/bootstrap \ | ||
558 | src/tools/moc \ | ||
559 | src/tools/rcc \ | ||
560 | src/tools/uic \ | ||
561 | src/corelib \ | ||
562 | src/xml \ | ||
563 | src/network \ | ||
564 | src/plugins/codecs \ | ||
565 | tools/linguist/lrelease \ | ||
566 | tools/linguist/lupdate \ | ||
567 | tools/linguist/lconvert | ||
568 | |||
569 | # install missing qmake | ||
570 | mmake INSTALL_ROOT=${BINDIR} install_qmake || die | ||
571 | mlink qmake ${QT_PREFIX}/bin/qmake${PVER%%.*} || die | ||
572 | |||
573 | # install missing findtr | ||
574 | minstallexec ${SRCDIR}/bin/findtr ${QT_PREFIX}/bin || die | ||
575 | |||
576 | # install all spec files | ||
577 | mmake INSTALL_ROOT=${BINDIR} install_mkspecs || die | ||
578 | |||
579 | # remove unneeded specs | ||
580 | echo "removing unneeded specs ..." | ||
581 | install -d ${BUILDDIR}/keep | ||
582 | niro | 23286 | mv ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/default ${BUILDDIR}/keep || die |
583 | mv ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/common ${BUILDDIR}/keep || die | ||
584 | mv ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/features ${BUILDDIR}/keep || die | ||
585 | mv ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/qws ${BUILDDIR}/keep || die | ||
586 | mv ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/${PLATFORM} ${BUILDDIR}/keep || die | ||
587 | niro | 23283 | if [[ ${ARCH} = x86_64 ]] |
588 | then | ||
589 | niro | 23286 | mv ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/linux-g++ ${BUILDDIR}/keep || die |
590 | niro | 23283 | fi |
591 | niro | 23286 | mv ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/qconfig.pri ${BUILDDIR}/keep || die |
592 | rm -rf ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs/* || die | ||
593 | mv ${BUILDDIR}/keep/* ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/mkspecs || die | ||
594 | niro | 23283 | |
595 | # fix qmake cache file | ||
596 | minstalldir ${QT_PREFIX}/share/qt${PVER%%.*} || die | ||
597 | sed "s:${SRCDIR}:${QT_PREFIX}:g" ${SRCDIR}/.qmake.cache > ${BINDIR}/${QT_PREFIX}/share/qt${PVER%%.*}/.qmake.cache || die | ||
598 | |||
599 | # # some needed symlinks | ||
600 | # mlink libqt-mt.so ${QT_PREFIX}/$(mlibdir)/libqt.so || die | ||
601 | |||
602 | # generate translations and install them | ||
603 | # use freshly built libraries | ||
604 | LD_LIBRARY_PATH=${SRCDIR}/lib ${SRCDIR}/bin/lrelease translations/*.ts || die | ||
605 | minstalldir ${QT_PREFIX}/share/qt${PVER%%.*}/translations || die | ||
606 | niro | 23286 | minstallfile translations/\*.qm ${QT_PREFIX}/share/qt${PVER%%.*}/translations || die |
607 | niro | 23283 | |
608 | # keep the qt4 sysdir | ||
609 | mkeepdir ${QT_SYSCONFDIR} || die | ||
610 | |||
611 | # environ vars | ||
612 | minstalldir /etc/env.d || die | ||
613 | MCONFIG=${QT_ENVFILE} | ||
614 | mclearconfig || die | ||
615 | maddconfig "QMAKESPEC=\"${PLATFORM}\"" || die | ||
616 | maddconfig "QTDIR=\"${QT_PREFIX}\"" || die | ||
617 | |||
618 | if [[ ${QT_PREFIX} != /usr ]] | ||
619 | then | ||
620 | # overwrite the env file here, there may be one in usr | ||
621 | # and we want this as system-wide default | ||
622 | mclearconfig || die | ||
623 | maddconfig "PATH=\"${QT_PREFIX}/bin\"" || die | ||
624 | maddconfig "ROOTPATH=\"${QT_PREFIX}/bin\"" || die | ||
625 | maddconfig "LDPATH=\"${QT_PREFIX}/$(mlibdir)\"" || die | ||
626 | maddconfig "MANPATH=\"${QT_PREFIX}/share/man\"" || die | ||
627 | maddconfig "PKG_CONFIG_PATH=\"${QT_PREFIX}/$(mlibdir)/pkgconfig\"" || die | ||
628 | fi | ||
629 | |||
630 | minstalldocs GPL* changes-${PVER} LICENSE* OPENSOURCE* README* || die | ||
631 | } | ||
632 | |||
633 | src_install_qt4-gui() | ||
634 | { | ||
635 | cd ${SRCDIR} | ||
636 | |||
637 | install_qt_target \ | ||
638 | src/gui \ | ||
639 | src/scripttools \ | ||
640 | src/plugins/imageformats/gif \ | ||
641 | src/plugins/imageformats/ico \ | ||
642 | src/plugins/imageformats/jpeg \ | ||
643 | src/plugins/imageformats/mng \ | ||
644 | src/plugins/imageformats/tiff \ | ||
645 | src/plugins/imageformats/tga \ | ||
646 | src/plugins/inputmethods \ | ||
647 | src/plugins/accessible/widgets \ | ||
648 | src/plugins/graphicssystems/trace \ | ||
649 | tools/qttracereplay \ | ||
650 | tools/qtconfig | ||
651 | |||
652 | # desktop icon | ||
653 | minstallpixmap tools/qtconfig/images/appicon.png qtconfig.png || die | ||
654 | minstall_desktop_icon \ | ||
655 | --name "QT4 Config" \ | ||
656 | --file "qt4-qtconfig" \ | ||
657 | --comment "Configure Qt4 behavior, styles, fonts" \ | ||
658 | --exec qtconfig \ | ||
659 | --icon qtconfig \ | ||
660 | --categories "Qt,Settings,DesktopSettings" \ | ||
661 | || die | ||
662 | } | ||
663 | |||
664 | src_install_qt4-svg() | ||
665 | { | ||
666 | cd ${SRCDIR} | ||
667 | |||
668 | install_qt_target \ | ||
669 | src/svg \ | ||
670 | src/plugins/imageformats/svg \ | ||
671 | src/plugins/iconengines/svgiconengine | ||
672 | } | ||
673 | |||
674 | src_install_qt4-sql() | ||
675 | { | ||
676 | cd ${SRCDIR} | ||
677 | |||
678 | install_qt_target src/sql src/plugins/sqldrivers | ||
679 | } | ||
680 | |||
681 | src_install_qt4-script() | ||
682 | { | ||
683 | cd ${SRCDIR} | ||
684 | |||
685 | install_qt_target src/script | ||
686 | } | ||
687 | |||
688 | src_install_qt4-xmlpatterns() | ||
689 | { | ||
690 | cd ${SRCDIR} | ||
691 | |||
692 | install_qt_target \ | ||
693 | src/xmlpatterns \ | ||
694 | tools/xmlpatterns \ | ||
695 | tools/xmlpatternsvalidator | ||
696 | } | ||
697 | |||
698 | src_install_qt4-dbus() | ||
699 | { | ||
700 | cd ${SRCDIR} | ||
701 | |||
702 | install_qt_target \ | ||
703 | src/dbus \ | ||
704 | tools/qdbus/qdbus \ | ||
705 | tools/qdbus/qdbusxml2cpp \ | ||
706 | tools/qdbus/qdbuscpp2xml | ||
707 | } | ||
708 | |||
709 | src_install_qt4-opengl() | ||
710 | { | ||
711 | cd ${SRCDIR} | ||
712 | |||
713 | install_qt_target src/opengl src/plugins/graphicssystems/opengl | ||
714 | } | ||
715 | |||
716 | if [[ ${QT4_PHONON} = yes ]] | ||
717 | then | ||
718 | src_install_qt4-phonon() | ||
719 | { | ||
720 | cd ${SRCDIR} | ||
721 | |||
722 | install_qt_target \ | ||
723 | src/phonon \ | ||
724 | src/plugins/phonon | ||
725 | |||
726 | # needed symlink; kde-4.4 includes from Phonon/* | ||
727 | if [[ ! -e ${BINDIR}/${QT_PREFIX}/include/qt/Phonon ]] | ||
728 | then | ||
729 | mlink phonon ${QT_PREFIX}/include/qt/Phonon || die | ||
730 | fi | ||
731 | } | ||
732 | fi | ||
733 | |||
734 | src_install_qt4-qt3support() | ||
735 | { | ||
736 | cd ${SRCDIR} | ||
737 | |||
738 | install_qt_target \ | ||
739 | src/qt3support \ | ||
740 | src/tools/uic3 \ | ||
741 | tools/porting | ||
742 | } | ||
743 | |||
744 | src_install_qt4-webkit() | ||
745 | { | ||
746 | cd ${SRCDIR} | ||
747 | |||
748 | install_qt_target \ | ||
749 | src/3rdparty/webkit/Source/JavaScriptCore \ | ||
750 | src/3rdparty/webkit/Source/WebCore \ | ||
751 | src/3rdparty/webkit/Source/WebKit/qt | ||
752 | } | ||
753 | |||
754 | src_install_qt4-test() | ||
755 | { | ||
756 | cd ${SRCDIR} | ||
757 | |||
758 | install_qt_target src/testlib | ||
759 | } | ||
760 | |||
761 | src_install_qt4-multimedia() | ||
762 | { | ||
763 | cd ${SRCDIR} | ||
764 | |||
765 | install_qt_target src/multimedia | ||
766 | } | ||
767 | |||
768 | src_install_qt4-help() | ||
769 | { | ||
770 | cd ${SRCDIR} | ||
771 | |||
772 | install_qt_target \ | ||
773 | tools/assistant/lib/fulltextsearch \ | ||
774 | tools/assistant/lib \ | ||
775 | tools/assistant/tools/qhelpgenerator \ | ||
776 | tools/assistant/tools/qcollectiongenerator \ | ||
777 | tools/assistant/tools/qhelpconverter \ | ||
778 | tools/qdoc3 | ||
779 | } | ||
780 | |||
781 | src_install_qt4-assistant() | ||
782 | { | ||
783 | cd ${SRCDIR} | ||
784 | |||
785 | install_qt_target tools/assistant/tools/assistant | ||
786 | |||
787 | # desktop icon | ||
788 | minstallpixmap tools/assistant/tools/assistant/images/assistant.png || die | ||
789 | minstall_desktop_icon \ | ||
790 | --name "QT4 Assistant" \ | ||
791 | --file "qt4-assistant" \ | ||
792 | --comment "Shows Qt4 documentation and examples" \ | ||
793 | --exec assistant \ | ||
794 | --icon assistant \ | ||
795 | --categories "Qt,Development,Documentation" \ | ||
796 | || die | ||
797 | } | ||
798 | |||
799 | src_install_qt4-declarative() | ||
800 | { | ||
801 | cd ${SRCDIR} | ||
802 | |||
803 | install_qt_target \ | ||
804 | src/declarative \ | ||
805 | src/imports \ | ||
806 | src/plugins/qmltooling \ | ||
807 | tools/qml \ | ||
808 | tools/qmlplugindump \ | ||
809 | src/3rdparty/webkit/Source/WebKit/qt/declarative | ||
810 | } | ||
811 | |||
812 | src_install_qt4-designer() | ||
813 | { | ||
814 | cd ${SRCDIR} | ||
815 | |||
816 | install_qt_target tools/designer | ||
817 | |||
818 | # desktop icon | ||
819 | minstallpixmap tools/designer/src/designer/images/designer.png || die | ||
820 | minstall_desktop_icon \ | ||
821 | --name "QT4 Designer" \ | ||
822 | --file "qt4-designer" \ | ||
823 | --comment "Design GUIs for Qt4 applications" \ | ||
824 | --exec designer \ | ||
825 | --icon designer \ | ||
826 | --categories "Qt,Development,GUIDesigner" \ | ||
827 | || die | ||
828 | } | ||
829 | |||
830 | src_install_qt4-linguist() | ||
831 | { | ||
832 | cd ${SRCDIR} | ||
833 | |||
834 | install_qt_target tools/linguist/linguist | ||
835 | |||
836 | # desktop icon | ||
837 | minstallpixmap tools/linguist/linguist/images/icons/linguist-128-32.png linguist.png || die | ||
838 | minstall_desktop_icon \ | ||
839 | --name "QT4 Linguist" \ | ||
840 | --file "qt4-linguist" \ | ||
841 | --comment "Add translations to Qt4 applications" \ | ||
842 | --exec linguist \ | ||
843 | --icon linguist \ | ||
844 | --categories "Qt,Development,Translation" \ | ||
845 | || die | ||
846 | } | ||
847 | |||
848 | src_install_qt4-pixeltool() | ||
849 | { | ||
850 | cd ${SRCDIR} | ||
851 | |||
852 | install_qt_target tools/pixeltool | ||
853 | } | ||
854 | |||
855 | niro | 23286 | src_install_qt4-qdbusviewer() |
856 | niro | 23283 | { |
857 | cd ${SRCDIR} | ||
858 | |||
859 | install_qt_target tools/qdbus/qdbusviewer | ||
860 | |||
861 | # desktop icon | ||
862 | minstallpixmap tools/qdbus/qdbusviewer/images/qdbusviewer-128.png qdbusviewer.png || die | ||
863 | minstall_desktop_icon \ | ||
864 | --name "QT4 QDbusViewer" \ | ||
865 | --file "qt4-qdbusviewer" \ | ||
866 | --comment "Debug D-Bus applications" \ | ||
867 | --exec qdbusviewer \ | ||
868 | --icon qdbusviewer \ | ||
869 | --categories "Qt,Development,Debugger" \ | ||
870 | || die | ||
871 | } | ||
872 | |||
873 | src_install_qt4-bearer() | ||
874 | { | ||
875 | cd ${SRCDIR} | ||
876 | |||
877 | install_qt_target \ | ||
878 | src/plugins/bearer/generic \ | ||
879 | src/plugins/bearer/networkmanager | ||
880 | } | ||
881 | |||
882 | postinstall_qt4-gui() | ||
883 | { | ||
884 | niro | 23285 | xdg_update_icon_resource |
885 | niro | 23283 | fdo-mime_update_desktop_db |
886 | } | ||
887 | |||
888 | postinstall_qt4-designer() | ||
889 | { | ||
890 | niro | 23285 | xdg_update_icon_resource |
891 | niro | 23283 | fdo-mime_update_desktop_db |
892 | } | ||
893 | |||
894 | postinstall_qt4-linguist() | ||
895 | { | ||
896 | niro | 23285 | xdg_update_icon_resource |
897 | niro | 23283 | fdo-mime_update_desktop_db |
898 | } | ||
899 | |||
900 | postinstall_qt4-pixeltool() | ||
901 | { | ||
902 | niro | 23285 | xdg_update_icon_resource |
903 | niro | 23283 | fdo-mime_update_desktop_db |
904 | } | ||
905 | |||
906 | postremove_qt4-gui() | ||
907 | { | ||
908 | niro | 23285 | xdg_update_icon_resource |
909 | niro | 23283 | fdo-mime_update_desktop_db |
910 | } | ||
911 | |||
912 | postremove_qt4-designer() | ||
913 | { | ||
914 | niro | 23285 | xdg_update_icon_resource |
915 | niro | 23283 | fdo-mime_update_desktop_db |
916 | } | ||
917 | |||
918 | postremove_qt4-linguist() | ||
919 | { | ||
920 | niro | 23285 | xdg_update_icon_resource |
921 | niro | 23283 | fdo-mime_update_desktop_db |
922 | } | ||
923 | |||
924 | postremove_qt4-pixeltool() | ||
925 | { | ||
926 | niro | 23285 | xdg_update_icon_resource |
927 | niro | 23283 | fdo-mime_update_desktop_db |
928 | } |