From 14dfc7ec02c0f331342d8becac217b781b5feadf Mon Sep 17 00:00:00 2001 From: Francois Andriot Date: Mon, 13 Feb 2012 22:56:37 +0100 Subject: [PATCH] [RHEL/Fedora] add TQT3 for future R14 --- redhat/tqt3/0084-compositing-properties.patch | 80 +++ redhat/tqt3/assistant3.desktop | 9 + redhat/tqt3/designer3.desktop | 11 + redhat/tqt3/linguist3.desktop | 10 + redhat/tqt3/qt-3.1.0-makefile.patch | 1 + redhat/tqt3/qt-3.3.4-print-CJK.patch | 1 + .../qt-3.3.6-fontrendering-gu-228452.patch | 1 + .../qt-3.3.6-fontrendering-ml_IN-209974.patch | 1 + .../qt-3.3.6-fontrendering-te_IN-211259.patch | 1 + .../qt-3.3.8-fontrendering-as_IN-209972.patch | 1 + .../tqt3/qt-x11-free-3.3.4-fullscreen.patch | 1 + .../qt-x11-free-3.3.6-qfontdatabase_x11.patch | 1 + redhat/tqt3/qt-x11-free-3.3.6-strip.patch | 1 + redhat/tqt3/qt-x11-free-3.3.7-arm.patch | 1 + redhat/tqt3/qt-x11-free-3.3.8b-typo.patch | 1 + ...odule-unified-qt3.3.5-20051012-quiet.patch | 134 ++++ ...immodule-unified-qt3.3.8-20071116.diff.bz2 | Bin 0 -> 99943 bytes redhat/tqt3/qt.csh | 34 + redhat/tqt3/qt.sh | 32 + ...3-3.3.8.d-updates_zh-tw_translations.patch | 1 + redhat/tqt3/qtconfig3.desktop | 9 + redhat/tqt3/tqt3-3.4.0-embed.patch | 10 + .../tqt3-3.4.0-fontrendering-#214570.patch | 23 + .../tqt3-3.4.0-fontrendering-214371.patch | 15 + ...qt3-3.4.0-fontrendering-ml_IN-209097.patch | 60 ++ ...qt3-3.4.0-fontrendering-ml_IN-217657.patch | 11 + redhat/tqt3/tqt3-3.4.0-nodebug.patch | 15 + redhat/tqt3/tqt3-3.4.0-odbc.patch | 18 + ...d-qt3.3.5-20060318-resetinputcontext.patch | 92 +++ redhat/tqt3/tqt3-3.4.0-quiet.patch | 13 + redhat/tqt3/tqt3-3.4.0-uic-nostdlib.patch | 12 + redhat/tqt3/tqt3-3.4.0-umask.patch | 14 + redhat/tqt3/tqt3-3.4.0.spec | 678 ++++++++++++++++++ 33 files changed, 1292 insertions(+) create mode 100644 redhat/tqt3/0084-compositing-properties.patch create mode 100644 redhat/tqt3/assistant3.desktop create mode 100644 redhat/tqt3/designer3.desktop create mode 100644 redhat/tqt3/linguist3.desktop create mode 120000 redhat/tqt3/qt-3.1.0-makefile.patch create mode 120000 redhat/tqt3/qt-3.3.4-print-CJK.patch create mode 120000 redhat/tqt3/qt-3.3.6-fontrendering-gu-228452.patch create mode 120000 redhat/tqt3/qt-3.3.6-fontrendering-ml_IN-209974.patch create mode 120000 redhat/tqt3/qt-3.3.6-fontrendering-te_IN-211259.patch create mode 120000 redhat/tqt3/qt-3.3.8-fontrendering-as_IN-209972.patch create mode 120000 redhat/tqt3/qt-x11-free-3.3.4-fullscreen.patch create mode 120000 redhat/tqt3/qt-x11-free-3.3.6-qfontdatabase_x11.patch create mode 120000 redhat/tqt3/qt-x11-free-3.3.6-strip.patch create mode 120000 redhat/tqt3/qt-x11-free-3.3.7-arm.patch create mode 120000 redhat/tqt3/qt-x11-free-3.3.8b-typo.patch create mode 100644 redhat/tqt3/qt-x11-immodule-unified-qt3.3.5-20051012-quiet.patch create mode 100644 redhat/tqt3/qt-x11-immodule-unified-qt3.3.8-20071116.diff.bz2 create mode 100755 redhat/tqt3/qt.csh create mode 100755 redhat/tqt3/qt.sh create mode 120000 redhat/tqt3/qt3-3.3.8.d-updates_zh-tw_translations.patch create mode 100644 redhat/tqt3/qtconfig3.desktop create mode 100644 redhat/tqt3/tqt3-3.4.0-embed.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-fontrendering-#214570.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-fontrendering-214371.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-209097.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-217657.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-nodebug.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-odbc.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-qt-x11-immodule-unified-qt3.3.5-20060318-resetinputcontext.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-quiet.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-uic-nostdlib.patch create mode 100644 redhat/tqt3/tqt3-3.4.0-umask.patch create mode 100644 redhat/tqt3/tqt3-3.4.0.spec diff --git a/redhat/tqt3/0084-compositing-properties.patch b/redhat/tqt3/0084-compositing-properties.patch new file mode 100644 index 000000000..368b6c267 --- /dev/null +++ b/redhat/tqt3/0084-compositing-properties.patch @@ -0,0 +1,80 @@ +qt-bugs@ issue : none +bugs.kde.org number : none +applied: no +author: Lubos Lunak + +This patch makes override-redirect windows (popup menu, dropdown menu, +tooltip, combobox, etc.) also have more window properties like WM_CLASS, +so they can be used when compositing. + +--- src/kernel/qwidget_x11.cpp.sav 2007-06-25 10:36:42.000000000 +0200 ++++ src/kernel/qwidget_x11.cpp 2007-10-02 15:30:13.000000000 +0200 +@@ -557,7 +557,10 @@ void QWidget::create( WId window, bool i + wsa.save_under = True; + XChangeWindowAttributes( dpy, id, CWOverrideRedirect | CWSaveUnder, + &wsa ); +- x11SetWindowType(); ++ XClassHint class_hint; ++ class_hint.res_name = (char *) qAppName(); // application name ++ class_hint.res_class = (char *) qAppClass(); // application class ++ XSetClassHint( dpy, id, &class_hint ); + } else if ( topLevel && !desktop ) { // top-level widget + QWidget *p = parentWidget(); // real parent + if (p) +@@ -620,8 +623,6 @@ void QWidget::create( WId window, bool i + else + XDeleteProperty(dpy, id, qt_xa_motif_wm_hints); + +- x11SetWindowType(); +- + // set _NET_WM_WINDOW_STATE + if (curr_winstate > 0) + XChangeProperty(dpy, id, qt_net_wm_state, XA_ATOM, 32, PropModeReplace, +@@ -629,11 +630,6 @@ void QWidget::create( WId window, bool i + else + XDeleteProperty(dpy, id, qt_net_wm_state); + +- // set _NET_WM_PID +- long curr_pid = getpid(); +- XChangeProperty(dpy, id, qt_net_wm_pid, XA_CARDINAL, 32, PropModeReplace, +- (unsigned char *) &curr_pid, 1); +- + #ifndef QT_NO_XSYNC + // set _NET_WM_SYNC_COUNTER + createSyncCounter(); +@@ -645,19 +641,31 @@ void QWidget::create( WId window, bool i + // when we create a toplevel widget, the frame strut should be dirty + fstrut_dirty = 1; + ++ } else { ++ // non-toplevel widgets don't have a frame, so no need to ++ // update the strut ++ fstrut_dirty = 0; ++ } ++ ++ if (initializeWindow && (popup || (topLevel && !desktop))) { // properties set on all toplevel windows ++ x11SetWindowType(); ++ ++ // set _NET_WM_PID ++ long curr_pid = getpid(); ++ XChangeProperty(dpy, id, qt_net_wm_pid, XA_CARDINAL, 32, PropModeReplace, ++ (unsigned char *) &curr_pid, 1); ++ + // declare the widget's object name as window role + XChangeProperty( dpy, id, + qt_window_role, XA_STRING, 8, PropModeReplace, + (unsigned char *)name(), qstrlen( name() ) ); + + // set client leader property ++ if ( !qt_x11_wm_client_leader ) ++ qt_x11_create_wm_client_leader(); + XChangeProperty( dpy, id, qt_wm_client_leader, + XA_WINDOW, 32, PropModeReplace, + (unsigned char *)&qt_x11_wm_client_leader, 1 ); +- } else { +- // non-toplevel widgets don't have a frame, so no need to +- // update the strut +- fstrut_dirty = 0; + } + + if ( initializeWindow ) { diff --git a/redhat/tqt3/assistant3.desktop b/redhat/tqt3/assistant3.desktop new file mode 100644 index 000000000..49e718c5d --- /dev/null +++ b/redhat/tqt3/assistant3.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Qt3 Assistant +Comment=Add translations to Qt3 applications +Exec=assistant +Icon=assistant3 +Terminal=false +Encoding=UTF-8 +Type=Application +Categories=Qt;Development; diff --git a/redhat/tqt3/designer3.desktop b/redhat/tqt3/designer3.desktop new file mode 100644 index 000000000..23f1f549a --- /dev/null +++ b/redhat/tqt3/designer3.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Qt3 Designer +GenericName=Interface Designer +Comment=Design GUIs for Qt3 applications +Exec=designer +Icon=designer3 +MimeType=application/x-designer; +Terminal=false +Encoding=UTF-8 +Type=Application +Categories=Qt;Development; diff --git a/redhat/tqt3/linguist3.desktop b/redhat/tqt3/linguist3.desktop new file mode 100644 index 000000000..c6fce02c8 --- /dev/null +++ b/redhat/tqt3/linguist3.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name=Qt3 Linguist +Comment=Add translations to Qt3 applications +Exec=linguist +Icon=linguist3 +MimeType=application/x-linguist; +Terminal=false +Encoding=UTF-8 +Type=Application +Categories=Qt;Development; diff --git a/redhat/tqt3/qt-3.1.0-makefile.patch b/redhat/tqt3/qt-3.1.0-makefile.patch new file mode 120000 index 000000000..7d8ae65a2 --- /dev/null +++ b/redhat/tqt3/qt-3.1.0-makefile.patch @@ -0,0 +1 @@ +../qt3/qt-3.1.0-makefile.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-3.3.4-print-CJK.patch b/redhat/tqt3/qt-3.3.4-print-CJK.patch new file mode 120000 index 000000000..99cdc6e1d --- /dev/null +++ b/redhat/tqt3/qt-3.3.4-print-CJK.patch @@ -0,0 +1 @@ +../qt3/qt-3.3.4-print-CJK.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-3.3.6-fontrendering-gu-228452.patch b/redhat/tqt3/qt-3.3.6-fontrendering-gu-228452.patch new file mode 120000 index 000000000..b015af122 --- /dev/null +++ b/redhat/tqt3/qt-3.3.6-fontrendering-gu-228452.patch @@ -0,0 +1 @@ +../qt3/qt-3.3.6-fontrendering-gu-228452.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-3.3.6-fontrendering-ml_IN-209974.patch b/redhat/tqt3/qt-3.3.6-fontrendering-ml_IN-209974.patch new file mode 120000 index 000000000..388a5cbe5 --- /dev/null +++ b/redhat/tqt3/qt-3.3.6-fontrendering-ml_IN-209974.patch @@ -0,0 +1 @@ +../qt3/qt-3.3.6-fontrendering-ml_IN-209974.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-3.3.6-fontrendering-te_IN-211259.patch b/redhat/tqt3/qt-3.3.6-fontrendering-te_IN-211259.patch new file mode 120000 index 000000000..93c6ba3d8 --- /dev/null +++ b/redhat/tqt3/qt-3.3.6-fontrendering-te_IN-211259.patch @@ -0,0 +1 @@ +../qt3/qt-3.3.6-fontrendering-te_IN-211259.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-3.3.8-fontrendering-as_IN-209972.patch b/redhat/tqt3/qt-3.3.8-fontrendering-as_IN-209972.patch new file mode 120000 index 000000000..4ded8f792 --- /dev/null +++ b/redhat/tqt3/qt-3.3.8-fontrendering-as_IN-209972.patch @@ -0,0 +1 @@ +../qt3/qt-3.3.8-fontrendering-as_IN-209972.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-x11-free-3.3.4-fullscreen.patch b/redhat/tqt3/qt-x11-free-3.3.4-fullscreen.patch new file mode 120000 index 000000000..09d41d4b3 --- /dev/null +++ b/redhat/tqt3/qt-x11-free-3.3.4-fullscreen.patch @@ -0,0 +1 @@ +../qt3/qt-x11-free-3.3.4-fullscreen.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-x11-free-3.3.6-qfontdatabase_x11.patch b/redhat/tqt3/qt-x11-free-3.3.6-qfontdatabase_x11.patch new file mode 120000 index 000000000..f8342f9f9 --- /dev/null +++ b/redhat/tqt3/qt-x11-free-3.3.6-qfontdatabase_x11.patch @@ -0,0 +1 @@ +../qt3/qt-x11-free-3.3.6-qfontdatabase_x11.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-x11-free-3.3.6-strip.patch b/redhat/tqt3/qt-x11-free-3.3.6-strip.patch new file mode 120000 index 000000000..7121216bc --- /dev/null +++ b/redhat/tqt3/qt-x11-free-3.3.6-strip.patch @@ -0,0 +1 @@ +../qt3/qt-x11-free-3.3.6-strip.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-x11-free-3.3.7-arm.patch b/redhat/tqt3/qt-x11-free-3.3.7-arm.patch new file mode 120000 index 000000000..b7682272a --- /dev/null +++ b/redhat/tqt3/qt-x11-free-3.3.7-arm.patch @@ -0,0 +1 @@ +../qt3/qt-x11-free-3.3.7-arm.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-x11-free-3.3.8b-typo.patch b/redhat/tqt3/qt-x11-free-3.3.8b-typo.patch new file mode 120000 index 000000000..4e2537345 --- /dev/null +++ b/redhat/tqt3/qt-x11-free-3.3.8b-typo.patch @@ -0,0 +1 @@ +../qt3/qt-x11-free-3.3.8b-typo.patch \ No newline at end of file diff --git a/redhat/tqt3/qt-x11-immodule-unified-qt3.3.5-20051012-quiet.patch b/redhat/tqt3/qt-x11-immodule-unified-qt3.3.5-20051012-quiet.patch new file mode 100644 index 000000000..5e5d9773a --- /dev/null +++ b/redhat/tqt3/qt-x11-immodule-unified-qt3.3.5-20051012-quiet.patch @@ -0,0 +1,134 @@ +diff -Nur qt-x11-free-3.3.5.orig/plugins/src/inputmethods/imsw-multi/qmultiinputcontext.cpp qt-x11-free-3.3.5/plugins/src/inputmethods/imsw-multi/qmultiinputcontext.cpp +--- qt-x11-free-3.3.5.orig/plugins/src/inputmethods/imsw-multi/qmultiinputcontext.cpp 2005-10-13 16:09:36.000000000 +0200 ++++ qt-x11-free-3.3.5/plugins/src/inputmethods/imsw-multi/qmultiinputcontext.cpp 2005-10-13 16:09:31.000000000 +0200 +@@ -306,8 +306,8 @@ + + currentIMKey = key; + +- qDebug( "QMultiInputContext::changeInputMethod(): index=%d, slave=%s", +- imIndex, (const char *)_slave->identifierName() ); ++ /* qDebug( "QMultiInputContext::changeInputMethod(): index=%d, slave=%s", ++ imIndex, (const char *)_slave->identifierName() ); */ + } + } + +diff -Nur qt-x11-free-3.3.5.orig/plugins/src/inputmethods/simple/qsimpleinputcontext.cpp qt-x11-free-3.3.5/plugins/src/inputmethods/simple/qsimpleinputcontext.cpp +--- qt-x11-free-3.3.5.orig/plugins/src/inputmethods/simple/qsimpleinputcontext.cpp 2005-10-13 16:09:36.000000000 +0200 ++++ qt-x11-free-3.3.5/plugins/src/inputmethods/simple/qsimpleinputcontext.cpp 2005-10-13 16:09:31.000000000 +0200 +@@ -140,7 +140,7 @@ + // only one character. See description of + // QInputContext::filterEvent() about key compression. + val = text[0].unicode(); +- qDebug( "str = %s", (const char*)keyevent->text().local8Bit() ); ++ // qDebug( "str = %s", (const char*)keyevent->text().local8Bit() ); + } + + // Store value +@@ -164,14 +164,14 @@ + + void QSimpleInputContext::setFocus() + { +- qDebug( "QSimpleInputContext: %p->setFocus(), focusWidget()=%p", +- this, focusWidget() ); ++ /* qDebug( "QSimpleInputContext: %p->setFocus(), focusWidget()=%p", ++ this, focusWidget() ); */ + } + + void QSimpleInputContext::unsetFocus() + { +- qDebug( "QSimpleInputContext: %p->unsetFocus(), focusWidget()=%p", +- this, focusWidget() ); ++ /* qDebug( "QSimpleInputContext: %p->unsetFocus(), focusWidget()=%p", ++ this, focusWidget() ); */ + reset(); + } + +@@ -188,8 +188,8 @@ + case QEvent::MouseButtonRelease: + case QEvent::MouseButtonDblClick: + case QEvent::MouseMove: +- qDebug( "QSimpleInputContext::mouseHandler: " +- "x=%d, type=%d, button=%d, state=%d", x, type, button, state ); ++ /* qDebug( "QSimpleInputContext::mouseHandler: " ++ "x=%d, type=%d, button=%d, state=%d", x, type, button, state ); */ + break; + default: + break; +@@ -240,7 +240,7 @@ + + // no entries were found + if ( p == composeTable->data + composeTable->size ) { +- qDebug( "no match" ); ++ // qDebug( "no match" ); + clearComposeBuffer(); + return FALSE; + } +@@ -250,18 +250,18 @@ + + // check if partial match + if ( composeBuffer[i] == 0 && p->keys[i] ) { +- qDebug("partial match"); ++ // qDebug("partial match"); + return TRUE; + } + + if ( composeBuffer[i] != p->keys[i] ) { +- qDebug("different entry"); ++ // qDebug("different entry"); + clearComposeBuffer(); + return i!=0; + } + } + +- qDebug("match exactly"); ++ // qDebug("match exactly"); + + // match exactly + commitChar( p->value ); +diff -Nur qt-x11-free-3.3.5.orig/src/kernel/qinputcontext.cpp qt-x11-free-3.3.5/src/kernel/qinputcontext.cpp +--- qt-x11-free-3.3.5.orig/src/kernel/qinputcontext.cpp 2005-10-13 16:09:37.000000000 +0200 ++++ qt-x11-free-3.3.5/src/kernel/qinputcontext.cpp 2005-10-13 16:09:31.000000000 +0200 +@@ -526,17 +526,17 @@ + return; + + if ( type == QEvent::IMStart ) { +- qDebug( "sending IMStart with %d chars to %p", +- text.length(), receiver ); ++ /* qDebug( "sending IMStart with %d chars to %p", ++ text.length(), receiver ); */ + event = new QIMEvent( type, text, cursorPosition ); + } else if ( type == QEvent::IMEnd ) { +- qDebug( "sending IMEnd with %d chars to %p, text=%s", +- text.length(), receiver, (const char*)text.local8Bit() ); ++ /* qDebug( "sending IMEnd with %d chars to %p, text=%s", ++ text.length(), receiver, (const char*)text.local8Bit() ); */ + event = new QIMEvent( type, text, cursorPosition ); + } else if ( type == QEvent::IMCompose ) { +- qDebug( "sending IMCompose to %p with %d chars, cpos=%d, sellen=%d, text=%s", ++ /* qDebug( "sending IMCompose to %p with %d chars, cpos=%d, sellen=%d, text=%s", + receiver, text.length(), cursorPosition, selLength, +- (const char*)text.local8Bit() ); ++ (const char*)text.local8Bit() ); */ + event = new QIMComposeEvent( type, text, cursorPosition, selLength ); + } + +--- qt-x11-free-3.3.5/plugins/src/inputmethods/xim/qximinputcontext_x11.cpp.quiet 2005-10-13 19:00:56.000000000 +0200 ++++ qt-x11-free-3.3.5/plugins/src/inputmethods/xim/qximinputcontext_x11.cpp 2005-10-25 15:36:43.000000000 +0200 +@@ -356,7 +356,7 @@ + #if !defined(QT_NO_XIM) + fontsetRefCount++; + if (! qt_xim) { +- qWarning("QInputContext: no input method context available"); ++ // qWarning("QInputContext: no input method context available"); + return; + } + +@@ -742,7 +742,7 @@ + + void QXIMInputContext::close( const QString &errMsg ) + { +- qDebug( errMsg ); ++ // qDebug( errMsg ); + emit deletionRequested(); + } + diff --git a/redhat/tqt3/qt-x11-immodule-unified-qt3.3.8-20071116.diff.bz2 b/redhat/tqt3/qt-x11-immodule-unified-qt3.3.8-20071116.diff.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..7c122a375e73774d8cbb453ef5a3fe5445c97bb9 GIT binary patch literal 99943 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 + Q_ASSERT(script >= TQFont::Devanagari && script <= TQFont::Sinhala); + const unsigned short script_base = 0x0900 + 0x80*(script-TQFont::Devanagari); +- const unsigned short ra = script_base + 0x30; ++ unsigned short ra = script_base + 0x30; //it was const unsigned short ra before modification + const unsigned short halant = script_base + 0x4d; + const unsigned short nukta = script_base + 0x3c; + +@@ -1291,6 +1291,11 @@ + } + #endif + ++ unsigned short *chkAssamese=reordered.data(); ++ if((script == TQFont::Bengali) && (*chkAssamese==0x09F0)) //if it is assamese ra ++ { ++ ra = script_base + 0x70; ++ } + if (len != 1) { + unsigned short *uc = reordered.data(); + bool beginsWithRa = FALSE; diff --git a/redhat/tqt3/tqt3-3.4.0-fontrendering-214371.patch b/redhat/tqt3/tqt3-3.4.0-fontrendering-214371.patch new file mode 100644 index 000000000..9dca7998d --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-fontrendering-214371.patch @@ -0,0 +1,15 @@ +diff -pruN qt-x11-free-3.3.6.org/src/kernel/qscriptengine_x11.cpp qt-x11-free-3.3.6/src/kernel/qscriptengine_x11.cpp +--- qt-x11-free-3.3.6.org/src/kernel/qscriptengine_x11.cpp 2006-12-04 18:47:11.000000000 +0530 ++++ qt-x11-free-3.3.6/src/kernel/qscriptengine_x11.cpp 2006-12-05 12:05:10.000000000 +0530 +@@ -1412,7 +1412,10 @@ static bool indic_shape_syllable(QOpenTy + toPos += 2; + if (script == QFont::Devanagari || script == QFont::Gujarati || script == QFont::Bengali) { + if (matra_position == Post || matra_position == Split) { +- toPos = matra+1; ++ if (matra_position == Post ) ++ toPos = matra; ++ else ++ toPos = matra+1; + matra -= 2; + } + } else if (script == QFont::Kannada) { diff --git a/redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-209097.patch b/redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-209097.patch new file mode 100644 index 000000000..cdb543b25 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-209097.patch @@ -0,0 +1,60 @@ +--- tqt3/src/kernel/qscriptengine_x11.cpp.fontrendering-ml_IN-bz#209097 2012-02-13 19:10:01.000000000 +0100 ++++ tqt3/src/kernel/qscriptengine_x11.cpp 2012-02-13 21:36:07.227917886 +0100 +@@ -871,7 +871,7 @@ + None, None, None, None, + None, None, None, Post, + +- Post, None, Below, None, ++ None, None, None, None, + None, Post, None, None, + None, None, None, None, + None, None, Post, Post, +@@ -1274,6 +1274,16 @@ + int base = 0; + int reph = -1; + ++ //for the special conjuctions about Cons+0d4d+0d30 and Cons+0d40+0d31 of Malayalam ++ bool is_special_conjuction_malayalam = false; ++ ++ if ((len == 3) && ++ ((reordered[2] == 0x0d30) || (reordered[2] == 0x0d31)) && ++ (reordered[1] == 0x0d4d) && ++ ((reordered[0] >= 0x0d15) && (reordered[0] <= 0x0d39))) { ++ is_special_conjuction_malayalam = true; ++ } ++ + #ifdef INDIC_DEBUG + IDEBUG("original:"); + for (i = 0; i < len; i++) { +@@ -1550,6 +1560,15 @@ + reph = i; + } + ++ //for the special conjuctions about Cons+0d4d+0d30 and Cons+0d40+0d31 of Malayalam ++ if (is_special_conjuction_malayalam) { ++ unsigned short temp; ++ ++ temp = reordered[0]; ++ reordered[0] = reordered[2]; ++ reordered[2] = temp; ++ } ++ + if (item->font->stringToCMap((const TQChar *)reordered.data(), len, item->glyphs, item->advances, + &item->num_glyphs, item->flags & TQTextEngine::RightToLeft) != TQFontEngine::NoError) + return FALSE; +@@ -1661,6 +1680,15 @@ + + // halant always applies + ++ //for the special conjuctions about Cons+0d4d+0d30 and Cons+0d40+0d31 of Malayalam ++ if (is_special_conjuction_malayalam) { ++ unsigned int temp; ++ ++ temp = properties[0]; ++ properties[0] = ~PreSubstProperty; ++ properties[2] = temp; ++ } ++ + #ifdef INDIC_DEBUG + { + IDEBUG("OT properties:"); diff --git a/redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-217657.patch b/redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-217657.patch new file mode 100644 index 000000000..276441c22 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-fontrendering-ml_IN-217657.patch @@ -0,0 +1,11 @@ +--- tqt3/src/kernel/qfont_x11.cpp.fontrendering-ml_IN-217657 2012-02-13 19:10:01.000000000 +0100 ++++ tqt3/src/kernel/qfont_x11.cpp 2012-02-13 21:45:39.903520249 +0100 +@@ -712,7 +712,7 @@ + if ( script >= TQFont::Arabic && script <= TQFont::Khmer ) { + // complex script shaping. Have to do some hard work + int from = TQMAX( 0, pos - 8 ); +- int to = TQMIN( (int)str.length(), pos + 8 ); ++ int to = str.length(); + TQConstString cstr( str.unicode()+from, to-from); + TQTextEngine layout( cstr.string(), d ); + layout.itemize( TQTextEngine::WidthOnly ); diff --git a/redhat/tqt3/tqt3-3.4.0-nodebug.patch b/redhat/tqt3/tqt3-3.4.0-nodebug.patch new file mode 100644 index 000000000..ccfd411ff --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-nodebug.patch @@ -0,0 +1,15 @@ +--- tqt3/src/tools/qgpluginmanager.cpp.ndebug 2012-02-13 19:10:01.000000000 +0100 ++++ tqt3/src/tools/qgpluginmanager.cpp 2012-02-13 19:25:05.653477747 +0100 +@@ -506,10 +506,12 @@ + (*f).latin1(), + (const char*) TQFile::encodeName( old->library() ) ); + } else { ++/* + qWarning("%s: Feature %s already defined in %s!", + (const char*) TQFile::encodeName( old->library() ), + (*f).latin1(), + (const char*) TQFile::encodeName( plugin->library() ) ); ++*/ + } + } + } diff --git a/redhat/tqt3/tqt3-3.4.0-odbc.patch b/redhat/tqt3/tqt3-3.4.0-odbc.patch new file mode 100644 index 000000000..3a5aea885 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-odbc.patch @@ -0,0 +1,18 @@ +--- tqt3/src/sql/drivers/odbc/qsql_odbc.cpp.odbc 2012-02-13 19:10:01.000000000 +0100 ++++ tqt3/src/sql/drivers/odbc/qsql_odbc.cpp 2012-02-13 21:47:25.232367854 +0100 +@@ -61,13 +61,13 @@ + #endif + + // newer platform SDKs use SQLLEN instead of SQLINTEGER +-#ifdef SQLLEN ++#if defined(SQLLEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX) + # define TQSQLLEN SQLLEN + #else + # define TQSQLLEN SQLINTEGER + #endif + +-#ifdef SQLULEN ++#if defined(SQLULEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX) + # define TQSQLULEN SQLULEN + #else + # define TQSQLULEN SQLUINTEGER diff --git a/redhat/tqt3/tqt3-3.4.0-qt-x11-immodule-unified-qt3.3.5-20060318-resetinputcontext.patch b/redhat/tqt3/tqt3-3.4.0-qt-x11-immodule-unified-qt3.3.5-20060318-resetinputcontext.patch new file mode 100644 index 000000000..88e066aa9 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-qt-x11-immodule-unified-qt3.3.5-20060318-resetinputcontext.patch @@ -0,0 +1,92 @@ +--- qt-x11-free-3.3.6/src/widgets/qtextedit.cpp.preedit 2006-06-28 17:18:08.000000000 +0200 ++++ qt-x11-free-3.3.6/src/widgets/qtextedit.cpp 2006-06-28 17:20:09.000000000 +0200 +@@ -1906,9 +1906,6 @@ + + void TQTextEdit::removeSelectedText( int selNum ) + { +- if(selNum != 0) +- resetInputContext(); +- + TQTextCursor c1 = doc->selectionStartCursor( selNum ); + c1.restoreState(); + TQTextCursor c2 = doc->selectionEndCursor( selNum ); +@@ -3171,7 +3168,6 @@ + return; + } + #endif +- resetInputContext(); + TQTextParagraph *p = doc->paragAt( para ); + if ( !p ) + return; +@@ -3198,7 +3194,6 @@ + return; + } + #endif +- resetInputContext(); + for ( int i = 0; i < (int)doc->numSelections(); ++i ) + doc->removeSelection( i ); + +@@ -3240,7 +3235,6 @@ + if ( d->optimMode ) + return; + #endif +- resetInputContext(); + TQTextParagraph *p = doc->paragAt( para ); + if ( !p ) + return; +@@ -3285,7 +3279,6 @@ + if ( isReadOnly() || !doc->commands()->isUndoAvailable() || !undoEnabled ) + return; + +- resetInputContext(); + for ( int i = 0; i < (int)doc->numSelections(); ++i ) + doc->removeSelection( i ); + +@@ -3336,7 +3329,6 @@ + if ( isReadOnly() || !doc->commands()->isRedoAvailable() || !undoEnabled ) + return; + +- resetInputContext(); + for ( int i = 0; i < (int)doc->numSelections(); ++i ) + doc->removeSelection( i ); + +@@ -3450,7 +3442,6 @@ + { + if ( isReadOnly() ) + return; +- resetInputContext(); + normalCopy(); + removeSelectedText(); + updateMicroFocusHint(); +@@ -3938,7 +3929,6 @@ + return; + } + #endif +- resetInputContext(); + if ( !isModified() && isReadOnly() && + this->context() == context && this->text() == text ) + return; +@@ -4112,7 +4102,6 @@ + if ( !p ) + return; + +- resetInputContext(); + if ( index > p->length() - 1 ) + index = p->length() - 1; + +@@ -4169,7 +4158,6 @@ + return; + } + #endif +- resetInputContext(); + if ( doc->hasSelection( selNum ) ) { + doc->removeSelection( selNum ); + repaintChanged(); +@@ -5072,7 +5060,6 @@ + { + if ( dc == doc ) + return; +- resetInputContext(); + doc = dc; + delete cursor; + cursor = new QTextCursor( doc ); diff --git a/redhat/tqt3/tqt3-3.4.0-quiet.patch b/redhat/tqt3/tqt3-3.4.0-quiet.patch new file mode 100644 index 000000000..cb6080ab5 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-quiet.patch @@ -0,0 +1,13 @@ +--- tqt3/src/kernel/qpixmap_x11.cpp.quiet 2012-02-13 19:10:01.000000000 +0100 ++++ tqt3/src/kernel/qpixmap_x11.cpp 2012-02-13 21:24:08.190653338 +0100 +@@ -394,8 +394,8 @@ + { + #if defined(QT_CHECK_STATE) + if ( qApp->type() == TQApplication::Tty ) { +- qWarning( "TQPixmap: Cannot create a TQPixmap when no GUI " +- "is being used" ); ++// qWarning( "TQPixmap: Cannot create a TQPixmap when no GUI " ++// "is being used" ); + } + #endif + diff --git a/redhat/tqt3/tqt3-3.4.0-uic-nostdlib.patch b/redhat/tqt3/tqt3-3.4.0-uic-nostdlib.patch new file mode 100644 index 000000000..39a42e6f5 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-uic-nostdlib.patch @@ -0,0 +1,12 @@ +--- qt-x11-free-3.3.2/tools/designer/uic/main.cpp.sopwith 2004-06-16 17:14:17.000000000 -0400 ++++ qt-x11-free-3.3.2/tools/designer/uic/main.cpp 2004-06-16 17:21:43.000000000 -0400 +@@ -149,6 +149,9 @@ + } else { + trmacro = &opt[1]; + } ++ } else if ( opt == "nostdlib") { ++ TQStringList x; ++ TQApplication::setLibraryPaths(x); + } else if ( opt == "L" ) { + if ( !(n < argc-1) ) { + error = "Missing plugin path."; diff --git a/redhat/tqt3/tqt3-3.4.0-umask.patch b/redhat/tqt3/tqt3-3.4.0-umask.patch new file mode 100644 index 000000000..9c24f9903 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0-umask.patch @@ -0,0 +1,14 @@ +--- tqt3/src/tools/qsettings.cpp.umask 2012-02-13 19:10:01.000000000 +0100 ++++ tqt3/src/tools/qsettings.cpp 2012-02-13 19:28:00.802555882 +0100 +@@ -997,7 +997,10 @@ + #endif + + TQFile file( filename + ".tmp" ); +- if (! file.open(IO_WriteOnly)) { ++ mode_t old_umask = umask(0022); ++ bool f = file.open(IO_WriteOnly); ++ umask(old_umask); ++ if (! f) { + + #ifdef QT_CHECK_STATE + qWarning("TQSettings::sync: failed to open '%s' for writing", diff --git a/redhat/tqt3/tqt3-3.4.0.spec b/redhat/tqt3/tqt3-3.4.0.spec new file mode 100644 index 000000000..87d7d2bd4 --- /dev/null +++ b/redhat/tqt3/tqt3-3.4.0.spec @@ -0,0 +1,678 @@ +# Always install under standard prefix +%define _prefix /usr + +# This allows the legacy RHEL/Fedora patches to apply in TDE version. +%define _default_patch_fuzz 2 + +# The following QT4 packages should NOT be installed to +# allow QT3 compilation (please uninstall them prior to compile) +# qt +# qt-sqlite +# qt-mysql +# qt-x11 +# qt-devel +# ...maybe others !!!! + +%define _default_patch_fuzz 2 + +Summary: The shared library for the Qt 3 GUI toolkit +Version: 3.4.0 +Release: 1%{?dist} +Name: tqt3 + +Obsoletes: qt < 1:%{version}-%{release} +Provides: qt = 1:%{version}-%{release} +Obsoletes: qt3 < 1:%{version}-%{release} +Provides: qt3 = 1:%{version}-%{release} + +License: QPL or GPLv2 or GPLv3 +Group: System Environment/Libraries +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Url: http://www.troll.no +Source0: %{name}-%{version}.tar.gz +Source2: qt.sh +Source3: qt.csh +Source4: designer3.desktop +Source5: assistant3.desktop +Source6: linguist3.desktop +Source7: qtconfig3.desktop + +Patch1: qt-3.3.4-print-CJK.patch +Patch2: tqt3-3.4.0-nodebug.patch +Patch3: qt-3.1.0-makefile.patch +Patch4: tqt3-3.4.0-umask.patch +Patch5: qt-x11-free-3.3.6-strip.patch +Patch7: tqt3-3.4.0-quiet.patch +Patch8: tqt3-3.4.0-embed.patch +Patch12: tqt3-3.4.0-uic-nostdlib.patch +Patch13: qt-x11-free-3.3.6-qfontdatabase_x11.patch +Patch27: tqt3-3.4.0-fontrendering-ml_IN-209097.patch +Patch29: qt-3.3.8-fontrendering-as_IN-209972.patch +Patch31: qt-3.3.6-fontrendering-te_IN-211259.patch +Patch32: tqt3-3.4.0-fontrendering-214371.patch +Patch33: tqt3-3.4.0-fontrendering-#214570.patch +Patch34: qt-3.3.6-fontrendering-ml_IN-209974.patch +Patch35: tqt3-3.4.0-fontrendering-ml_IN-217657.patch +Patch37: qt-3.3.6-fontrendering-gu-228452.patch +Patch38: tqt3-3.4.0-odbc.patch +Patch39: qt-x11-free-3.3.7-arm.patch +Patch40: qt-x11-free-3.3.8b-typo.patch + +# immodule patches +Patch53: tqt3-3.4.0-qt-x11-immodule-unified-qt3.3.5-20060318-resetinputcontext.patch + +# qt-copy patches +Patch110: 0084-compositing-properties.patch + +# upstream patches +Patch200: qt-x11-free-3.3.4-fullscreen.patch + +# TDE 3.5.13 patches +Patch300: qt3-3.3.8.d-updates_zh-tw_translations.patch + +%define qt_dirname qt-3.3 +%define qtdir %{_libdir}/%{qt_dirname} +%define qt_docdir %{_docdir}/qt-devel-%{version} + +%define smp 1 +%define immodule 1 +%define debug 0 + +# MySQL plugins +%define plugin_mysql -plugin-sql-mysql +%define mysql_include_dir %{_includedir}/mysql +%define mysql_lib_dir %{_libdir}/mysql + +# Postgres plugins +%define plugin_psql -plugin-sql-psql + +# ODBC plugins +%define plugin_odbc -plugin-sql-odbc + +# sqlite plugins +%define plugin_sqlite -plugin-sql-sqlite + +%define plugins_style -qt-style-cde -qt-style-motifplus -qt-style-platinum -qt-style-sgi -qt-style-windows -qt-style-compact -qt-imgfmt-png -qt-imgfmt-jpeg -qt-imgfmt-mng +%define plugins %{plugin_mysql} %{plugin_psql} %{plugin_odbc} %{plugin_sqlite} %{plugins_style} + +Requires(post): /sbin/ldconfig +Requires(postun): /sbin/ldconfig +Requires: coreutils +Requires: fontconfig >= 2.0 +Requires: /etc/ld.so.conf.d + +BuildRequires: desktop-file-utils +BuildRequires: libmng-devel +BuildRequires: glibc-devel +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +BuildRequires: zlib-devel +BuildRequires: giflib-devel +BuildRequires: perl +BuildRequires: sed +BuildRequires: findutils +BuildRequires: cups-devel +BuildRequires: tar +BuildRequires: freetype-devel +BuildRequires: fontconfig-devel +BuildRequires: libXrender-devel +BuildRequires: libXrandr-devel +BuildRequires: libXcursor-devel +BuildRequires: libXinerama-devel +BuildRequires: libXft-devel +BuildRequires: libXext-devel +BuildRequires: libX11-devel +BuildRequires: libSM-devel +BuildRequires: libICE-devel +BuildRequires: libXt-devel +BuildRequires: libXmu-devel +BuildRequires: libXi-devel +BuildRequires: xorg-x11-proto-devel +BuildRequires: mesa-libGL-devel +BuildRequires: mesa-libGLU-devel +BuildRequires: desktop-file-utils +BuildRequires: mysql-devel +BuildRequires: postgresql-devel +BuildRequires: unixODBC-devel +BuildRequires: sqlite-devel + + +%package config +Summary: Graphical configuration tool for programs using Qt 3 +Group: User Interface/Desktops +Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} +Obsoletes: qt-config < 1:%{version}-%{release} +Provides: qt-config = 1:%{version}-%{release} +Obsoletes: qt3-config < 1:%{version}-%{release} +Provides: qt3-config = 1:%{version}-%{release} + + +%package devel +Summary: Development files for the Qt 3 GUI toolkit +Group: Development/Libraries +Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: freetype-devel +Requires: fontconfig-devel +Requires: libXrender-devel +Requires: libXrandr-devel +Requires: libXcursor-devel +Requires: libXinerama-devel +Requires: libXft-devel +Requires: libXext-devel +Requires: libX11-devel +Requires: libSM-devel +Requires: libICE-devel +Requires: libXt-devel +Requires: xorg-x11-proto-devel +Requires: libpng-devel +Requires: libjpeg-devel +Requires: libmng-devel +Requires: mesa-libGL-devel +Requires: mesa-libGLU-devel + +Obsoletes: qt-devel < 1:%{version}-%{release} +Provides: qt-devel = 1:%{version}-%{release} +Obsoletes: qt3-devel < 1:%{version}-%{release} +Provides: qt3-devel = 1:%{version}-%{release} + + +%package devel-docs +Summary: Documentation for the Qt 3 GUI toolkit +Group: Development/Libraries +Requires: %{name}-devel = %{?epoch:%{epoch}:}%{version}-%{release} + +Obsoletes: qt-devel-docs < 1:%{version}-%{release} +Provides: qt-devel-docs = 1:%{version}-%{release} +Obsoletes: qt3-devel-docs < 1:%{version}-%{release} +Provides: qt3-devel-docs = 1:%{version}-%{release} + + +%package ODBC +Summary: ODBC drivers for Qt 3's SQL classes +Group: System Environment/Libraries +Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} + +Obsoletes: qt-ODBC < 1:%{version}-%{release} +Provides: qt-ODBC = 1:%{version}-%{release} +Obsoletes: qt3-ODBC < 1:%{version}-%{release} +Provides: qt3-ODBC = 1:%{version}-%{release} + + +%package MySQL +Summary: MySQL drivers for Qt 3's SQL classes +Group: System Environment/Libraries +Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} + +Obsoletes: qt-MySQL < 1:%{version}-%{release} +Provides: qt-MySQL = 1:%{version}-%{release} +Obsoletes: qt3-MySQL < 1:%{version}-%{release} +Provides: qt3-MySQL = 1:%{version}-%{release} + + +%package PostgreSQL +Summary: PostgreSQL drivers for Qt 3's SQL classes +Group: System Environment/Libraries +Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} + +Obsoletes: qt-PostgreSQL < 1:%{version}-%{release} +Provides: qt-PostgreSQL = 1:%{version}-%{release} +Obsoletes: qt3-PostgreSQL < 1:%{version}-%{release} +Provides: qt3-PostgreSQL = 1:%{version}-%{release} + + +%package sqlite +Summary: sqlite drivers for Qt 3's SQL classes +Group: System Environment/Libraries +Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} + +Obsoletes: qt-sqlite < 1:%{version}-%{release} +Provides: qt-sqlite = 1:%{version}-%{release} +Obsoletes: qt3-sqlite < 1:%{version}-%{release} +Provides: qt3-sqlite = 1:%{version}-%{release} + + +%package designer +Summary: In3erface designer (IDE) for the Qt 3 toolkit +Group: Development/Tools +Requires: %{name}-devel = %{?epoch:%{epoch}:}%{version}-%{release} + +Obsoletes: qt-designer < 1:%{version}-%{release} +Provides: qt-designer = 1:%{version}-%{release} +Obsoletes: qt3-designer < 1:%{version}-%{release} +Provides: qt3-designer = 1:%{version}-%{release} + + +%description +Qt is a GUI software toolkit which simplifies the task of writing and +maintaining GUI (Graphical User Interface) applications +for the X Window System. + +Qt is written in C++ and is fully object-oriented. + +This package contains the shared library needed to run Qt 3 +applications, as well as the README files for Qt 3. + + +%description config +Qt is a GUI software toolkit which simplifies the task of writing and +maintaining GUI (Graphical User Interface) applications +for the X Window System. + +Qt is written in C++ and is fully object-oriented. + +This package contains a graphical configuration tool for programs using Qt 3. + + +%description devel +The %{name}-devel package contains the files necessary to develop +applications using the Qt GUI toolkit: the header files, the Qt meta +object compiler. + +Install %{name}-devel if you want to develop GUI applications using the Qt 3 +toolkit. + + +%description devel-docs +The %{name}-devel-docs package contains the man pages, the HTML documentation and +example programs for Qt 3. + + +%description ODBC +ODBC driver for Qt 3's SQL classes (QSQL) + + +%description MySQL +MySQL driver for Qt 3's SQL classes (QSQL) + + +%description PostgreSQL +PostgreSQL driver for Qt 3's SQL classes (QSQL) + + +%description sqlite +sqlite driver for Qt 3's SQL classes (QSQL) + + +%description designer +The %{name}-designer package contains an User Interface designer tool +for the Qt 3 toolkit. + + +%prep +%setup -q -n %{name} +%patch1 -p1 -b .cjk +%patch2 -p1 -b .ndebug +%patch3 -p1 -b .makefile +%patch4 -p1 -b .umask +%patch5 -p1 +%patch7 -p1 -b .quiet +%patch8 -p1 -b .qembed +%patch12 -p1 -b .nostdlib +%patch13 -p1 -b .fonts +%patch27 -p1 -b .fontrendering-ml_IN-bz#209097 +%patch29 -p1 -b .fontrendering-as_IN-bz#209972 +%patch31 -p1 -b .fontrendering-te_IN-bz#211259 +%patch32 -p1 -b .fontrendering-bz#214371 +%patch33 -p1 -b .fontrendering-#214570 +%patch34 -p1 -b .fontrendering-#209974 +%patch35 -p1 -b .fontrendering-ml_IN-217657 +%patch37 -p1 -b .fontrendering-gu-228452 +%patch38 -p1 -b .odbc +# it's not 100% clear to me if this is safe for all archs -- Rex +%ifarch armv5tel +%patch39 -p1 -b .arm +%endif +%patch40 -p1 + +# immodule patches +%if %{immodule} +%patch53 -p1 -b .resetinputcontext +%endif + +# qt-copy patches +%patch110 -p0 -b .0084-compositing-properties + +# upstream patches +%patch200 -p1 -b .fullscreen + +# TDE 3.5.13 patches +%patch300 -p1 + +# convert to UTF-8 +iconv -f iso-8859-1 -t utf-8 < doc/man/man3/qdial.3qt > doc/man/man3/qdial.3qt_ +mv doc/man/man3/qdial.3qt_ doc/man/man3/qdial.3qt + +%build +export QTDIR=`/bin/pwd` +export LD_LIBRARY_PATH="$QTDIR/lib:$LD_LIBRARY_PATH" +export PATH="$QTDIR/bin:$PATH" +export QTDEST=%{qtdir} + +%if %{smp} + export SMP_MFLAGS="%{?_smp_mflags}" +%endif + +%if %{immodule} + sh ./make-symlinks.sh +%endif + +# set correct X11 prefix +perl -pi -e "s,QMAKE_LIBDIR_X11.*,QMAKE_LIBDIR_X11\t=," mkspecs/*/qmake.conf +perl -pi -e "s,QMAKE_INCDIR_X11.*,QMAKE_INCDIR_X11\t=," mkspecs/*/qmake.conf +perl -pi -e "s,QMAKE_INCDIR_OPENGL.*,QMAKE_INCDIR_OPENGL\t=," mkspecs/*/qmake.conf +perl -pi -e "s,QMAKE_LIBDIR_OPENGL.*,QMAKE_LIBDIR_OPENGL\t=," mkspecs/*/qmake.conf + +# don't use rpath +perl -pi -e "s|-Wl,-rpath,| |" mkspecs/*/qmake.conf + +perl -pi -e "s|-O2|$INCLUDES %{optflags} -fno-strict-aliasing|g" mkspecs/*/qmake.conf + +# set correct lib path +if [ "%{_lib}" == "lib64" ] ; then + perl -pi -e "s,/usr/lib /lib,/usr/%{_lib} /%{_lib},g" config.tests/{unix,x11}/*.test + perl -pi -e "s,/lib /usr/lib,/%{_lib} /usr/%{_lib},g" config.tests/{unix,x11}/*.test +fi + +# build shared, threaded (default) libraries +echo yes | ./configure \ + -prefix $QTDEST \ + -docdir %{qt_docdir} \ +%if %{_lib} == lib64 + -platform linux-g++-64 \ +%else + -platform linux-g++ \ +%endif +%if %{debug} + -debug \ +%else + -release \ +%endif + -shared \ + -largefile \ + -qt-gif \ + -system-zlib \ + -system-libpng \ + -system-libmng \ + -system-libjpeg \ + -no-exceptions \ + -enable-styles \ + -enable-tools \ + -enable-kernel \ + -enable-widgets \ + -enable-dialogs \ + -enable-iconview \ + -enable-workspace \ + -enable-network \ + -enable-canvas \ + -enable-table \ + -enable-xml \ + -enable-opengl \ + -enable-sql \ + -qt-style-motif \ + %{plugins} \ + -stl \ + -thread \ + -cups \ + -sm \ + -xinerama \ + -xrender \ + -xkb \ + -ipv6 \ + -dlopen-opengl \ + -xft \ + -tablet + +make $SMP_MFLAGS src-qmake + +# build sqlite plugin +pushd plugins/src/sqldrivers/sqlite +qmake -o Makefile sqlite.pro +popd + +# build psql plugin +pushd plugins/src/sqldrivers/psql +qmake -o Makefile "INCLUDEPATH+=%{_includedir}/pgsql %{_includedir}/pgsql/server %{_includedir}/pgsql/internal" "LIBS+=-lpq" psql.pro +popd + +# build mysql plugin +pushd plugins/src/sqldrivers/mysql +qmake -o Makefile "INCLUDEPATH+=%{mysql_include_dir}" "LIBS+=-L%{mysql_lib_dir} -lmysqlclient" mysql.pro +popd + +# build odbc plugin +pushd plugins/src/sqldrivers/odbc +qmake -o Makefile "LIBS+=-lodbc" odbc.pro +popd + +make $SMP_MFLAGS src-moc +make $SMP_MFLAGS sub-src +make $SMP_MFLAGS sub-tools UIC="$QTDIR/bin/uic -nostdlib -L $QTDIR/plugins" + +%install +rm -rf %{buildroot} + +export QTDIR=`/bin/pwd` +export LD_LIBRARY_PATH="$QTDIR/lib:$LD_LIBRARY_PATH" +export PATH="$QTDIR/bin:$PATH" +export QTDEST=%{qtdir} + +make install INSTALL_ROOT=%{buildroot} + +for i in findtr qt20fix qtrename140 lrelease lupdate ; do + install bin/$i %{buildroot}%{qtdir}/bin/ +done + +mkdir -p %{buildroot}%{_libdir}/pkgconfig/ +mv %{buildroot}%{qtdir}/lib/pkgconfig/*.pc %{buildroot}%{_libdir}/pkgconfig/ + +# install man pages +mkdir -p %{buildroot}%{_mandir} +cp -fR doc/man/* %{buildroot}%{_mandir}/ + +# clean up +make -C tutorial clean +make -C examples clean + +# Make sure the examples can be built outside the source tree. +# Our binaries fulfill all requirements, so... +perl -pi -e "s,^DEPENDPATH.*,,g;s,^REQUIRES.*,,g" `find examples -name "*.pro"` + +# don't include Makefiles of qt examples/tutorials +find examples -name "Makefile" | xargs rm -f +find examples -name "*.obj" | xargs rm -rf +find examples -name "*.moc" | xargs rm -rf +find tutorial -name "Makefile" | xargs rm -f + +for a in */*/Makefile ; do + sed 's|^SYSCONF_MOC.*|SYSCONF_MOC = %{qtdir}/bin/moc|' < $a > ${a}.2 + mv -v ${a}.2 $a +done + +mkdir -p %{buildroot}/etc/profile.d +install -m 644 %{SOURCE2} %{SOURCE3} %{buildroot}/etc/profile.d/ + +# Add desktop files +mkdir -p %{buildroot}%{_datadir}/applications +desktop-file-install \ + --dir %{buildroot}%{_datadir}/applications \ + --vendor="qt" \ + %{SOURCE4} %{SOURCE5} %{SOURCE6} %{SOURCE7} + +# Patch qmake to use qt-mt unconditionally +perl -pi -e "s,-lqt ,-lqt-mt ,g;s,-lqt$,-lqt-mt,g" %{buildroot}%{qtdir}/mkspecs/*/qmake.conf + +# remove broken links +rm -f %{buildroot}%{qtdir}/mkspecs/default/linux-g++* +rm -f %{buildroot}%{qtdir}/lib/*.la + +mkdir -p %{buildroot}/etc/ld.so.conf.d +echo "%{qtdir}/lib" > %{buildroot}/etc/ld.so.conf.d/qt-%{_arch}.conf + +# install icons +mkdir %{buildroot}%{_datadir}/pixmaps +install -m 644 tools/assistant/images/qt.png %{buildroot}%{_datadir}/pixmaps/qtconfig3.png +install -m 644 tools/assistant/images/designer.png %{buildroot}%{_datadir}/pixmaps/designer3.png +install -m 644 tools/assistant/images/assistant.png %{buildroot}%{_datadir}/pixmaps/assistant3.png +install -m 644 tools/assistant/images/linguist.png %{buildroot}%{_datadir}/pixmaps/linguist3.png + +# own style directory +mkdir -p %{buildroot}%{qtdir}/plugins/styles + +%clean +rm -rf %{buildroot} + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + +%files +%defattr(-,root,root,-) +%doc FAQ LICENSE* README* changes* +%dir %{qtdir} +%dir %{qtdir}/bin +%dir %{qtdir}/lib +%dir %{qtdir}/plugins +%dir %{qtdir}/plugins/sqldrivers +%dir %{qtdir}/plugins/styles +%{qtdir}/translations +%{qtdir}/plugins/designer/ +%if %{immodule} +%{qtdir}/plugins/inputmethods +%endif +%config /etc/profile.d/* +/etc/ld.so.conf.d/* +%{qtdir}/lib/libtqui.so.* +%{qtdir}/lib/libtqt*.so.* + +# TQT 3.4.0: WTF is this file ?? +%exclude %{_mandir}/README + +%files config +%defattr(-,root,root,-) +%{qtdir}/bin/qtconfig +%{_datadir}/applications/*qtconfig*.desktop +%{_datadir}/pixmaps/qtconfig3.png + +%files devel +%defattr(-,root,root,-) +%{qt_docdir}/ +%{qtdir}/bin/moc +%{qtdir}/bin/uic +%{qtdir}/bin/findtr +%{qtdir}/bin/qt20fix +%{qtdir}/bin/qtrename140 +%{qtdir}/bin/assistant +%{qtdir}/bin/qm2ts +%{qtdir}/bin/qmake +%{qtdir}/bin/qembed +%{qtdir}/bin/linguist +%{qtdir}/bin/lupdate +%{qtdir}/bin/lrelease +%{qtdir}/include +%{qtdir}/mkspecs +%{qtdir}/lib/libtqt*.so +%{qtdir}/lib/libtqui.so +%{qtdir}/lib/libeditor.a +%{qtdir}/lib/libdesigner*.a +%{qtdir}/lib/libqassistantclient.a +%{qtdir}/lib/*.prl +%{qtdir}/phrasebooks +%{_libdir}/pkgconfig/* +%{_datadir}/applications/*linguist*.desktop +%{_datadir}/applications/*assistant*.desktop +%{_datadir}/pixmaps/linguist3.png +%{_datadir}/pixmaps/assistant3.png + +# QT 3.3.8.D (TDE): 4 binaries have appeared +%{qtdir}/bin/createcw +%{qtdir}/bin/makeqpf +%{qtdir}/bin/mergetr +%{qtdir}/bin/msg2qm + +# QT 3.3.8.D (TDE): removes lots of unnecessary include files +# (where do they come from ??? They were not in 3.3.8b !) +%exclude %{qtdir}/include/btree.h +%exclude %{qtdir}/include/crc32.h +%exclude %{qtdir}/include/debian_qsql_odbc.h +%exclude %{qtdir}/include/deflate.h +%exclude %{qtdir}/include/ftglue.h +%exclude %{qtdir}/include/ftxgdef.h +%exclude %{qtdir}/include/ftxgpos.h +%exclude %{qtdir}/include/ftxgsub.h +%exclude %{qtdir}/include/ftxopen.h +%exclude %{qtdir}/include/ftxopenf.h +%exclude %{qtdir}/include/hash.h +%exclude %{qtdir}/include/inffast.h +%exclude %{qtdir}/include/inffixed.h +%exclude %{qtdir}/include/inflate.h +%exclude %{qtdir}/include/inftrees.h +%exclude %{qtdir}/include/jchuff.h +%exclude %{qtdir}/include/jconfig.h +%exclude %{qtdir}/include/jdct.h +%exclude %{qtdir}/include/jdhuff.h +%exclude %{qtdir}/include/jerror.h +%exclude %{qtdir}/include/jinclude.h +%exclude %{qtdir}/include/jmemsys.h +%exclude %{qtdir}/include/jmorecfg.h +%exclude %{qtdir}/include/jversion.h +%exclude %{qtdir}/include/moc_yacc.h +%exclude %{qtdir}/include/opcodes.h +%exclude %{qtdir}/include/os.h +%exclude %{qtdir}/include/otlbuffer.h +%exclude %{qtdir}/include/pager.h +%exclude %{qtdir}/include/parse.h +%exclude %{qtdir}/include/pngasmrd.h +%exclude %{qtdir}/include/pngconf.h +%exclude %{qtdir}/include/sqlite.h +%exclude %{qtdir}/include/sqliteInt.h +%exclude %{qtdir}/include/trees.h +%exclude %{qtdir}/include/vdbe.h +%exclude %{qtdir}/include/vdbeInt.h +%exclude %{qtdir}/mkspecs/linux-g++-sparc + +%files devel-docs +%defattr(-,root,root,-) +%doc examples +%doc tutorial +%{_mandir}/*/* + +%files sqlite +%defattr(-,root,root,-) +%{qtdir}/plugins/sqldrivers/libqsqlite.so + +%files ODBC +%defattr(-,root,root,-) +%{qtdir}/plugins/sqldrivers/libqsqlodbc.so + +%files PostgreSQL +%defattr(-,root,root,-) +%{qtdir}/plugins/sqldrivers/libqsqlpsql.so + +%files MySQL +%defattr(-,root,root,-) +%{qtdir}/plugins/sqldrivers/libqsqlmysql.so + +%files designer +%defattr(-,root,root,-) +%{qtdir}/templates +%{qtdir}/bin/designer +%{_datadir}/applications/*designer*.desktop +%{_datadir}/pixmaps/designer3.png + + +%changelog +* Mon Feb 13 2012 Francois Andriot - 3.4.0-1 +- Initial build for TDE R14 +- Renames 'qt3' to 'tqt3' +- Spec file based on 'qt3-3.3.8b-30' from RHEL 6 + +* Sun Dec 18 2011 Francois Andriot - 3.3.8.d-3 +- Updates zh_TW translations, thanks to Wei-Lun Chao . + +* Thu Nov 03 2011 Francois Andriot - 3.3.8.d-2 +- Add missing BuildRequires + +* Fri Sep 02 2011 Francois Andriot - 3.3.8.d-1 +- Initial build for RHEL 6, RHEL 5, and Fedora 15 +- Switch to Trinity Version +- Spec file based on RHEL 6 'qt3-3.3.8b-29'