Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/kde-sunset:master commit in: dev-qt/qt-meta/, dev-qt/qt-meta/files/
Date: Mon, 30 Nov 2020 02:19:30
Message-Id: 1606699329.22e9dc1b709a5c9392307084c8f703b971e34424.asturm@gentoo
1 commit: 22e9dc1b709a5c9392307084c8f703b971e34424
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Mon Nov 30 01:22:09 2020 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Mon Nov 30 01:22:09 2020 +0000
6 URL: https://gitweb.gentoo.org/proj/kde-sunset.git/commit/?id=22e9dc1b
7
8 dev-qt/qt-meta: Drop 3.3.8b-r1, 3.3.8b-r2
9
10 Package-Manager: Portage-3.0.11, Repoman-3.0.2
11 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
12
13 dev-qt/qt-meta/files/0001-dnd_optimization.patch | 187 ----------
14 .../qt-meta/files/0002-dnd_active_window_fix.patch | 189 -----------
15 .../0038-dragobject-dont-prefer-unknown.patch | 57 ----
16 .../files/0044-qscrollview-windowactivate-fix.diff | 38 ---
17 dev-qt/qt-meta/files/0047-fix-kmenu-widget.diff | 25 --
18 .../qt-meta/files/0048-qclipboard_hack_80072.patch | 48 ---
19 .../files/qt-3.3.8-fix-compiler-detection.patch | 22 --
20 dev-qt/qt-meta/files/qt-3.3.8-immqt+gcc-4.3.patch | 20 --
21 dev-qt/qt-meta/files/qt-3.3.8-libpng15.patch | 212 ------------
22 dev-qt/qt-meta/files/qt-3.3.8-mips.patch | 39 ---
23 dev-qt/qt-meta/files/qt-3.3.8-seli-xinerama.patch | 49 ---
24 dev-qt/qt-meta/files/qt-3.3.8-uic-fix.patch | 18 -
25 dev-qt/qt-meta/files/qt-3.3.8-visibility.patch | 159 ---------
26 dev-qt/qt-meta/files/qt-3.3.8b-cjk-fix.patch | 32 --
27 dev-qt/qt-meta/files/qt-3.3.8b-cstddef.patch | 35 --
28 dev-qt/qt-meta/files/qt-3.3.8b-freetype251.patch | 52 ---
29 dev-qt/qt-meta/files/qt-ulibc.patch | 13 -
30 dev-qt/qt-meta/metadata.xml | 2 -
31 dev-qt/qt-meta/qt-meta-3.3.8b-r1.ebuild | 367 --------------------
32 dev-qt/qt-meta/qt-meta-3.3.8b-r2.ebuild | 375 ---------------------
33 20 files changed, 1939 deletions(-)
34
35 diff --git a/dev-qt/qt-meta/files/0001-dnd_optimization.patch b/dev-qt/qt-meta/files/0001-dnd_optimization.patch
36 deleted file mode 100644
37 index d9de2846..00000000
38 --- a/dev-qt/qt-meta/files/0001-dnd_optimization.patch
39 +++ /dev/null
40 @@ -1,187 +0,0 @@
41 -qt-bugs@ issue : 16115
42 -applied: no
43 -author: Lubos Lunak <l.lunak@×××.org>
44 -
45 -See http://lists.kde.org/?t=104388858900001&r=1&w=2
46 -
47 -
48 ---- src/kernel/qdnd_x11.cpp.sav 2003-02-05 16:09:45.000000000 +0100
49 -+++ src/kernel/qdnd_x11.cpp 2003-02-07 16:14:49.000000000 +0100
50 -@@ -49,13 +49,15 @@
51 - #include "qdragobject.h"
52 - #include "qobjectlist.h"
53 - #include "qcursor.h"
54 -+#include "qbitmap.h"
55 -+#include "qpainter.h"
56 -
57 - #include "qt_x11_p.h"
58 -
59 - // conflict resolution
60 -
61 --// unused, may be used again later: const int XKeyPress = KeyPress;
62 --// unused, may be used again later: const int XKeyRelease = KeyRelease;
63 -+const int XKeyPress = KeyPress;
64 -+const int XKeyRelease = KeyRelease;
65 - #undef KeyPress
66 - #undef KeyRelease
67 -
68 -@@ -249,20 +251,47 @@ class QShapedPixmapWidget : public QWidg
69 - public:
70 - QShapedPixmapWidget(int screen = -1) :
71 - QWidget(QApplication::desktop()->screen( screen ),
72 -- 0, WStyle_Customize | WStyle_Tool | WStyle_NoBorder | WX11BypassWM )
73 -+ 0, WStyle_Customize | WStyle_Tool | WStyle_NoBorder | WX11BypassWM ), oldpmser( 0 ), oldbmser( 0 )
74 - {
75 - }
76 -
77 -- void setPixmap(QPixmap pm)
78 -+ void setPixmap(QPixmap pm, QPoint hot)
79 - {
80 -- if ( pm.mask() ) {
81 -+ int bmser = pm.mask() ? pm.mask()->serialNumber() : 0;
82 -+ if( oldpmser == pm.serialNumber() && oldbmser == bmser
83 -+ && oldhot == hot )
84 -+ return;
85 -+ oldpmser = pm.serialNumber();
86 -+ oldbmser = bmser;
87 -+ oldhot = hot;
88 -+ bool hotspot_in = !(hot.x() < 0 || hot.y() < 0 || hot.x() >= pm.width() || hot.y() >= pm.height());
89 -+// if the pixmap has hotspot in its area, make a "hole" in it at that position
90 -+// this will allow XTranslateCoordinates() to find directly the window below the cursor instead
91 -+// of finding this pixmap, and therefore there won't be needed any (slow) search for the window
92 -+// using findRealWindow()
93 -+ if( hotspot_in ) {
94 -+ QBitmap mask = pm.mask() ? *pm.mask() : QBitmap( pm.width(), pm.height());
95 -+ if( !pm.mask())
96 -+ mask.fill( Qt::color1 );
97 -+ QPainter p( &mask );
98 -+ p.setPen( Qt::color0 );
99 -+ p.drawPoint( hot.x(), hot.y());
100 -+ p.end();
101 -+ pm.setMask( mask );
102 -+ setMask( mask );
103 -+ } else if ( pm.mask() ) {
104 - setMask( *pm.mask() );
105 - } else {
106 - clearMask();
107 - }
108 - resize(pm.width(),pm.height());
109 - setErasePixmap(pm);
110 -+ erase();
111 - }
112 -+private:
113 -+ int oldpmser;
114 -+ int oldbmser;
115 -+ QPoint oldhot;
116 - };
117 -
118 - QShapedPixmapWidget * qt_xdnd_deco = 0;
119 -@@ -859,6 +888,45 @@ void QDragManager::timerEvent( QTimerEve
120 - move( QCursor::pos() );
121 - }
122 -
123 -+static bool qt_xdnd_was_move = false;
124 -+static bool qt_xdnd_found = false;
125 -+// check whole incoming X queue for move events
126 -+// checking whole queue is done by always returning False in the predicate
127 -+// if there's another move event in the queue, and there's not a mouse button
128 -+// or keyboard or ClientMessage event before it, the current move event
129 -+// may be safely discarded
130 -+// this helps avoiding being overloaded by being flooded from many events
131 -+// from the XServer
132 -+static
133 -+Bool qt_xdnd_predicate( Display*, XEvent* ev, XPointer )
134 -+{
135 -+ if( qt_xdnd_found )
136 -+ return False;
137 -+ if( ev->type == MotionNotify )
138 -+ {
139 -+ qt_xdnd_was_move = true;
140 -+ qt_xdnd_found = true;
141 -+ }
142 -+ if( ev->type == ButtonPress || ev->type == ButtonRelease
143 -+ || ev->type == XKeyPress || ev->type == XKeyRelease
144 -+ || ev->type == ClientMessage )
145 -+ {
146 -+ qt_xdnd_was_move = false;
147 -+ qt_xdnd_found = true;
148 -+ }
149 -+ return False;
150 -+}
151 -+
152 -+static
153 -+bool qt_xdnd_another_movement()
154 -+{
155 -+ qt_xdnd_was_move = false;
156 -+ qt_xdnd_found = false;
157 -+ XEvent dummy;
158 -+ XCheckIfEvent( qt_xdisplay(), &dummy, qt_xdnd_predicate, NULL );
159 -+ return qt_xdnd_was_move;
160 -+}
161 -+
162 - bool QDragManager::eventFilter( QObject * o, QEvent * e)
163 - {
164 - if ( beingCancelled ) {
165 -@@ -881,8 +949,10 @@ bool QDragManager::eventFilter( QObject
166 -
167 - if ( e->type() == QEvent::MouseMove ) {
168 - QMouseEvent* me = (QMouseEvent *)e;
169 -- updateMode(me->stateAfter());
170 -- move( me->globalPos() );
171 -+ if( !qt_xdnd_another_movement()) {
172 -+ updateMode(me->stateAfter());
173 -+ move( me->globalPos() );
174 -+ }
175 - return TRUE;
176 - } else if ( e->type() == QEvent::MouseButtonRelease ) {
177 - qApp->removeEventFilter( this );
178 -@@ -1106,7 +1176,7 @@ void QDragManager::move( const QPoint &
179 - delete qt_xdnd_deco;
180 - qt_xdnd_deco = new QShapedPixmapWidget( screen );
181 - }
182 -- updatePixmap();
183 -+ updatePixmap( globalPos );
184 -
185 - if ( qt_xdnd_source_sameanswer.contains( globalPos ) &&
186 - qt_xdnd_source_sameanswer.isValid() ) {
187 -@@ -1679,7 +1749,7 @@ bool QDragManager::drag( QDragObject * o
188 - // qt_xdnd_source_object persists until we get an xdnd_finish message
189 - }
190 -
191 --void QDragManager::updatePixmap()
192 -+void QDragManager::updatePixmap( const QPoint& cursorPos )
193 - {
194 - if ( qt_xdnd_deco ) {
195 - QPixmap pm;
196 -@@ -1694,9 +1764,8 @@ void QDragManager::updatePixmap()
197 - defaultPm = new QPixmap(default_pm);
198 - pm = *defaultPm;
199 - }
200 -- qt_xdnd_deco->setPixmap(pm);
201 -- qt_xdnd_deco->move(QCursor::pos()-pm_hot);
202 -- qt_xdnd_deco->repaint(FALSE);
203 -+ qt_xdnd_deco->setPixmap(pm, pm_hot);
204 -+ qt_xdnd_deco->move(cursorPos-pm_hot);
205 - //if ( willDrop ) {
206 - qt_xdnd_deco->show();
207 - //} else {
208 -@@ -1705,4 +1774,9 @@ void QDragManager::updatePixmap()
209 - }
210 - }
211 -
212 -+void QDragManager::updatePixmap()
213 -+{
214 -+ updatePixmap( QCursor::pos());
215 -+}
216 -+
217 - #endif // QT_NO_DRAGANDDROP
218 ---- src/kernel/qdragobject.h.sav 2002-11-01 19:25:07.000000000 +0100
219 -+++ src/kernel/qdragobject.h 2001-01-01 01:01:00.000000000 +0100
220 -@@ -245,6 +245,7 @@ private:
221 - void move( const QPoint & );
222 - void drop();
223 - void updatePixmap();
224 -+ void updatePixmap( const QPoint& cursorPos );
225 -
226 - private:
227 - QDragObject * object;
228
229 diff --git a/dev-qt/qt-meta/files/0002-dnd_active_window_fix.patch b/dev-qt/qt-meta/files/0002-dnd_active_window_fix.patch
230 deleted file mode 100644
231 index 4b497d64..00000000
232 --- a/dev-qt/qt-meta/files/0002-dnd_active_window_fix.patch
233 +++ /dev/null
234 @@ -1,189 +0,0 @@
235 -qt-bugs@ issue : 25122
236 -applied: no
237 -author: Lubos Lunak <l.lunak@×××.org>
238 -
239 - Hello,
240 -
241 - for example: Open Konqueror window, showing some files. Start dragging one
242 - desktop icon. If you press/release Ctrl, there'll be a '+' attached to the
243 - icon, showing the DND operation. Now, while still doing DND, make the
244 - Konqueror window active (Alt+Tab with KDE-3.1.2+, hover over its taskbar
245 - entry, Ctrl+Fn to switch to a different virtual desktop, etc.). As soon as
246 - the app performing DND is not the active application, and the mouse is not
247 - moving, pressing/releasing Ctrl doesn't do anything, the state only updates
248 - when the mouse is moved.
249 -
250 - This is caused by the fact that Qt has only pointer grab when doing DND, but
251 - doesn't have keyboard grab. I actually consider this a good thing, because
252 - the only keys important for DND are modifiers, and they come together with
253 - pointer events, and not having keyboard grab allows using keyboard shortcuts
254 - like Alt+Tab while DND. However, when the mouse is not moved, and only a
255 - modifier key is pressed/released, the app won't get any mouse event, and
256 - won't also get the keyboard event.
257 -
258 - The attached patch changes Qt to explicitly check the modifiers state using
259 - XQueryPointer() if there's wasn't recently any mouse/keyboard event, which
260 - ensures the state is updated even in the situation described above.
261 -
262 ---- src/kernel/qapplication_x11.cpp.sav 2003-06-21 12:31:35.000000000 +0200
263 -+++ src/kernel/qapplication_x11.cpp 2003-06-21 12:35:44.000000000 +0200
264 -@@ -4053,7 +4053,7 @@ void QApplication::closePopup( QWidget *
265 - // Keyboard event translation
266 - //
267 -
268 --static int translateButtonState( int s )
269 -+int qt_x11_translateButtonState( int s )
270 - {
271 - int bst = 0;
272 - if ( s & Button1Mask )
273 -@@ -4119,7 +4119,7 @@ bool QETWidget::translateMouseEvent( con
274 - pos.ry() = lastMotion.y;
275 - globalPos.rx() = lastMotion.x_root;
276 - globalPos.ry() = lastMotion.y_root;
277 -- state = translateButtonState( lastMotion.state );
278 -+ state = qt_x11_translateButtonState( lastMotion.state );
279 - if ( qt_button_down && (state & (LeftButton |
280 - MidButton |
281 - RightButton ) ) == 0 )
282 -@@ -4143,7 +4143,7 @@ bool QETWidget::translateMouseEvent( con
283 - pos.ry() = xevent->xcrossing.y;
284 - globalPos.rx() = xevent->xcrossing.x_root;
285 - globalPos.ry() = xevent->xcrossing.y_root;
286 -- state = translateButtonState( xevent->xcrossing.state );
287 -+ state = qt_x11_translateButtonState( xevent->xcrossing.state );
288 - if ( qt_button_down && (state & (LeftButton |
289 - MidButton |
290 - RightButton ) ) == 0 )
291 -@@ -4155,7 +4155,7 @@ bool QETWidget::translateMouseEvent( con
292 - pos.ry() = event->xbutton.y;
293 - globalPos.rx() = event->xbutton.x_root;
294 - globalPos.ry() = event->xbutton.y_root;
295 -- state = translateButtonState( event->xbutton.state );
296 -+ state = qt_x11_translateButtonState( event->xbutton.state );
297 - switch ( event->xbutton.button ) {
298 - case Button1: button = LeftButton; break;
299 - case Button2: button = MidButton; break;
300 -@@ -4950,7 +4950,7 @@ bool QETWidget::translateKeyEventInterna
301 - XKeyEvent xkeyevent = event->xkey;
302 -
303 - // save the modifier state, we will use the keystate uint later by passing
304 -- // it to translateButtonState
305 -+ // it to qt_x11_translateButtonState
306 - uint keystate = event->xkey.state;
307 - // remove the modifiers where mode_switch exists... HPUX machines seem
308 - // to have alt *AND* mode_switch both in Mod1Mask, which causes
309 -@@ -5064,7 +5064,7 @@ bool QETWidget::translateKeyEventInterna
310 - }
311 - #endif // !QT_NO_XIM
312 -
313 -- state = translateButtonState( keystate );
314 -+ state = qt_x11_translateButtonState( keystate );
315 -
316 - static int directionKeyEvent = 0;
317 - if ( qt_use_rtl_extensions && type == QEvent::KeyRelease ) {
318 ---- src/kernel/qdnd_x11.cpp.sav 2003-06-30 15:26:42.000000000 +0200
319 -+++ src/kernel/qdnd_x11.cpp 2003-06-30 15:32:23.000000000 +0200
320 -@@ -114,6 +114,8 @@ Atom qt_xdnd_finished;
321 - Atom qt_xdnd_type_list;
322 - const int qt_xdnd_version = 4;
323 -
324 -+extern int qt_x11_translateButtonState( int s );
325 -+
326 - // Actions
327 - //
328 - // The Xdnd spec allows for user-defined actions. This could be implemented
329 -@@ -198,6 +200,8 @@ static Atom qt_xdnd_source_current_time;
330 - static int qt_xdnd_current_screen = -1;
331 - // state of dragging... true if dragging, false if not
332 - bool qt_xdnd_dragging = FALSE;
333 -+// need to check state of keyboard modifiers
334 -+static bool need_modifiers_check = FALSE;
335 -
336 - // dict of payload data, sorted by type atom
337 - static QIntDict<QByteArray> * qt_xdnd_target_data = 0;
338 -@@ -879,8 +883,20 @@ void qt_handle_xdnd_finished( QWidget *,
339 -
340 - void QDragManager::timerEvent( QTimerEvent* e )
341 - {
342 -- if ( e->timerId() == heartbeat && qt_xdnd_source_sameanswer.isNull() )
343 -- move( QCursor::pos() );
344 -+ if ( e->timerId() == heartbeat ) {
345 -+ if( need_modifiers_check ) {
346 -+ Window root, child;
347 -+ int root_x, root_y, win_x, win_y;
348 -+ unsigned int mask;
349 -+ XQueryPointer( qt_xdisplay(), qt_xrootwin( qt_xdnd_current_screen ),
350 -+ &root, &child, &root_x, &root_y, &win_x, &win_y, &mask );
351 -+ if( updateMode( (ButtonState)qt_x11_translateButtonState( mask )))
352 -+ qt_xdnd_source_sameanswer = QRect(); // force move
353 -+ }
354 -+ need_modifiers_check = TRUE;
355 -+ if( qt_xdnd_source_sameanswer.isNull() )
356 -+ move( QCursor::pos() );
357 -+ }
358 - }
359 -
360 - static bool qt_xdnd_was_move = false;
361 -@@ -948,6 +964,7 @@ bool QDragManager::eventFilter( QObject
362 - updateMode(me->stateAfter());
363 - move( me->globalPos() );
364 - }
365 -+ need_modifiers_check = FALSE;
366 - return TRUE;
367 - } else if ( e->type() == QEvent::MouseButtonRelease ) {
368 - qApp->removeEventFilter( this );
369 -@@ -986,9 +1003,11 @@ bool QDragManager::eventFilter( QObject
370 - beingCancelled = FALSE;
371 - qApp->exit_loop();
372 - } else {
373 -- updateMode(ke->stateAfter());
374 -- qt_xdnd_source_sameanswer = QRect(); // force move
375 -- move( QCursor::pos() );
376 -+ if( updateMode(ke->stateAfter())) {
377 -+ qt_xdnd_source_sameanswer = QRect(); // force move
378 -+ move( QCursor::pos() );
379 -+ }
380 -+ need_modifiers_check = FALSE;
381 - }
382 - return TRUE; // Eat all key events
383 - }
384 -@@ -1014,10 +1033,10 @@ bool QDragManager::eventFilter( QObject
385 -
386 -
387 - static Qt::ButtonState oldstate;
388 --void QDragManager::updateMode( ButtonState newstate )
389 -+bool QDragManager::updateMode( ButtonState newstate )
390 - {
391 - if ( newstate == oldstate )
392 -- return;
393 -+ return false;
394 - const int both = ShiftButton|ControlButton;
395 - if ( (newstate & both) == both ) {
396 - global_requested_action = QDropEvent::Link;
397 -@@ -1041,6 +1060,7 @@ void QDragManager::updateMode( ButtonSta
398 - }
399 - }
400 - oldstate = newstate;
401 -+ return true;
402 - }
403 -
404 -
405 -@@ -1707,6 +1727,7 @@ bool QDragManager::drag( QDragObject * o
406 - qt_xdnd_source_sameanswer = QRect();
407 - move(QCursor::pos());
408 - heartbeat = startTimer(200);
409 -+ need_modifiers_check = FALSE;
410 -
411 - #ifndef QT_NO_CURSOR
412 - qApp->setOverrideCursor( arrowCursor );
413 ---- src/kernel/qdragobject.h.sav 2003-05-19 22:34:43.000000000 +0200
414 -+++ src/kernel/qdragobject.h 2001-01-01 01:01:00.000000000 +0100
415 -@@ -248,7 +248,7 @@ private:
416 -
417 - private:
418 - QDragObject * object;
419 -- void updateMode( ButtonState newstate );
420 -+ bool updateMode( ButtonState newstate );
421 - void updateCursor();
422 -
423 - QWidget * dragSource;
424
425 diff --git a/dev-qt/qt-meta/files/0038-dragobject-dont-prefer-unknown.patch b/dev-qt/qt-meta/files/0038-dragobject-dont-prefer-unknown.patch
426 deleted file mode 100644
427 index ae4163ae..00000000
428 --- a/dev-qt/qt-meta/files/0038-dragobject-dont-prefer-unknown.patch
429 +++ /dev/null
430 @@ -1,57 +0,0 @@
431 -qt-bugs@ issue : 38642
432 -bugs.kde.org number : 71084
433 -applied: no
434 -author: Lubos Lunak <l.lunak@×××.org>
435 -
436 -Hello,
437 -
438 - start Mozilla, go e.g. to http://kde.org, start KWrite (or basically any Qt
439 -app that accepts text drops), select 'Conquer your Desktop!', and try to
440 -drag&drop it onto KWrite. The only text pasted should be 'm'.
441 -
442 - I don't know much the related mimetype and encoding stuff, so I'm unsure
443 -whose fault this actually is. The text drag is provided as a lot of
444 -text/something targets, to list some text/_moz_htmlinfo, text/x-moz-url,
445 -text/unicode and similar. The problem is, Kate uses QTextDrag::decode() with
446 -no subtype specified, probably with the intention that as Kate is a text
447 -editor, it can accept any text pasted. And since the first target provided by
448 -mozilla is text/x-moz-url, (which moreover seems to be encoded as 16bit
449 -unicode), the text dropped is completely wrong. You can easily see all
450 -targets provided by Mozilla with see_mime.patch applied.
451 -
452 - Solution #1: Say that Kate (any pretty much everybody else expecting text)
453 -should say "plain" as the subtype. In such case, I suggest you drop the
454 -QTextDrag::decode() variant with no subtype specified, and stress more the
455 -fact that not specifying a subtype can result in a lot of rubbish. It's
456 -simply too tempting to leave the subtype empty and try to accept anything.
457 -
458 - Solution #2: When trying to accept anything, try to get useful data. Which
459 -means either sorting the subtypes available somehow, checking only the ones
460 -Qt knows.
461 -
462 - To me, #1 seems to be a better choice, or possibly at least something like
463 -the attached QTextDrag patch, which simply always tries first "plain" subtype
464 -if none is specified. With this patch, Mozilla even works (that's irony, of
465 -course, Mozilla still pastes the text/plain text as HTML, but at least now it
466 -pastes something where it's easy to point at the offender).
467 -
468 -
469 ---- src/kernel/qdragobject.cpp.sav 2004-01-06 19:24:35.000000000 +0100
470 -+++ src/kernel/qdragobject.cpp 2004-01-06 19:47:01.000000000 +0100
471 -@@ -844,6 +844,16 @@ bool QTextDrag::decode( const QMimeSourc
472 - {
473 - if(!e)
474 - return FALSE;
475 -+
476 -+ // when subtype is not specified, try text/plain first, otherwise this may read
477 -+ // things like text/x-moz-url even though better targets are available
478 -+ if( subtype.isNull()) {
479 -+ QCString subtmp = "plain";
480 -+ if( decode( e, str, subtmp )) {
481 -+ subtype = subtmp;
482 -+ return true;
483 -+ }
484 -+ }
485 -
486 - if ( e->cacheType == QMimeSource::Text ) {
487 - str = *e->cache.txt.str;
488
489 diff --git a/dev-qt/qt-meta/files/0044-qscrollview-windowactivate-fix.diff b/dev-qt/qt-meta/files/0044-qscrollview-windowactivate-fix.diff
490 deleted file mode 100644
491 index 9a6df32a..00000000
492 --- a/dev-qt/qt-meta/files/0044-qscrollview-windowactivate-fix.diff
493 +++ /dev/null
494 @@ -1,38 +0,0 @@
495 -qt-bugs@ issue : N45716
496 -applied: no
497 -author: Enrico Ros <eros.kde@×××××.it>
498 -
499 -QScrollView unwanted repaint fix.
500 -
501 -This fixes the 'flashing' konqueror window on activation / deactivation by
502 -saving 1 unwanted repaint (when konqueror window has background).
503 -I tracked down to the problem to the internal QViewportWidget of the
504 -QScrollView class.
505 -
506 -When a window is activated the activation event is recursively propagated
507 -to all childs triggering the windowActivationChange() functions in the
508 -widget it passes by.
509 -What happens when the event gets to the Viewport?
510 -At this point the event has already been handled by windowActivationChange()
511 -of the parent widget (a QIconView for example) and has then been propagated
512 -to the Viewport that will handle it with the default
513 -QWidget::windowActivationChange implementation, maybe raising an unwanted
514 -update(); so here we stop the event.
515 -As an addition: if the parent reimplements the windowActivationChange()
516 -function, mainly to block the update, it won't be happy if the child will
517 -trigger the update. If the parent do not reimplement the function il will
518 -inherits the default implementation and there is no need for the viewport's
519 -one.
520 -
521 ---- src/widgets/qscrollview.cpp.orig 2004-03-29 10:17:04.000000000 +0000
522 -+++ src/widgets/qscrollview.cpp 2004-03-30 16:40:07.599978320 +0000
523 -@@ -1551,6 +1551,9 @@
524 - case QEvent::LayoutHint:
525 - d->autoResizeHint(this);
526 - break;
527 -+ case QEvent::WindowActivate:
528 -+ case QEvent::WindowDeactivate:
529 -+ return TRUE;
530 - default:
531 - break;
532 - }
533
534 diff --git a/dev-qt/qt-meta/files/0047-fix-kmenu-widget.diff b/dev-qt/qt-meta/files/0047-fix-kmenu-widget.diff
535 deleted file mode 100644
536 index fb0bb167..00000000
537 --- a/dev-qt/qt-meta/files/0047-fix-kmenu-widget.diff
538 +++ /dev/null
539 @@ -1,25 +0,0 @@
540 -qt-bugs@ issue: N46882
541 -bugs.kde.org number: 77545
542 -applied: no
543 -author: Stephan Binner <binner@×××.org>
544 -
545 -Fix wrong K menu width for the case of enabled side pixmap and a menu title
546 -(like "Recently Used Applications") being longer than every other entry.
547 -
548 -Solution: Respect PanelKMenu::setMaximumSize() as up to Qt 3.2.3
549 -
550 -Index: src/widgets/qpopupmenu.cpp
551 -===================================================================
552 -RCS file: /home/kde/qt-copy/src/widgets/qpopupmenu.cpp,v
553 -retrieving revision 1.60
554 -diff -u -3 -p -b -r1.60 qpopupmenu.cpp
555 ---- src/widgets/qpopupmenu.cpp 29 Apr 2004 22:31:28 -0000 1.60
556 -+++ src/widgets/qpopupmenu.cpp 30 Apr 2004 01:11:59 -0000
557 -@@ -2531,7 +2531,7 @@ QSize QPopupMenu::sizeHint() const
558 -
559 - QPopupMenu* that = (QPopupMenu*) this;
560 - //We do not need a resize here, just the sizeHint..
561 -- return that->updateSize(FALSE, FALSE).expandedTo( QApplication::globalStrut() );
562 -+ return that->updateSize(FALSE).expandedTo( QApplication::globalStrut() );
563 - }
564 -
565
566 diff --git a/dev-qt/qt-meta/files/0048-qclipboard_hack_80072.patch b/dev-qt/qt-meta/files/0048-qclipboard_hack_80072.patch
567 deleted file mode 100644
568 index 74c60fb2..00000000
569 --- a/dev-qt/qt-meta/files/0048-qclipboard_hack_80072.patch
570 +++ /dev/null
571 @@ -1,48 +0,0 @@
572 -qt-bugs@ issue : none, probably even won't be
573 -bugs.kde.org number : 80072
574 -applied: no
575 -author: Lubos Lunak <l.lunak@×××.org>
576 -
577 -A crude hack for KDE #80072. No good idea how to fix it properly yet :(.
578 -
579 ---- src/kernel/qclipboard_x11.cpp.sav 2004-04-30 12:00:06.000000000 +0200
580 -+++ src/kernel/qclipboard_x11.cpp 2004-05-09 21:18:10.269264304 +0200
581 -@@ -109,6 +109,7 @@ static int pending_timer_id = 0;
582 - static bool pending_clipboard_changed = FALSE;
583 - static bool pending_selection_changed = FALSE;
584 -
585 -+Q_EXPORT bool qt_qclipboard_bailout_hack = false;
586 -
587 - // event capture mechanism for qt_xclb_wait_for_event
588 - static bool waiting_for_data = FALSE;
589 -@@ -453,6 +454,15 @@ static int qt_xclb_event_filter(XEvent *
590 - return 0;
591 - }
592 -
593 -+static bool selection_request_pending = false;
594 -+
595 -+static Bool check_selection_request_pending( Display*, XEvent* e, XPointer )
596 -+ {
597 -+ if( e->type == SelectionRequest && e->xselectionrequest.owner == owner->winId())
598 -+ selection_request_pending = true;
599 -+ return False;
600 -+ }
601 -+
602 - bool qt_xclb_wait_for_event( Display *dpy, Window win, int type, XEvent *event,
603 - int timeout )
604 - {
605 -@@ -504,6 +514,14 @@ bool qt_xclb_wait_for_event( Display *dp
606 - do {
607 - if ( XCheckTypedWindowEvent(dpy,win,type,event) )
608 - return TRUE;
609 -+ if( qt_qclipboard_bailout_hack ) {
610 -+ XEvent dummy;
611 -+ selection_request_pending = false;
612 -+ if ( owner != NULL )
613 -+ XCheckIfEvent(dpy,&dummy,check_selection_request_pending,NULL);
614 -+ if( selection_request_pending )
615 -+ return TRUE;
616 -+ }
617 -
618 - now = QTime::currentTime();
619 - if ( started > now ) // crossed midnight
620
621 diff --git a/dev-qt/qt-meta/files/qt-3.3.8-fix-compiler-detection.patch b/dev-qt/qt-meta/files/qt-3.3.8-fix-compiler-detection.patch
622 deleted file mode 100644
623 index 203b71e6..00000000
624 --- a/dev-qt/qt-meta/files/qt-3.3.8-fix-compiler-detection.patch
625 +++ /dev/null
626 @@ -1,22 +0,0 @@
627 ---- qt-x11-free-3.3.8-orig/configure 2008-10-28 15:43:35.000000000 +0100
628 -+++ qt-x11-free-3.3.8/configure 2008-10-28 15:45:48.000000000 +0100
629 -@@ -3079,15 +3079,15 @@
630 - g++*)
631 - # GNU C++
632 - QMAKE_CONF_COMPILER=`grep "QMAKE_CXX[^_A-Z0-9a-z]" $QMAKESPEC/qmake.conf | sed "s,.* *= *\(.*\)$,\1,"`
633 -- COMPILER_VERSION=`${QMAKE_CONF_COMPILER} --version 2>/dev/null`
634 -+ COMPILER_VERSION=`${QMAKE_CONF_COMPILER} -dumpversion 2>/dev/null`
635 - case "$COMPILER_VERSION" in
636 -- *2.95.*)
637 -+ 2.95.*)
638 - COMPILER_VERSION="2.95.*"
639 - ;;
640 -- *3.*)
641 -+ 3.*)
642 - COMPILER_VERSION="3.*"
643 - ;;
644 -- *4.*)
645 -+ 4.*)
646 - COMPILER_VERSION="4"
647 - ;;
648 - *)
649
650 diff --git a/dev-qt/qt-meta/files/qt-3.3.8-immqt+gcc-4.3.patch b/dev-qt/qt-meta/files/qt-3.3.8-immqt+gcc-4.3.patch
651 deleted file mode 100644
652 index 65610e37..00000000
653 --- a/dev-qt/qt-meta/files/qt-3.3.8-immqt+gcc-4.3.patch
654 +++ /dev/null
655 @@ -1,20 +0,0 @@
656 ---- plugins/src/inputmethods/imsw-none/qnoneinputcontextplugin.cpp~ 2007-04-05 09:47:44.000000000 +0000
657 -+++ plugins/src/inputmethods/imsw-none/qnoneinputcontextplugin.cpp 2007-04-05 09:48:08.000000000 +0000
658 -@@ -44,6 +44,7 @@
659 - #include "qnoneinputcontextplugin.h"
660 - #include <qinputcontextfactory.h>
661 - #include <qsettings.h>
662 -+#include <cstdlib>
663 -
664 -
665 - QNoneInputContextPlugin::QNoneInputContextPlugin()
666 ---- plugins/src/inputmethods/simple/qsimpleinputcontext.cpp~ 2007-04-05 09:48:46.000000000 +0000
667 -+++ plugins/src/inputmethods/simple/qsimpleinputcontext.cpp 2007-04-05 09:48:54.000000000 +0000
668 -@@ -45,6 +45,7 @@
669 - #include <qnamespace.h>
670 - #include <qevent.h>
671 - #include <qglobal.h>
672 -+#include <algorithm>
673 -
674 - static const int ignoreKeys[] = {
675 - Qt::Key_Shift,
676
677 diff --git a/dev-qt/qt-meta/files/qt-3.3.8-libpng15.patch b/dev-qt/qt-meta/files/qt-3.3.8-libpng15.patch
678 deleted file mode 100644
679 index e64fea36..00000000
680 --- a/dev-qt/qt-meta/files/qt-3.3.8-libpng15.patch
681 +++ /dev/null
682 @@ -1,212 +0,0 @@
683 -$NetBSD: patch-as,v 1.5 2011/03/25 15:28:26 wiz Exp $
684 -
685 ---- src/kernel/qpngio.cpp.orig 2007-02-02 10:01:15.000000000 -0400
686 -+++ src/kernel/qpngio.cpp
687 -@@ -43,6 +43,7 @@
688 - #include "qiodevice.h"
689 -
690 - #include <png.h>
691 -+#include <zlib.h>
692 -
693 -
694 - #ifdef Q_OS_TEMP
695 -@@ -123,9 +124,24 @@ void setup_qt( QImage& image, png_struct
696 - png_get_IHDR(png_ptr, info_ptr, &width, &height, &bit_depth, &color_type,
697 - 0, 0, 0);
698 -
699 -+ png_colorp info_ptr_palette = NULL;
700 -+ int info_ptr_num_palette = 0;
701 -+ if (png_get_valid(png_ptr, info_ptr, PNG_INFO_PLTE)) {
702 -+ png_get_PLTE(png_ptr, info_ptr, &info_ptr_palette, &info_ptr_num_palette);
703 -+ }
704 -+
705 -+ png_bytep info_ptr_trans_alpha = NULL;
706 -+ int info_ptr_num_trans = 0;
707 -+ png_color_16p info_ptr_trans_color = NULL;
708 -+
709 -+ if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) {
710 -+ png_get_tRNS(png_ptr, info_ptr, &info_ptr_trans_alpha, &info_ptr_num_trans, &info_ptr_trans_color);
711 -+ }
712 -+
713 -+
714 - if ( color_type == PNG_COLOR_TYPE_GRAY ) {
715 - // Black & White or 8-bit grayscale
716 -- if ( bit_depth == 1 && info_ptr->channels == 1 ) {
717 -+ if ( bit_depth == 1 && png_get_channels(png_ptr, info_ptr) == 1 ) {
718 - png_set_invert_mono( png_ptr );
719 - png_read_update_info( png_ptr, info_ptr );
720 - if (!image.create( width, height, 1, 2, QImage::BigEndian ))
721 -@@ -159,7 +175,7 @@ void setup_qt( QImage& image, png_struct
722 - image.setColor( i, qRgba(c,c,c,0xff) );
723 - }
724 - if ( png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS) ) {
725 -- const int g = info_ptr->trans_values.gray;
726 -+ const int g = info_ptr_trans_color->gray;
727 - if (g < ncols) {
728 - image.setAlphaBuffer(TRUE);
729 - image.setColor(g, image.color(g) & RGB_MASK);
730 -@@ -168,7 +184,7 @@ void setup_qt( QImage& image, png_struct
731 - }
732 - } else if ( color_type == PNG_COLOR_TYPE_PALETTE
733 - && png_get_valid(png_ptr, info_ptr, PNG_INFO_PLTE)
734 -- && info_ptr->num_palette <= 256 )
735 -+ && info_ptr_num_palette <= 256 )
736 - {
737 - // 1-bit and 8-bit color
738 - if ( bit_depth != 1 )
739 -@@ -176,28 +192,28 @@ void setup_qt( QImage& image, png_struct
740 - png_read_update_info( png_ptr, info_ptr );
741 - png_get_IHDR(png_ptr, info_ptr,
742 - &width, &height, &bit_depth, &color_type, 0, 0, 0);
743 -- if (!image.create(width, height, bit_depth, info_ptr->num_palette,
744 -+ if (!image.create(width, height, bit_depth, info_ptr_num_palette,
745 - QImage::BigEndian))
746 - return;
747 - int i = 0;
748 - if ( png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS) ) {
749 - image.setAlphaBuffer( TRUE );
750 -- while ( i < info_ptr->num_trans ) {
751 -+ while ( i < info_ptr_num_trans ) {
752 - image.setColor(i, qRgba(
753 -- info_ptr->palette[i].red,
754 -- info_ptr->palette[i].green,
755 -- info_ptr->palette[i].blue,
756 -- info_ptr->trans[i]
757 -+ info_ptr_palette[i].red,
758 -+ info_ptr_palette[i].green,
759 -+ info_ptr_palette[i].blue,
760 -+ info_ptr_trans_alpha[i]
761 - )
762 - );
763 - i++;
764 - }
765 - }
766 -- while ( i < info_ptr->num_palette ) {
767 -+ while ( i < info_ptr_num_palette ) {
768 - image.setColor(i, qRgba(
769 -- info_ptr->palette[i].red,
770 -- info_ptr->palette[i].green,
771 -- info_ptr->palette[i].blue,
772 -+ info_ptr_palette[i].red,
773 -+ info_ptr_palette[i].green,
774 -+ info_ptr_palette[i].blue,
775 - 0xff
776 - )
777 - );
778 -@@ -284,7 +300,7 @@ void read_png_image(QImageIO* iio)
779 - return;
780 - }
781 -
782 -- if (setjmp(png_ptr->jmpbuf)) {
783 -+ if (setjmp(png_jmpbuf(png_ptr))) {
784 - png_destroy_read_struct(&png_ptr, &info_ptr, &end_info);
785 - iio->setStatus(-4);
786 - return;
787 -@@ -469,7 +485,7 @@ bool QPNGImageWriter::writeImage(const Q
788 - return FALSE;
789 - }
790 -
791 -- if (setjmp(png_ptr->jmpbuf)) {
792 -+ if (setjmp(png_jmpbuf(png_ptr))) {
793 - png_destroy_write_struct(&png_ptr, &info_ptr);
794 - return FALSE;
795 - }
796 -@@ -491,10 +507,16 @@ bool QPNGImageWriter::writeImage(const Q
797 -
798 - png_set_write_fn(png_ptr, (void*)this, qpiw_write_fn, qpiw_flush_fn);
799 -
800 -+#warning XXXtnn not too sure about this
801 -+/*
802 -+according to png.h, channels is only used on read, not writes, so we
803 -+should be able to comment this out.
804 -+
805 - info_ptr->channels =
806 - (image.depth() == 32)
807 - ? (image.hasAlphaBuffer() ? 4 : 3)
808 - : 1;
809 -+*/
810 -
811 - png_set_IHDR(png_ptr, info_ptr, image.width(), image.height(),
812 - image.depth() == 1 ? 1 : 8 /* per channel */,
813 -@@ -504,11 +526,12 @@ bool QPNGImageWriter::writeImage(const Q
814 - : PNG_COLOR_TYPE_RGB
815 - : PNG_COLOR_TYPE_PALETTE, 0, 0, 0);
816 -
817 -+ png_color_8 sig_bit;
818 -+ sig_bit.red = 8;
819 -+ sig_bit.green = 8;
820 -+ sig_bit.blue = 8;
821 -+ png_set_sBIT(png_ptr, info_ptr, &sig_bit);
822 -
823 -- //png_set_sBIT(png_ptr, info_ptr, 8);
824 -- info_ptr->sig_bit.red = 8;
825 -- info_ptr->sig_bit.green = 8;
826 -- info_ptr->sig_bit.blue = 8;
827 -
828 - if (image.depth() == 1 && image.bitOrder() == QImage::LittleEndian)
829 - png_set_packswap(png_ptr);
830 -@@ -522,11 +545,14 @@ bool QPNGImageWriter::writeImage(const Q
831 - png_set_PLTE(png_ptr, info_ptr, palette, num_palette);
832 - int* trans = new int[num_palette];
833 - int num_trans = 0;
834 -+ png_colorp info_ptr_palette = NULL;
835 -+ int tmp;
836 -+ png_get_PLTE(png_ptr, info_ptr, &info_ptr_palette, &tmp);
837 - for (int i=0; i<num_palette; i++) {
838 - QRgb rgb=image.color(i);
839 -- info_ptr->palette[i].red = qRed(rgb);
840 -- info_ptr->palette[i].green = qGreen(rgb);
841 -- info_ptr->palette[i].blue = qBlue(rgb);
842 -+ info_ptr_palette[i].red = qRed(rgb);
843 -+ info_ptr_palette[i].green = qGreen(rgb);
844 -+ info_ptr_palette[i].blue = qBlue(rgb);
845 - if (image.hasAlphaBuffer()) {
846 - trans[i] = rgb >> 24;
847 - if (trans[i] < 255) {
848 -@@ -534,6 +560,7 @@ bool QPNGImageWriter::writeImage(const Q
849 - }
850 - }
851 - }
852 -+ png_set_PLTE(png_ptr, info_ptr, info_ptr_palette, num_palette);
853 - if (num_trans) {
854 - copy_trans = new png_byte[num_trans];
855 - for (int i=0; i<num_trans; i++)
856 -@@ -544,7 +571,10 @@ bool QPNGImageWriter::writeImage(const Q
857 - }
858 -
859 - if ( image.hasAlphaBuffer() ) {
860 -- info_ptr->sig_bit.alpha = 8;
861 -+ png_color_8p sig_bit;
862 -+ png_get_sBIT(png_ptr, info_ptr, &sig_bit);
863 -+ sig_bit->alpha = 8;
864 -+ png_set_sBIT(png_ptr, info_ptr, sig_bit);
865 - }
866 -
867 - // Swap ARGB to RGBA (normal PNG format) before saving on
868 -@@ -1030,7 +1060,7 @@ int QPNGFormat::decode(QImage& img, QIma
869 - return -1;
870 - }
871 -
872 -- if (setjmp((png_ptr)->jmpbuf)) {
873 -+ if (setjmp(png_jmpbuf(png_ptr))) {
874 - png_destroy_read_struct(&png_ptr, &info_ptr, 0);
875 - image = 0;
876 - return -1;
877 -@@ -1057,7 +1087,7 @@ int QPNGFormat::decode(QImage& img, QIma
878 -
879 - if ( !png_ptr ) return 0;
880 -
881 -- if (setjmp(png_ptr->jmpbuf)) {
882 -+ if (setjmp(png_jmpbuf(png_ptr))) {
883 - png_destroy_read_struct(&png_ptr, &info_ptr, 0);
884 - image = 0;
885 - state = MovieStart;
886 -@@ -1117,7 +1147,7 @@ void QPNGFormat::end(png_structp png, pn
887 - consumer->frameDone(QPoint(offx,offy),r);
888 - consumer->end();
889 - state = FrameStart;
890 -- unused_data = (int)png->buffer_size; // Since libpng doesn't tell us
891 -+ unused_data = png_process_data_pause(png, 0);
892 - }
893 -
894 - #ifdef PNG_USER_CHUNKS_SUPPORTED
895
896 diff --git a/dev-qt/qt-meta/files/qt-3.3.8-mips.patch b/dev-qt/qt-meta/files/qt-3.3.8-mips.patch
897 deleted file mode 100644
898 index 1f70900f..00000000
899 --- a/dev-qt/qt-meta/files/qt-3.3.8-mips.patch
900 +++ /dev/null
901 @@ -1,39 +0,0 @@
902 -Bug 210551.
903 -Fix compilation on mips
904 -
905 -Original commit message by Christopher Martin, debian bug 342545.
906 -
907 - * Add a patch, courtesy of Steve Langasek, that fixes
908 - qt-x11-free's longstanding intermittent FTBFS on hppa, caused
909 - by "the bogus assumption in src/tools/qlocale.cpp that a
910 - char[] can be cast to a double *." (Closes: #342545)
911 -
912 ---- qt-x11-free-3.3.6.orig/src/tools/qlocale.cpp
913 -+++ qt-x11-free-3.3.6/src/tools/qlocale.cpp
914 -@@ -122,13 +122,24 @@
915 - #endif
916 -
917 - // We can't rely on -NAN, since all operations on a NAN should return a NAN.
918 -+static double be_neg_nan;
919 -+static double le_neg_nan;
920 - static const unsigned char be_neg_nan_bytes[] = { 0xff, 0xf8, 0, 0, 0, 0, 0, 0 };
921 - static const unsigned char le_neg_nan_bytes[] = { 0, 0, 0, 0, 0, 0, 0xf8, 0xff };
922 -+static bool neg_nan_init = false;
923 -+
924 - static inline double negNan()
925 - {
926 -+ if (!neg_nan_init)
927 -+ {
928 -+ memcpy(&be_neg_nan,be_neg_nan_bytes,sizeof(be_neg_nan_bytes));
929 -+ memcpy(&le_neg_nan,le_neg_nan_bytes,sizeof(le_neg_nan_bytes));
930 -+ neg_nan_init = true;
931 -+ }
932 - return (ByteOrder == BigEndian ?
933 -- *((const double *) be_neg_nan_bytes) :
934 -- *((const double *) le_neg_nan_bytes));
935 -+ be_neg_nan :
936 -+ le_neg_nan);
937 -+
938 - }
939 -
940 - // Sizes as defined by the ISO C99 standard - fallback
941
942 diff --git a/dev-qt/qt-meta/files/qt-3.3.8-seli-xinerama.patch b/dev-qt/qt-meta/files/qt-3.3.8-seli-xinerama.patch
943 deleted file mode 100644
944 index 9fdd97a3..00000000
945 --- a/dev-qt/qt-meta/files/qt-3.3.8-seli-xinerama.patch
946 +++ /dev/null
947 @@ -1,49 +0,0 @@
948 ---- src/kernel/qapplication_x11.cpp.sav 2006-06-01 13:31:04.000000000 +0200
949 -+++ src/kernel/qapplication_x11.cpp 2006-06-01 13:33:07.000000000 +0200
950 -@@ -271,6 +271,7 @@ Atom qt_net_wm_frame_strut = 0; // KDE
951 - Atom qt_net_wm_state_stays_on_top = 0; // KDE extension
952 - Atom qt_net_wm_pid = 0;
953 - Atom qt_net_wm_user_time = 0;
954 -+Atom qt_net_wm_full_placement = 0; // KDE extension
955 - // Enlightenment support
956 - Atom qt_enlightenment_desktop = 0;
957 -
958 -@@ -1922,6 +1923,7 @@ void qt_init_internal( int *argcptr, cha
959 - &qt_net_wm_state_stays_on_top );
960 - qt_x11_intern_atom( "_NET_WM_PID", &qt_net_wm_pid );
961 - qt_x11_intern_atom( "_NET_WM_USER_TIME", &qt_net_wm_user_time );
962 -+ qt_x11_intern_atom( "_NET_WM_FULL_PLACEMENT", &qt_net_wm_full_placement );
963 - qt_x11_intern_atom( "ENLIGHTENMENT_DESKTOP", &qt_enlightenment_desktop );
964 - qt_x11_intern_atom( "_NET_WM_NAME", &qt_net_wm_name );
965 - qt_x11_intern_atom( "_NET_WM_ICON_NAME", &qt_net_wm_icon_name );
966 ---- src/dialogs/qdialog.cpp.sav 2006-03-17 14:33:44.000000000 +0100
967 -+++ src/dialogs/qdialog.cpp 2006-06-01 13:38:00.000000000 +0200
968 -@@ -670,6 +670,11 @@ bool QDialog::event( QEvent *e )
969 -
970 - #if defined(Q_WS_X11)
971 - extern "C" { int XSetTransientForHint( Display *, unsigned long, unsigned long ); }
972 -+#include <private/qt_x11_p.h>
973 -+#undef FocusIn
974 -+// defined in qapplication_x11.cpp
975 -+extern Atom qt_net_wm_full_placement;
976 -+extern bool qt_net_supports(Atom atom);
977 - #endif // Q_WS_X11
978 -
979 - /*!
980 -@@ -691,10 +696,12 @@ void QDialog::show()
981 -
982 - if ( !did_resize )
983 - adjustSize();
984 -- if ( has_relpos && !did_move ) {
985 -- adjustPositionInternal( parentWidget(), TRUE );
986 -- } else if ( !did_move ) {
987 -- adjustPositionInternal( parentWidget() );
988 -+ if( !qt_net_supports( qt_net_wm_full_placement )) {
989 -+ if ( has_relpos && !did_move ) {
990 -+ adjustPositionInternal( parentWidget(), TRUE );
991 -+ } else if ( !did_move ) {
992 -+ adjustPositionInternal( parentWidget() );
993 -+ }
994 - }
995 -
996 - if (windowState() != state)
997
998 diff --git a/dev-qt/qt-meta/files/qt-3.3.8-uic-fix.patch b/dev-qt/qt-meta/files/qt-3.3.8-uic-fix.patch
999 deleted file mode 100644
1000 index 8e5bd559..00000000
1001 --- a/dev-qt/qt-meta/files/qt-3.3.8-uic-fix.patch
1002 +++ /dev/null
1003 @@ -1,18 +0,0 @@
1004 -Index: tools/designer/uic/form.cpp
1005 -===================================================================
1006 ---- tools/designer/uic/form.cpp (revision 460038)
1007 -+++ tools/designer/uic/form.cpp (working copy)
1008 -@@ -731,6 +731,13 @@
1009 - while ( !n2.isNull() ) {
1010 - if ( n2.tagName() == "includehint" ) {
1011 - QString file = n2.firstChild().toText().data();
1012 -+ int colons = file.find("::");
1013 -+
1014 -+ if (colons != -1)
1015 -+ {
1016 -+ file = file.right(file.length() - colons - 2);
1017 -+ }
1018 -+
1019 - localIncludes += file;
1020 - }
1021 - n2 = n2.nextSibling().toElement();
1022
1023 diff --git a/dev-qt/qt-meta/files/qt-3.3.8-visibility.patch b/dev-qt/qt-meta/files/qt-3.3.8-visibility.patch
1024 deleted file mode 100644
1025 index a5246b9f..00000000
1026 --- a/dev-qt/qt-meta/files/qt-3.3.8-visibility.patch
1027 +++ /dev/null
1028 @@ -1,159 +0,0 @@
1029 -Index: configure
1030 -===================================================================
1031 ---- configure (revision 471775)
1032 -+++ configure (working copy)
1033 -@@ -1053,6 +1053,7 @@
1034 - [ -d $outpath/src/tools ] || mkdir -p $outpath/src/tools
1035 - cat > $outpath/src/tools/qconfig.cpp.new <<EOF
1036 - /* Install paths from configure */
1037 -+#include "qglobal.h"
1038 -
1039 - static const char QT_INSTALL_PREFIX [267] = "qt_nstpath=$QT_INSTALL_PREFIX";
1040 - static const char QT_INSTALL_BINS [267] = "qt_binpath=$QT_INSTALL_BINS";
1041 -Index: src/kernel/qgplugin.h
1042 -===================================================================
1043 ---- src/kernel/qgplugin.h (revision 471775)
1044 -+++ src/kernel/qgplugin.h (working copy)
1045 -@@ -90,35 +90,19 @@
1046 - return i->iface(); \
1047 - }
1048 -
1049 --# ifdef Q_WS_WIN
1050 --# ifdef Q_CC_BOR
1051 --# define Q_EXPORT_PLUGIN(PLUGIN) \
1052 -- Q_PLUGIN_VERIFICATION_DATA \
1053 -- Q_EXTERN_C __declspec(dllexport) \
1054 -- const char * __stdcall qt_ucm_query_verification_data() \
1055 -- { return qt_ucm_verification_data; } \
1056 -- Q_EXTERN_C __declspec(dllexport) QUnknownInterface* \
1057 -- __stdcall ucm_instantiate() \
1058 -- Q_PLUGIN_INSTANTIATE( PLUGIN )
1059 --# else
1060 --# define Q_EXPORT_PLUGIN(PLUGIN) \
1061 -- Q_PLUGIN_VERIFICATION_DATA \
1062 -- Q_EXTERN_C __declspec(dllexport) \
1063 -- const char *qt_ucm_query_verification_data() \
1064 -- { return qt_ucm_verification_data; } \
1065 -- Q_EXTERN_C __declspec(dllexport) QUnknownInterface* ucm_instantiate() \
1066 -- Q_PLUGIN_INSTANTIATE( PLUGIN )
1067 --# endif
1068 --# else
1069 --# define Q_EXPORT_PLUGIN(PLUGIN) \
1070 -+#if defined(Q_WS_WIN) && defined(Q_CC_BOR)
1071 -+# define Q_STDCALL __stdcall
1072 -+#else
1073 -+# define Q_STDCALL
1074 -+#endif
1075 -+
1076 -+#define Q_EXPORT_PLUGIN(PLUGIN) \
1077 - Q_PLUGIN_VERIFICATION_DATA \
1078 -- Q_EXTERN_C \
1079 -- const char *qt_ucm_query_verification_data() \
1080 -+ Q_EXTERN_C Q_EXPORT \
1081 -+ const char * Q_STDCALL qt_ucm_query_verification_data() \
1082 - { return qt_ucm_verification_data; } \
1083 -- Q_EXTERN_C QUnknownInterface* ucm_instantiate() \
1084 -+ Q_EXTERN_C Q_EXPORT QUnknownInterface* Q_STDCALL ucm_instantiate() \
1085 - Q_PLUGIN_INSTANTIATE( PLUGIN )
1086 --# endif
1087 --
1088 - #endif
1089 -
1090 - struct QUnknownInterface;
1091 -Index: src/kernel/qapplication_x11.cpp
1092 -===================================================================
1093 ---- src/kernel/qapplication_x11.cpp (revision 471775)
1094 -+++ src/kernel/qapplication_x11.cpp (working copy)
1095 -@@ -314,7 +314,7 @@
1096 -
1097 - // flags for extensions for special Languages, currently only for RTL languages
1098 - static bool qt_use_rtl_extensions = FALSE;
1099 --bool qt_hebrew_keyboard_hack = FALSE;
1100 -+Q_EXPORT bool qt_hebrew_keyboard_hack = FALSE;
1101 -
1102 - static Window mouseActWindow = 0; // window where mouse is
1103 - static int mouseButtonPressed = 0; // last mouse button pressed
1104 -@@ -3800,7 +3800,7 @@
1105 - }
1106 -
1107 -
1108 --bool qt_try_modal( QWidget *widget, XEvent *event )
1109 -+Q_EXPORT bool qt_try_modal( QWidget *widget, XEvent *event )
1110 - {
1111 - if (qt_xdnd_dragging) {
1112 - // allow mouse events while DnD is active
1113 -Index: src/kernel/qtextengine_p.h
1114 -===================================================================
1115 ---- src/kernel/qtextengine_p.h (revision 471775)
1116 -+++ src/kernel/qtextengine_p.h (working copy)
1117 -@@ -280,7 +280,7 @@
1118 -
1119 - class QFontPrivate;
1120 -
1121 --class QTextEngine {
1122 -+class Q_EXPORT QTextEngine {
1123 - public:
1124 - QTextEngine( const QString &str, QFontPrivate *f );
1125 - ~QTextEngine();
1126 -Index: src/tools/qglobal.h
1127 -===================================================================
1128 ---- src/tools/qglobal.h (revision 471775)
1129 -+++ src/tools/qglobal.h (working copy)
1130 -@@ -865,6 +865,10 @@
1131 - # define Q_TEMPLATE_EXTERN
1132 - # undef Q_DISABLE_COPY /* avoid unresolved externals */
1133 - # endif
1134 -+#elif defined(Q_CC_GNU) && __GNUC__ - 0 >= 4
1135 -+# define Q_EXPORT __attribute__((visibility("default")))
1136 -+# undef QT_MAKEDLL /* ignore these for other platforms */
1137 -+# undef QT_DLL
1138 - #else
1139 - # undef QT_MAKEDLL /* ignore these for other platforms */
1140 - # undef QT_DLL
1141 -Index: tools/designer/uilib/qwidgetfactory.h
1142 -===================================================================
1143 ---- tools/designer/uilib/qwidgetfactory.h (revision 471775)
1144 -+++ tools/designer/uilib/qwidgetfactory.h (working copy)
1145 -@@ -48,7 +48,7 @@
1146 - class QWidgetFactoryPrivate;
1147 - class UibStrTable;
1148 -
1149 --class QWidgetFactory
1150 -+class Q_EXPORT QWidgetFactory
1151 - {
1152 - public:
1153 - QWidgetFactory();
1154 -Index: tools/designer/uilib/qwidgetfactory.cpp
1155 -===================================================================
1156 ---- tools/designer/uilib/qwidgetfactory.cpp (revision 471775)
1157 -+++ tools/designer/uilib/qwidgetfactory.cpp (working copy)
1158 -@@ -113,13 +113,13 @@
1159 - static QMap<QString, bool> *availableWidgetMap = 0;
1160 - static QStringList *availableWidgetList = 0;
1161 -
1162 --QMap<QWidget*, QString> *qwf_forms = 0;
1163 -+Q_EXPORT QMap<QWidget*, QString> *qwf_forms = 0;
1164 - QString *qwf_language = 0;
1165 --bool qwf_execute_code = TRUE;
1166 -+Q_EXPORT bool qwf_execute_code = TRUE;
1167 - bool qwf_stays_on_top = FALSE;
1168 - QString qwf_currFileName = "";
1169 - QObject *qwf_form_object = 0;
1170 --QString *qwf_plugin_dir = 0;
1171 -+Q_EXPORT QString *qwf_plugin_dir = 0;
1172 -
1173 - static void setupPluginDir()
1174 - {
1175 -Index: tools/designer/shared/domtool.h
1176 -===================================================================
1177 ---- tools/designer/shared/domtool.h (revision 471775)
1178 -+++ tools/designer/shared/domtool.h (working copy)
1179 -@@ -33,7 +33,7 @@
1180 - class QDomElement;
1181 - class QDomDocument;
1182 -
1183 --class DomTool : public Qt
1184 -+class Q_EXPORT DomTool : public Qt
1185 - {
1186 - public:
1187 - static QVariant readProperty( const QDomElement& e, const QString& name, const QVariant& defValue );
1188
1189 diff --git a/dev-qt/qt-meta/files/qt-3.3.8b-cjk-fix.patch b/dev-qt/qt-meta/files/qt-3.3.8b-cjk-fix.patch
1190 deleted file mode 100644
1191 index 5372bdb8..00000000
1192 --- a/dev-qt/qt-meta/files/qt-3.3.8b-cjk-fix.patch
1193 +++ /dev/null
1194 @@ -1,32 +0,0 @@
1195 ---- src/kernel/qfontdatabase.cpp 2008-07-10 06:17:31.000000000 +0800
1196 -+++ src/kernel/qfontdatabase.cpp 2008-07-10 06:27:53.000000000 +0800
1197 -@@ -960,19 +960,17 @@
1198 - #ifdef Q_WS_X11
1199 - if (script == QFont::Han) {
1200 - // modify script according to locale
1201 -- static QFont::Script defaultHan = QFont::UnknownScript;
1202 -- if (defaultHan == QFont::UnknownScript) {
1203 -- QCString locale = setlocale(LC_ALL, NULL);
1204 -- if (locale.contains("ko"))
1205 -- defaultHan = QFont::Han_Korean;
1206 -- else if (locale.contains("zh_TW") || locale.contains("zh_HK"))
1207 -- defaultHan = QFont::Han_TraditionalChinese;
1208 -- else if (locale.contains("zh"))
1209 -- defaultHan = QFont::Han_SimplifiedChinese;
1210 -- else
1211 -- defaultHan = QFont::Han_Japanese;
1212 -+ static QFont::Script defaultHan = QFont::Han;
1213 -+ QCString locale = setlocale(LC_ALL, NULL);
1214 -+ if (locale.contains("ko"))
1215 -+ defaultHan = QFont::Han_Korean;
1216 -+ else if (locale.contains("zh_TW") || locale.contains("zh_HK"))
1217 -+ defaultHan = QFont::Han_TraditionalChinese;
1218 -+ else if (locale.contains("zh"))
1219 -+ defaultHan = QFont::Han_SimplifiedChinese;
1220 -+ else if (locale.contains("jp"))
1221 -+ defaultHan = QFont::Han_Japanese;
1222 -- }
1223 - script = defaultHan;
1224 - }
1225 - #endif
1226 -
1227
1228 diff --git a/dev-qt/qt-meta/files/qt-3.3.8b-cstddef.patch b/dev-qt/qt-meta/files/qt-3.3.8b-cstddef.patch
1229 deleted file mode 100644
1230 index 9541dc95..00000000
1231 --- a/dev-qt/qt-meta/files/qt-3.3.8b-cstddef.patch
1232 +++ /dev/null
1233 @@ -1,35 +0,0 @@
1234 -diff -urpN qt-x11-free-3.3.8b.orig/src/tools/qvaluevector.h qt-x11-free-3.3.8b/src/tools/qvaluevector.h
1235 ---- qt-x11-free-3.3.8b.orig/src/tools/qvaluevector.h 2008-01-15 11:09:13.000000000 -0800
1236 -+++ qt-x11-free-3.3.8b/src/tools/qvaluevector.h 2012-12-09 04:11:27.641340594 -0800
1237 -@@ -47,6 +47,7 @@
1238 -
1239 - #ifndef QT_NO_STL
1240 - #include <vector>
1241 -+#include <cstddef>
1242 - #endif
1243 -
1244 - template <class T>
1245 -diff -urpN qt-x11-free-3.3.8b.orig/src/tools/qmap.h qt-x11-free-3.3.8b/src/tools/qmap.h
1246 ---- qt-x11-free-3.3.8b.orig/src/tools/qmap.h 2008-01-15 11:09:13.000000000 -0800
1247 -+++ qt-x11-free-3.3.8b/src/tools/qmap.h 2013-01-10 15:30:00.636796209 -0800
1248 -@@ -54,6 +54,8 @@
1249 - #include <map>
1250 - #endif
1251 -
1252 -+#include <cstddef>
1253 -+
1254 - //#define QT_CHECK_MAP_RANGE
1255 -
1256 - struct Q_EXPORT QMapNodeBase
1257 -diff -urpN qt-x11-free-3.3.8b.orig/src/tools/qvaluelist.h qt-x11-free-3.3.8b/src/tools/qvaluelist.h
1258 ---- qt-x11-free-3.3.8b.orig/src/tools/qvaluelist.h 2008-01-15 11:09:13.000000000 -0800
1259 -+++ qt-x11-free-3.3.8b/src/tools/qvaluelist.h 2013-01-10 15:30:23.561863215 -0800
1260 -@@ -58,6 +58,8 @@
1261 - #pragma warning(disable:4284) // "return type for operator -> is not a UDT"
1262 - #endif
1263 -
1264 -+#include <cstddef>
1265 -+
1266 - template <class T>
1267 - class QValueListNode
1268 - {
1269
1270 diff --git a/dev-qt/qt-meta/files/qt-3.3.8b-freetype251.patch b/dev-qt/qt-meta/files/qt-3.3.8b-freetype251.patch
1271 deleted file mode 100644
1272 index e8f968d4..00000000
1273 --- a/dev-qt/qt-meta/files/qt-3.3.8b-freetype251.patch
1274 +++ /dev/null
1275 @@ -1,52 +0,0 @@
1276 ---- qt-x11-free-3.3.8b/config.tests/x11/xfreetype.test
1277 -+++ qt-x11-free-3.3.8b/config.tests/x11/xfreetype.test
1278 -@@ -116,29 +116,32 @@
1279 - # check for freetype2 headers
1280 - FREETYPE2_INCDIR=
1281 - if [ "$XFT" = "yes" ]; then
1282 -- INC="freetype2/freetype/freetype.h"
1283 -+ INC_OLD="freetype2/freetype/freetype.h"
1284 -+ INC_NEW="freetype2/freetype.h"
1285 - XDIRS=`sed -n -e '/^QMAKE_INCDIR_X11[ ]*=/ { s/[^=]*=[ ]*//; s/-I/ /g; p; }' $XCONFIG`
1286 - LDIRS=`sed -n -e '/^QMAKE_INCDIR[ ]*=/ { s/[^=]*=[ ]*//; s/-I/ /g; p; }' $XCONFIG`
1287 - INCDIRS="$IN_INCDIRS $XDIRS $LDIRS /usr/include /include"
1288 - F=
1289 - for INCDIR in $INCDIRS; do
1290 -- if [ -f $INCDIR/$INC ]; then
1291 -- # detect major version of freetype2
1292 -- FREETYPE_MAJOR=`grep "#define FREETYPE_MAJOR" $INCDIR/$INC | head -n 1 | awk '{ print \$3 }'`
1293 -- FREETYPE_MINOR=`grep "#define FREETYPE_MINOR" $INCDIR/$INC | head -n 1 | awk '{ print \$3 }'`
1294 -- FREETYPE_PATCH=`grep "#define FREETYPE_PATCH" $INCDIR/$INC | head -n 1 | awk '{ print \$3 }'`
1295 -- test -z "$FREETYPE_PATCH" && FREETYPE_PATCH="0"
1296 -- [ "$VERBOSE" = "yes" ] && \
1297 -- echo " Found Freetype version $FREETYPE_MAJOR.$FREETYPE_MINOR.$FREETYPE_PATCH"
1298 -- if [ "$FREETYPE_MAJOR" -eq "2" ] \
1299 -- && [ "$FREETYPE_MINOR" -ge "0" -a "$FREETYPE_PATCH" -ge "9" ] \
1300 -- || [ "$FREETYPE_MINOR" -ge "1" ]; then
1301 -- F=yes
1302 -- FREETYPE2_INCDIR=$INCDIR/freetype2
1303 -- [ "$VERBOSE" = "yes" ] && echo " Found $INC in $INCDIR"
1304 -- break
1305 -+ for INC in $INC_OLD $INC_NEW; do
1306 -+ if [ -f $INCDIR/$INC ]; then
1307 -+ # detect major version of freetype2
1308 -+ FREETYPE_MAJOR=`grep "#define FREETYPE_MAJOR" $INCDIR/$INC | head -n 1 | awk '{ print \$3 }'`
1309 -+ FREETYPE_MINOR=`grep "#define FREETYPE_MINOR" $INCDIR/$INC | head -n 1 | awk '{ print \$3 }'`
1310 -+ FREETYPE_PATCH=`grep "#define FREETYPE_PATCH" $INCDIR/$INC | head -n 1 | awk '{ print \$3 }'`
1311 -+ test -z "$FREETYPE_PATCH" && FREETYPE_PATCH="0"
1312 -+ [ "$VERBOSE" = "yes" ] && \
1313 -+ echo " Found Freetype version $FREETYPE_MAJOR.$FREETYPE_MINOR.$FREETYPE_PATCH"
1314 -+ if [ "$FREETYPE_MAJOR" -eq "2" ] \
1315 -+ && [ "$FREETYPE_MINOR" -ge "0" -a "$FREETYPE_PATCH" -ge "9" ] \
1316 -+ || [ "$FREETYPE_MINOR" -ge "1" ]; then
1317 -+ F=yes
1318 -+ FREETYPE2_INCDIR=$INCDIR/freetype2
1319 -+ [ "$VERBOSE" = "yes" ] && echo " Found $INC in $INCDIR"
1320 -+ break
1321 -+ fi
1322 - fi
1323 -- fi
1324 -+ done
1325 - done
1326 - if [ -z "$F" ]; then
1327 - XFT=no
1328
1329 diff --git a/dev-qt/qt-meta/files/qt-ulibc.patch b/dev-qt/qt-meta/files/qt-ulibc.patch
1330 deleted file mode 100644
1331 index f188778e..00000000
1332 --- a/dev-qt/qt-meta/files/qt-ulibc.patch
1333 +++ /dev/null
1334 @@ -1,13 +0,0 @@
1335 ---- qt-x11-free-3.3.4.orig/src/tools/qlocale.cpp 2005-01-21 17:16:05.000000000 +0000
1336 -+++ qt-x11-free-3.3.4/src/tools/qlocale.cpp 2005-02-18 13:36:59.000000000 +0000
1337 -@@ -55,6 +55,10 @@
1338 - # undef INFINITY
1339 - #endif
1340 -
1341 -+#if defined(Q_OS_LINUX) && defined(__UCLIBC__)
1342 -+# undef Q_OS_LINUX
1343 -+#endif
1344 -+
1345 - #ifdef Q_OS_LINUX
1346 - # include <fenv.h>
1347 - #endif
1348
1349 diff --git a/dev-qt/qt-meta/metadata.xml b/dev-qt/qt-meta/metadata.xml
1350 index b0ad13af..5f909fa7 100644
1351 --- a/dev-qt/qt-meta/metadata.xml
1352 +++ b/dev-qt/qt-meta/metadata.xml
1353 @@ -3,8 +3,6 @@
1354 <pkgmetadata>
1355 <!-- maintainer-needed -->
1356 <use>
1357 - <flag name='immqt-bc'>Enable binary compatible version of immodule for Qt</flag>
1358 - <flag name='immqt'>Enable binary incompatible version of immodule for Qt</flag>
1359 <flag name="qt3support">Enable the Qt3Support library for Qt4</flag>
1360 </use>
1361 </pkgmetadata>
1362
1363 diff --git a/dev-qt/qt-meta/qt-meta-3.3.8b-r1.ebuild b/dev-qt/qt-meta/qt-meta-3.3.8b-r1.ebuild
1364 deleted file mode 100644
1365 index a4a88766..00000000
1366 --- a/dev-qt/qt-meta/qt-meta-3.3.8b-r1.ebuild
1367 +++ /dev/null
1368 @@ -1,367 +0,0 @@
1369 -# Copyright 1999-2020 Gentoo Authors
1370 -# Distributed under the terms of the GNU General Public License v2
1371 -
1372 -# *** Please remember to update qt3.eclass when revbumping this ***
1373 -
1374 -inherit eutils flag-o-matic toolchain-funcs
1375 -
1376 -SRCTYPE="free"
1377 -DESCRIPTION="The Qt toolkit is a comprehensive C++ application development framework."
1378 -HOMEPAGE="http://qt-project.org/"
1379 -
1380 -IMMQT_P="qt-x11-immodule-unified-qt3.3.8-20070321-gentoo"
1381 -
1382 -SRC_URI="http://download.qt-project.org/archive/qt/3/qt-x11-${SRCTYPE}-${PV}.tar.gz
1383 - immqt? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )
1384 - immqt-bc? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )"
1385 -LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
1386 -
1387 -SLOT="3"
1388 -KEYWORDS="~alpha amd64 ~hppa ~mips ~ppc ~ppc64 ~sparc x86"
1389 -IUSE="cups debug doc examples firebird ipv6 mysql nas nis odbc opengl postgres sqlite xinerama immqt immqt-bc"
1390 -
1391 -RDEPEND="
1392 - virtual/jpeg
1393 - >=media-libs/freetype-2
1394 - >=media-libs/libmng-1.0.9
1395 - media-libs/libpng
1396 - sys-libs/zlib
1397 - x11-libs/libXft
1398 - x11-libs/libXcursor
1399 - x11-libs/libXi
1400 - x11-libs/libXrandr
1401 - x11-libs/libSM
1402 - cups? ( net-print/cups )
1403 - firebird? ( dev-db/firebird )
1404 - mysql? ( virtual/mysql )
1405 - nas? ( >=media-libs/nas-1.5 )
1406 - opengl? ( virtual/opengl virtual/glu )
1407 - postgres? ( dev-db/postgresql )
1408 - xinerama? ( x11-libs/libXinerama )"
1409 -DEPEND="${RDEPEND}
1410 - x11-base/xorg-proto"
1411 -PDEPEND="odbc? ( ~dev-db/qt-unixODBC-$PV )"
1412 -
1413 -S="${WORKDIR}/qt-x11-${SRCTYPE}-${PV}"
1414 -
1415 -QTBASE="/usr/qt/3"
1416 -
1417 -pkg_setup() {
1418 - if use immqt && use immqt-bc ; then
1419 - ewarn
1420 - ewarn "immqt and immqt-bc are exclusive. You cannot set both."
1421 - ewarn "Please specify either immqt or immqt-bc."
1422 - ewarn
1423 - die
1424 - elif use immqt ; then
1425 - ewarn
1426 - ewarn "You are going to compile binary imcompatible immodule for Qt. This means"
1427 - ewarn "you have to recompile everything depending on Qt after you install it."
1428 - ewarn "Be aware."
1429 - ewarn
1430 - fi
1431 -
1432 - export QTDIR="${S}"
1433 -
1434 - CXX=$(tc-getCXX)
1435 - if [[ ${CXX/g++/} != ${CXX} ]]; then
1436 - PLATCXX="g++"
1437 - elif [[ ${CXX/icpc/} != ${CXX} ]]; then
1438 - PLATCXX="icc"
1439 - else
1440 - die "Unknown compiler ${CXX}."
1441 - fi
1442 -
1443 - case ${CHOST} in
1444 - *-freebsd*|*-dragonfly*)
1445 - PLATNAME="freebsd" ;;
1446 - *-openbsd*)
1447 - PLATNAME="openbsd" ;;
1448 - *-netbsd*)
1449 - PLATNAME="netbsd" ;;
1450 - *-darwin*)
1451 - PLATNAME="darwin" ;;
1452 - *-linux-*|*-linux)
1453 - PLATNAME="linux" ;;
1454 - *)
1455 - die "Unknown CHOST, no platform choosed."
1456 - esac
1457 -
1458 - # probably this should be '*-64' for 64bit archs
1459 - # in a fully multilib environment (no compatibility symlinks)
1460 - export PLATFORM="${PLATNAME}-${PLATCXX}"
1461 -}
1462 -
1463 -src_unpack() {
1464 - unpack ${A}
1465 - cd "${S}"
1466 -
1467 - sed -i -e 's:read acceptance:acceptance=yes:' configure
1468 -
1469 - # Do not link with -rpath. See bug #75181.
1470 - find "${S}"/mkspecs -name qmake.conf | xargs \
1471 - sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:'
1472 -
1473 - # Patch for uic includehint errors (aseigo patch)
1474 - epatch "${FILESDIR}"/qt-3.3.8-uic-fix.patch
1475 -
1476 - # KDE related patches
1477 - epatch "${FILESDIR}"/0001-dnd_optimization.patch
1478 - epatch "${FILESDIR}"/0002-dnd_active_window_fix.patch
1479 - epatch "${FILESDIR}"/0038-dragobject-dont-prefer-unknown.patch
1480 - epatch "${FILESDIR}"/0044-qscrollview-windowactivate-fix.diff
1481 - epatch "${FILESDIR}"/0047-fix-kmenu-widget.diff
1482 - epatch "${FILESDIR}"/0048-qclipboard_hack_80072.patch
1483 -
1484 - # ulibc patch (bug #100246)
1485 - epatch "${FILESDIR}"/qt-ulibc.patch
1486 -
1487 - # xinerama patch: http://ktown.kde.org/~seli/xinerama/
1488 - epatch "${FILESDIR}"/qt-3.3.8-seli-xinerama.patch
1489 -
1490 - # Visibility patch, apply only on GCC 4.1 and later for safety
1491 - # [[ $(gcc-major-version)$(gcc-minor-version) -ge 41 ]] && \
1492 - epatch "${FILESDIR}"/qt-3.3.8-visibility.patch
1493 -
1494 - # Fix configure to correctly pick up gcc version, bug 244732
1495 - epatch "${FILESDIR}"/qt-3.3.8-fix-compiler-detection.patch
1496 -
1497 - # Fix CJK script rendering, bug 229567
1498 - epatch "${FILESDIR}"/qt-3.3.8b-cjk-fix.patch
1499 -
1500 - if use immqt || use immqt-bc ; then
1501 - epatch ../${IMMQT_P}.diff
1502 - sh make-symlinks.sh || die "make symlinks failed"
1503 -
1504 - epatch "${FILESDIR}"/qt-3.3.8-immqt+gcc-4.3.patch
1505 - fi
1506 -
1507 - if use mips; then
1508 - epatch "${FILESDIR}"/qt-3.3.8-mips.patch
1509 - fi
1510 -
1511 - # known working flags wrt #77623
1512 - use sparc && export CFLAGS="-O1" && export CXXFLAGS="${CFLAGS}"
1513 - # set c/xxflags and ldflags
1514 - strip-flags
1515 - append-flags -fno-strict-aliasing
1516 -
1517 - if [[ $( gcc-fullversion ) == "3.4.6" && gcc-specs-ssp ]] ; then
1518 - ewarn "Appending -fno-stack-protector to CFLAGS/CXXFLAGS"
1519 - append-flags -fno-stack-protector
1520 - fi
1521 -
1522 - sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
1523 - -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
1524 - -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
1525 - -e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \
1526 - -e "s:\<QMAKE_CXX\>.*=.*:QMAKE_CXX=$(tc-getCXX):" \
1527 - -e "s:\<QMAKE_LINK\>.*=.*:QMAKE_LINK=$(tc-getCXX):" \
1528 - -e "s:\<QMAKE_LINK_SHLIB\>.*=.*:QMAKE_LINK_SHLIB=$(tc-getCXX):" \
1529 - "${S}"/mkspecs/${PLATFORM}/qmake.conf || die
1530 -
1531 - if [ $(get_libdir) != "lib" ] ; then
1532 - sed -i -e "s:/lib$:/$(get_libdir):" \
1533 - "${S}"/mkspecs/${PLATFORM}/qmake.conf || die
1534 - fi
1535 -
1536 - sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \
1537 - -e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
1538 - "${S}"/qmake/Makefile.unix || die
1539 -}
1540 -
1541 -src_compile() {
1542 - export SYSCONF="${D}${QTBASE}"/etc/settings
1543 -
1544 - # Let's just allow writing to these directories during Qt emerge
1545 - # as it makes Qt much happier.
1546 - addwrite "${QTBASE}/etc/settings"
1547 - addwrite "${HOME}/.qt"
1548 -
1549 - [ "$(get_libdir)" != "lib" ] && myconf="${myconf} -L/usr/$(get_libdir)"
1550 -
1551 - # unixODBC support is now a PDEPEND on dev-db/qt-unixODBC; see bug 14178.
1552 - use nas && myconf+=" -system-nas-sound"
1553 - use nis && myconf+=" -nis" || myconf+=" -no-nis"
1554 - use mysql && myconf+=" -plugin-sql-mysql -I/usr/include/mysql -L/usr/$(get_libdir)/mysql" || myconf+=" -no-sql-mysql"
1555 - use postgres && myconf+=" -plugin-sql-psql -I/usr/include/postgresql/server -I/usr/include/postgresql/pgsql -I/usr/include/postgresql/pgsql/server" || myconf+=" -no-sql-psql"
1556 - use firebird && myconf+=" -plugin-sql-ibase -I/opt/firebird/include" || myconf+=" -no-sql-ibase"
1557 - use sqlite && myconf+=" -plugin-sql-sqlite" || myconf+=" -no-sql-sqlite"
1558 - use cups && myconf+=" -cups" || myconf+=" -no-cups"
1559 - use opengl && myconf+=" -enable-module=opengl" || myconf+=" -disable-opengl"
1560 - use debug && myconf+=" -debug" || myconf+=" -release -no-g++-exceptions"
1561 - use xinerama && myconf+=" -xinerama" || myconf+=" -no-xinerama"
1562 -
1563 - myconf="${myconf} -system-zlib -qt-gif"
1564 -
1565 - use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6"
1566 - use immqt-bc && myconf+=" -inputmethod"
1567 - use immqt && myconf+=" -inputmethod -inputmethod-ext"
1568 -
1569 - export YACC='byacc -d'
1570 - tc-export CC CXX
1571 - export LINK="$(tc-getCXX)"
1572 -
1573 - ./configure -sm -thread -stl -system-libjpeg -verbose -largefile \
1574 - -qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
1575 - -system-libpng -xft -platform ${PLATFORM} -xplatform \
1576 - ${PLATFORM} -xrender -prefix ${QTBASE} -libdir ${QTBASE}/$(get_libdir) \
1577 - -fast -no-sql-odbc ${myconf} -dlopen-opengl || die
1578 -
1579 - emake src-qmake src-moc sub-src || die
1580 -
1581 - export DYLD_LIBRARY_PATH="${S}/lib:/usr/X11R6/lib:${DYLD_LIBRARY_PATH}"
1582 - export LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}"
1583 -
1584 - emake sub-tools || die
1585 -
1586 - if use examples; then
1587 - emake sub-tutorial sub-examples || die
1588 - fi
1589 -
1590 - # Make the msg2qm utility (not made by default)
1591 - cd "${S}"/tools/msg2qm
1592 - ../../bin/qmake
1593 - emake
1594 -
1595 - # Make the qembed utility (not made by default)
1596 - cd "${S}"/tools/qembed
1597 - ../../bin/qmake
1598 - emake
1599 -
1600 -}
1601 -
1602 -src_install() {
1603 - # binaries
1604 - into ${QTBASE}
1605 - dobin bin/*
1606 - dobin tools/msg2qm/msg2qm
1607 - dobin tools/qembed/qembed
1608 -
1609 - # libraries
1610 - dolib.so lib/lib{editor,qassistantclient,designercore}.a
1611 - dolib.so lib/libqt-mt.la
1612 - dolib.so lib/libqt-mt.so.${PV/b} lib/libqui.so.1.0.0
1613 - cd "${D}"/${QTBASE}/$(get_libdir)
1614 -
1615 - for x in libqui.so ; do
1616 - ln -s $x.1.0.0 $x.1.0
1617 - ln -s $x.1.0 $x.1
1618 - ln -s $x.1 $x
1619 - done
1620 -
1621 - # version symlinks - 3.3.5->3.3->3->.so
1622 - ln -s libqt-mt.so.${PV/b} libqt-mt.so.3.3
1623 - ln -s libqt-mt.so.3.3 libqt-mt.so.3
1624 - ln -s libqt-mt.so.3 libqt-mt.so
1625 -
1626 - # libqt -> libqt-mt symlinks
1627 - ln -s libqt-mt.so.${PV/b} libqt.so.${PV/b}
1628 - ln -s libqt-mt.so.3.3 libqt.so.3.3
1629 - ln -s libqt-mt.so.3 libqt.so.3
1630 - ln -s libqt-mt.so libqt.so
1631 -
1632 - # plugins
1633 - cd "${S}"
1634 - local plugins=$(find plugins -name "lib*.so" -print)
1635 - for x in ${plugins}; do
1636 - exeinto ${QTBASE}/$(dirname ${x})
1637 - doexe ${x}
1638 - done
1639 -
1640 - # Past this point just needs to be done once
1641 - is_final_abi || return 0
1642 -
1643 - # includes
1644 - cd "${S}"
1645 - dodir ${QTBASE}/include/private
1646 - cp include/*\.h "${D}"/${QTBASE}/include/
1647 - cp include/private/*\.h "${D}"/${QTBASE}/include/private/
1648 -
1649 - # prl files
1650 - sed -i -e "s:${S}:${QTBASE}:g" "${S}"/lib/*.prl
1651 - insinto ${QTBASE}/$(get_libdir)
1652 - doins "${S}"/lib/*.prl
1653 -
1654 - # pkg-config file
1655 - insinto ${QTBASE}/$(get_libdir)/pkgconfig
1656 - doins "${S}"/lib/*.pc
1657 -
1658 - # List all the multilib libdirs
1659 - local libdirs
1660 - for alibdir in $(get_all_libdirs); do
1661 - libdirs="${libdirs}:${QTBASE}/${alibdir}"
1662 - done
1663 -
1664 - # environment variables
1665 - cat <<EOF > "${T}"/45qt3
1666 -PATH=${QTBASE}/bin
1667 -ROOTPATH=${QTBASE}/bin
1668 -LDPATH=${libdirs:1}
1669 -QMAKESPEC=${PLATFORM}
1670 -MANPATH=${QTBASE}/doc/man
1671 -PKG_CONFIG_PATH=${QTBASE}/$(get_libdir)/pkgconfig
1672 -EOF
1673 -
1674 - cat <<EOF > "${T}"/50qtdir3
1675 -QTDIR=${QTBASE}
1676 -EOF
1677 -
1678 - cat <<EOF > "${T}"/50-qt3-revdep
1679 -SEARCH_DIRS="${QTBASE}"
1680 -EOF
1681 -
1682 - insinto /etc/revdep-rebuild
1683 - doins "${T}"/50-qt3-revdep
1684 -
1685 - doenvd "${T}"/45qt3 "${T}"/50qtdir3
1686 -
1687 - if [ "${SYMLINK_LIB}" = "yes" ]; then
1688 - dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${QTBASE}/lib
1689 - fi
1690 -
1691 - insinto ${QTBASE}/tools/designer
1692 - doins -r tools/designer/templates
1693 -
1694 - insinto ${QTBASE}
1695 - doins -r translations
1696 -
1697 - keepdir ${QTBASE}/etc/settings
1698 -
1699 - if use doc; then
1700 - insinto ${QTBASE}
1701 - doins -r "${S}"/doc
1702 - fi
1703 -
1704 - if use examples; then
1705 - find "${S}"/examples "${S}"/tutorial -name Makefile | \
1706 - xargs sed -i -e "s:${S}:${QTBASE}:g"
1707 -
1708 - cp -r "${S}"/examples "${D}"${QTBASE}/
1709 - cp -r "${S}"/tutorial "${D}"${QTBASE}/
1710 - fi
1711 -
1712 - # misc build reqs
1713 - insinto ${QTBASE}/mkspecs
1714 - doins -r "${S}"/mkspecs/${PLATFORM}
1715 -
1716 - sed -e "s:${S}:${QTBASE}:g" \
1717 - "${S}"/.qmake.cache > "${D}"${QTBASE}/.qmake.cache
1718 -
1719 - dodoc FAQ README README-QT.TXT changes*
1720 - if use immqt || use immqt-bc ; then
1721 - dodoc "${S}"/README.immodule
1722 - fi
1723 -}
1724 -
1725 -pkg_postinst() {
1726 - echo
1727 - elog "After a rebuild of Qt, it can happen that Qt plugins (such as Qt/KDE styles,"
1728 - elog "or widgets for the Qt designer) are no longer recognized. If this situation"
1729 - elog "occurs you should recompile the packages providing these plugins,"
1730 - elog "and you should also make sure that Qt and its plugins were compiled with the"
1731 - elog "same version of GCC. Packages that may need to be rebuilt are, for instance,"
1732 - elog "kde-frameworks/kdelibs, kde-base/kdeartwork and kde-base/kdeartwork-styles."
1733 - elog "See http://doc.trolltech.com/3.3/plugins-howto.html for more infos."
1734 - echo
1735 -}
1736
1737 diff --git a/dev-qt/qt-meta/qt-meta-3.3.8b-r2.ebuild b/dev-qt/qt-meta/qt-meta-3.3.8b-r2.ebuild
1738 deleted file mode 100644
1739 index 701110f5..00000000
1740 --- a/dev-qt/qt-meta/qt-meta-3.3.8b-r2.ebuild
1741 +++ /dev/null
1742 @@ -1,375 +0,0 @@
1743 -# Copyright 1999-2020 Gentoo Authors
1744 -# Distributed under the terms of the GNU General Public License v2
1745 -
1746 -# *** Please remember to update qt3.eclass when revbumping this ***
1747 -
1748 -inherit eutils flag-o-matic toolchain-funcs
1749 -
1750 -SRCTYPE="free"
1751 -DESCRIPTION="The Qt toolkit is a comprehensive C++ application development framework."
1752 -HOMEPAGE="http://qt-project.org/"
1753 -
1754 -IMMQT_P="qt-x11-immodule-unified-qt3.3.8-20070321-gentoo"
1755 -
1756 -SRC_URI="http://download.qt-project.org/archive/qt/3/qt-x11-${SRCTYPE}-${PV}.tar.gz
1757 - immqt? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )
1758 - immqt-bc? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )"
1759 -LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
1760 -
1761 -SLOT="3"
1762 -KEYWORDS="~alpha amd64 ~hppa ~mips ~ppc ~ppc64 ~sparc x86"
1763 -IUSE="cups debug doc examples firebird ipv6 mysql nas nis odbc opengl postgres sqlite xinerama immqt immqt-bc"
1764 -
1765 -RDEPEND="
1766 - virtual/jpeg
1767 - >=media-libs/freetype-2
1768 - >=media-libs/libmng-1.0.9
1769 - media-libs/libpng
1770 - sys-libs/zlib
1771 - x11-libs/libXft
1772 - x11-libs/libXcursor
1773 - x11-libs/libXi
1774 - x11-libs/libXrandr
1775 - x11-libs/libSM
1776 - cups? ( net-print/cups )
1777 - firebird? ( dev-db/firebird )
1778 - mysql? ( virtual/mysql )
1779 - nas? ( >=media-libs/nas-1.5 )
1780 - opengl? ( virtual/opengl virtual/glu )
1781 - postgres? ( dev-db/postgresql )
1782 - xinerama? ( x11-libs/libXinerama )"
1783 -DEPEND="${RDEPEND}
1784 - x11-base/xorg-proto"
1785 -PDEPEND="odbc? ( ~dev-db/qt-unixODBC-$PV )"
1786 -
1787 -S="${WORKDIR}/qt-x11-${SRCTYPE}-${PV}"
1788 -
1789 -QTBASE="/usr/qt/3"
1790 -
1791 -pkg_setup() {
1792 - if use immqt && use immqt-bc ; then
1793 - ewarn
1794 - ewarn "immqt and immqt-bc are exclusive. You cannot set both."
1795 - ewarn "Please specify either immqt or immqt-bc."
1796 - ewarn
1797 - die
1798 - elif use immqt ; then
1799 - ewarn
1800 - ewarn "You are going to compile binary imcompatible immodule for Qt. This means"
1801 - ewarn "you have to recompile everything depending on Qt after you install it."
1802 - ewarn "Be aware."
1803 - ewarn
1804 - fi
1805 -
1806 - export QTDIR="${S}"
1807 -
1808 - CXX=$(tc-getCXX)
1809 - if [[ ${CXX/g++/} != ${CXX} ]]; then
1810 - PLATCXX="g++"
1811 - elif [[ ${CXX/icpc/} != ${CXX} ]]; then
1812 - PLATCXX="icc"
1813 - else
1814 - die "Unknown compiler ${CXX}."
1815 - fi
1816 -
1817 - case ${CHOST} in
1818 - *-freebsd*|*-dragonfly*)
1819 - PLATNAME="freebsd" ;;
1820 - *-openbsd*)
1821 - PLATNAME="openbsd" ;;
1822 - *-netbsd*)
1823 - PLATNAME="netbsd" ;;
1824 - *-darwin*)
1825 - PLATNAME="darwin" ;;
1826 - *-linux-*|*-linux)
1827 - PLATNAME="linux" ;;
1828 - *)
1829 - die "Unknown CHOST, no platform choosed."
1830 - esac
1831 -
1832 - # probably this should be '*-64' for 64bit archs
1833 - # in a fully multilib environment (no compatibility symlinks)
1834 - export PLATFORM="${PLATNAME}-${PLATCXX}"
1835 -}
1836 -
1837 -src_unpack() {
1838 - unpack ${A}
1839 - cd "${S}"
1840 -
1841 - sed -i -e 's:read acceptance:acceptance=yes:' configure
1842 -
1843 - # Do not link with -rpath. See bug #75181.
1844 - find "${S}"/mkspecs -name qmake.conf | xargs \
1845 - sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:'
1846 -
1847 - # Patch for uic includehint errors (aseigo patch)
1848 - epatch "${FILESDIR}"/qt-3.3.8-uic-fix.patch
1849 -
1850 - # KDE related patches
1851 - epatch "${FILESDIR}"/0001-dnd_optimization.patch \
1852 - "${FILESDIR}"/0002-dnd_active_window_fix.patch \
1853 - "${FILESDIR}"/0038-dragobject-dont-prefer-unknown.patch \
1854 - "${FILESDIR}"/0044-qscrollview-windowactivate-fix.diff \
1855 - "${FILESDIR}"/0047-fix-kmenu-widget.diff \
1856 - "${FILESDIR}"/0048-qclipboard_hack_80072.patch
1857 -
1858 - # ulibc patch (bug #100246)
1859 - epatch "${FILESDIR}"/qt-ulibc.patch
1860 -
1861 - # xinerama patch: http://ktown.kde.org/~seli/xinerama/
1862 - epatch "${FILESDIR}"/qt-3.3.8-seli-xinerama.patch
1863 -
1864 - # Visibility patch, apply only on GCC 4.1 and later for safety
1865 - # [[ $(gcc-major-version)$(gcc-minor-version) -ge 41 ]] && \
1866 - epatch "${FILESDIR}"/qt-3.3.8-visibility.patch
1867 -
1868 - # Fix configure to correctly pick up gcc version, bug 244732
1869 - epatch "${FILESDIR}"/qt-3.3.8-fix-compiler-detection.patch
1870 -
1871 - # Fix CJK script rendering, bug 229567
1872 - epatch "${FILESDIR}"/qt-3.3.8b-cjk-fix.patch
1873 -
1874 - # cstddef contains ptrdiff_t prototype (for >=gcc-4.6)
1875 - epatch "${FILESDIR}"/qt-3.3.8b-cstddef.patch
1876 -
1877 - # Fix libpng-1.5 issues
1878 - epatch "${FILESDIR}"/qt-3.3.8-libpng15.patch
1879 -
1880 - # Fix detection of >=freetype-2.5.1
1881 - epatch "${FILESDIR}"/qt-3.3.8b-freetype251.patch
1882 -
1883 - if use immqt || use immqt-bc ; then
1884 - epatch ../${IMMQT_P}.diff
1885 - sh make-symlinks.sh || die "make symlinks failed"
1886 -
1887 - epatch "${FILESDIR}"/qt-3.3.8-immqt+gcc-4.3.patch
1888 - fi
1889 -
1890 - if use mips; then
1891 - epatch "${FILESDIR}"/qt-3.3.8-mips.patch
1892 - fi
1893 -
1894 - # known working flags wrt #77623
1895 - use sparc && export CFLAGS="-O1" && export CXXFLAGS="${CFLAGS}"
1896 - # set c/xxflags and ldflags
1897 - strip-flags
1898 - append-flags -fno-strict-aliasing
1899 -
1900 - if [[ $( gcc-fullversion ) == "3.4.6" && gcc-specs-ssp ]] ; then
1901 - ewarn "Appending -fno-stack-protector to CFLAGS/CXXFLAGS"
1902 - append-flags -fno-stack-protector
1903 - fi
1904 -
1905 - sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
1906 - -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
1907 - -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
1908 - -e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \
1909 - -e "s:\<QMAKE_CXX\>.*=.*:QMAKE_CXX=$(tc-getCXX):" \
1910 - -e "s:\<QMAKE_LINK\>.*=.*:QMAKE_LINK=$(tc-getCXX):" \
1911 - -e "s:\<QMAKE_LINK_SHLIB\>.*=.*:QMAKE_LINK_SHLIB=$(tc-getCXX):" \
1912 - "${S}"/mkspecs/${PLATFORM}/qmake.conf || die
1913 -
1914 - if [ $(get_libdir) != "lib" ] ; then
1915 - sed -i -e "s:/lib$:/$(get_libdir):" \
1916 - "${S}"/mkspecs/${PLATFORM}/qmake.conf || die
1917 - fi
1918 -
1919 - sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \
1920 - -e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
1921 - "${S}"/qmake/Makefile.unix || die
1922 -}
1923 -
1924 -src_compile() {
1925 - export SYSCONF="${D}${QTBASE}"/etc/settings
1926 -
1927 - # Let's just allow writing to these directories during Qt emerge
1928 - # as it makes Qt much happier.
1929 - addwrite "${QTBASE}/etc/settings"
1930 - addwrite "${HOME}/.qt"
1931 -
1932 - [ "$(get_libdir)" != "lib" ] && myconf="${myconf} -L/usr/$(get_libdir)"
1933 -
1934 - # unixODBC support is now a PDEPEND on dev-db/qt-unixODBC; see bug 14178.
1935 - use nas && myconf+=" -system-nas-sound"
1936 - use nis && myconf+=" -nis" || myconf+=" -no-nis"
1937 - use mysql && myconf+=" -plugin-sql-mysql -I/usr/include/mysql -L/usr/$(get_libdir)/mysql" || myconf+=" -no-sql-mysql"
1938 - use postgres && myconf+=" -plugin-sql-psql -I/usr/include/postgresql/server -I/usr/include/postgresql/pgsql -I/usr/include/postgresql/pgsql/server" || myconf+=" -no-sql-psql"
1939 - use firebird && myconf+=" -plugin-sql-ibase -I/opt/firebird/include" || myconf+=" -no-sql-ibase"
1940 - use sqlite && myconf+=" -plugin-sql-sqlite" || myconf+=" -no-sql-sqlite"
1941 - use cups && myconf+=" -cups" || myconf+=" -no-cups"
1942 - use opengl && myconf+=" -enable-module=opengl" || myconf+=" -disable-opengl"
1943 - use debug && myconf+=" -debug" || myconf+=" -release -no-g++-exceptions"
1944 - use xinerama && myconf+=" -xinerama" || myconf+=" -no-xinerama"
1945 -
1946 - myconf="${myconf} -system-zlib -qt-gif"
1947 -
1948 - use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6"
1949 - use immqt-bc && myconf+=" -inputmethod"
1950 - use immqt && myconf+=" -inputmethod -inputmethod-ext"
1951 -
1952 - export YACC='byacc -d'
1953 - tc-export CC CXX
1954 - export LINK="$(tc-getCXX)"
1955 -
1956 - ./configure -sm -thread -stl -system-libjpeg -verbose -largefile \
1957 - -qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
1958 - -system-libpng -xft -platform ${PLATFORM} -xplatform \
1959 - ${PLATFORM} -xrender -prefix ${QTBASE} -libdir ${QTBASE}/$(get_libdir) \
1960 - -fast -no-sql-odbc ${myconf} -dlopen-opengl || die
1961 -
1962 - emake src-qmake src-moc sub-src || die
1963 -
1964 - export DYLD_LIBRARY_PATH="${S}/lib:/usr/X11R6/lib:${DYLD_LIBRARY_PATH}"
1965 - export LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}"
1966 -
1967 - emake sub-tools || die
1968 -
1969 - if use examples; then
1970 - emake sub-tutorial sub-examples || die
1971 - fi
1972 -
1973 - # Make the msg2qm utility (not made by default)
1974 - cd "${S}"/tools/msg2qm
1975 - ../../bin/qmake
1976 - emake
1977 -
1978 - # Make the qembed utility (not made by default)
1979 - cd "${S}"/tools/qembed
1980 - ../../bin/qmake
1981 - emake
1982 -
1983 -}
1984 -
1985 -src_install() {
1986 - # binaries
1987 - into ${QTBASE}
1988 - dobin bin/*
1989 - dobin tools/msg2qm/msg2qm
1990 - dobin tools/qembed/qembed
1991 -
1992 - # libraries
1993 - dolib.so lib/lib{editor,qassistantclient,designercore}.a
1994 - dolib.so lib/libqt-mt.la
1995 - dolib.so lib/libqt-mt.so.${PV/b} lib/libqui.so.1.0.0
1996 - cd "${D}"/${QTBASE}/$(get_libdir)
1997 -
1998 - for x in libqui.so ; do
1999 - ln -s $x.1.0.0 $x.1.0
2000 - ln -s $x.1.0 $x.1
2001 - ln -s $x.1 $x
2002 - done
2003 -
2004 - # version symlinks - 3.3.5->3.3->3->.so
2005 - ln -s libqt-mt.so.${PV/b} libqt-mt.so.3.3
2006 - ln -s libqt-mt.so.3.3 libqt-mt.so.3
2007 - ln -s libqt-mt.so.3 libqt-mt.so
2008 -
2009 - # libqt -> libqt-mt symlinks
2010 - ln -s libqt-mt.so.${PV/b} libqt.so.${PV/b}
2011 - ln -s libqt-mt.so.3.3 libqt.so.3.3
2012 - ln -s libqt-mt.so.3 libqt.so.3
2013 - ln -s libqt-mt.so libqt.so
2014 -
2015 - # plugins
2016 - cd "${S}"
2017 - local plugins=$(find plugins -name "lib*.so" -print)
2018 - for x in ${plugins}; do
2019 - exeinto ${QTBASE}/$(dirname ${x})
2020 - doexe ${x}
2021 - done
2022 -
2023 - # Past this point just needs to be done once
2024 - is_final_abi || return 0
2025 -
2026 - # includes
2027 - cd "${S}"
2028 - dodir ${QTBASE}/include/private
2029 - cp include/*\.h "${D}"/${QTBASE}/include/
2030 - cp include/private/*\.h "${D}"/${QTBASE}/include/private/
2031 -
2032 - # prl files
2033 - sed -i -e "s:${S}:${QTBASE}:g" "${S}"/lib/*.prl
2034 - insinto ${QTBASE}/$(get_libdir)
2035 - doins "${S}"/lib/*.prl
2036 -
2037 - # pkg-config file
2038 - insinto /usr/$(get_libdir)/pkgconfig
2039 - doins "${S}"/lib/*.pc
2040 -
2041 - # List all the multilib libdirs
2042 - local libdirs
2043 - for alibdir in $(get_all_libdirs); do
2044 - libdirs="${libdirs}:${QTBASE}/${alibdir}"
2045 - done
2046 -
2047 - # environment variables
2048 - cat <<EOF > "${T}"/45qt3
2049 -PATH=${QTBASE}/bin
2050 -ROOTPATH=${QTBASE}/bin
2051 -LDPATH=${libdirs:1}
2052 -QMAKESPEC=${PLATFORM}
2053 -MANPATH=${QTBASE}/doc/man
2054 -EOF
2055 -
2056 - cat <<EOF > "${T}"/50qtdir3
2057 -QTDIR=${QTBASE}
2058 -EOF
2059 -
2060 - cat <<EOF > "${T}"/50-qt3-revdep
2061 -SEARCH_DIRS="${QTBASE}"
2062 -EOF
2063 -
2064 - insinto /etc/revdep-rebuild
2065 - doins "${T}"/50-qt3-revdep
2066 -
2067 - doenvd "${T}"/45qt3 "${T}"/50qtdir3
2068 -
2069 - if [ "${SYMLINK_LIB}" = "yes" ]; then
2070 - dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${QTBASE}/lib
2071 - fi
2072 -
2073 - insinto ${QTBASE}/tools/designer
2074 - doins -r tools/designer/templates
2075 -
2076 - insinto ${QTBASE}
2077 - doins -r translations
2078 -
2079 - keepdir ${QTBASE}/etc/settings
2080 -
2081 - if use doc; then
2082 - insinto ${QTBASE}
2083 - doins -r "${S}"/doc
2084 - fi
2085 -
2086 - if use examples; then
2087 - find "${S}"/examples "${S}"/tutorial -name Makefile | \
2088 - xargs sed -i -e "s:${S}:${QTBASE}:g"
2089 -
2090 - cp -r "${S}"/examples "${D}"${QTBASE}/
2091 - cp -r "${S}"/tutorial "${D}"${QTBASE}/
2092 - fi
2093 -
2094 - # misc build reqs
2095 - insinto ${QTBASE}/mkspecs
2096 - doins -r "${S}"/mkspecs/${PLATFORM}
2097 -
2098 - sed -e "s:${S}:${QTBASE}:g" \
2099 - "${S}"/.qmake.cache > "${D}"${QTBASE}/.qmake.cache
2100 -
2101 - dodoc FAQ README README-QT.TXT changes*
2102 - if use immqt || use immqt-bc ; then
2103 - dodoc "${S}"/README.immodule
2104 - fi
2105 -}
2106 -
2107 -pkg_postinst() {
2108 - echo
2109 - elog "After a rebuild of Qt, it can happen that Qt plugins (such as Qt/KDE styles,"
2110 - elog "or widgets for the Qt designer) are no longer recognized. If this situation"
2111 - elog "occurs you should recompile the packages providing these plugins,"
2112 - elog "and you should also make sure that Qt and its plugins were compiled with the"
2113 - elog "same version of GCC. Packages that may need to be rebuilt are, for instance,"
2114 - elog "kde-frameworks/kdelibs, kde-base/kdeartwork and kde-base/kdeartwork-styles."
2115 - elog "See http://doc.trolltech.com/3.3/plugins-howto.html for more infos."
2116 - echo
2117 -}