[RHEL/Fedora] add TQT3 for future R14

pull/3/head
Francois Andriot 12 years ago
parent e52e723d60
commit 14dfc7ec02

@ -0,0 +1,80 @@
qt-bugs@ issue : none
bugs.kde.org number : none
applied: no
author: Lubos Lunak <l.lunak@kde.org>
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 ) {

@ -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;

@ -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;

@ -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;

@ -0,0 +1 @@
../qt3/qt-3.1.0-makefile.patch

@ -0,0 +1 @@
../qt3/qt-3.3.4-print-CJK.patch

@ -0,0 +1 @@
../qt3/qt-3.3.6-fontrendering-gu-228452.patch

@ -0,0 +1 @@
../qt3/qt-3.3.6-fontrendering-ml_IN-209974.patch

@ -0,0 +1 @@
../qt3/qt-3.3.6-fontrendering-te_IN-211259.patch

@ -0,0 +1 @@
../qt3/qt-3.3.8-fontrendering-as_IN-209972.patch

@ -0,0 +1 @@
../qt3/qt-x11-free-3.3.4-fullscreen.patch

@ -0,0 +1 @@
../qt3/qt-x11-free-3.3.6-qfontdatabase_x11.patch

@ -0,0 +1 @@
../qt3/qt-x11-free-3.3.6-strip.patch

@ -0,0 +1 @@
../qt3/qt-x11-free-3.3.7-arm.patch

@ -0,0 +1 @@
../qt3/qt-x11-free-3.3.8b-typo.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();
}

@ -0,0 +1,34 @@
# Qt initialization script (csh)
# In multilib environments there is a preferred architecture, 64 bit over 32 bit in x86_64,
# When a conflict is found between two packages corresponding with different arches,
# the installed file is the one from the preferred arch. This is very common for executables
# in /usr/bin, for example. If the file /usr/bin/foo is found in an x86_64 package and in an
# i386 package, the executable from x86_64 will be installe
if ( $?QTDIR ) then
exit
endif
switch (`uname -m`)
case x86_64:
case ia64:
case s390x:
case ppc64:
set QTPREFIXES = "/usr/lib64/qt-3.3 /usr/lib/qt-3.3"
breaksw
case *:
set QTPREFIXES = "/usr/lib/qt-3.3 /usr/lib64/qt-3.3"
endsw
foreach QTPREFIX ( $QTPREFIXES )
test -d "$QTPREFIX" && setenv QTDIR $QTPREFIX && break
end
unset QTPREFIX QTPREFIXES
if ( "${path}" !~ *$QTDIR/bin* ) then
set path = ( $QTDIR/bin $path )
endif
setenv QTINC $QTDIR/include
setenv QTLIB $QTDIR/lib

@ -0,0 +1,32 @@
# Qt initialization script (sh)
# In multilib environments there is a preferred architecture, 64 bit over 32 bit in x86_64,
# When a conflict is found between two packages corresponding with different arches,
# the installed file is the one from the preferred arch. This is very common for executables
# in /usr/bin, for example. If the file /usr/bin/foo is found in an x86_64 package and in an
# i386 package, the executable from x86_64 will be installe
if [ -z "${QTDIR}" ]; then
case `uname -m` in
x86_64 | ia64 | s390x | ppc64 )
QT_PREFIXES="/usr/lib64/qt-3.3 /usr/lib/qt-3.3" ;;
* )
QT_PREFIXES="/usr/lib/qt-3.3 /usr/lib64/qt-3.3" ;;
esac
for QTDIR in ${QT_PREFIXES} ; do
test -d "${QTDIR}" && break
done
unset QT_PREFIXES
if ! echo ${PATH} | /bin/grep -q $QTDIR/bin ; then
PATH=$QTDIR/bin:${PATH}
fi
QTINC="$QTDIR/include"
QTLIB="$QTDIR/lib"
export QTDIR QTINC QTLIB PATH
fi

@ -0,0 +1 @@
../qt3/qt3-3.3.8.d-updates_zh-tw_translations.patch

@ -0,0 +1,9 @@
[Desktop Entry]
Name=Qt3 Config
Comment=Configure Qt3 behavior, styles, fonts
Exec=qtconfig
Icon=qtconfig3
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Settings;

@ -0,0 +1,10 @@
--- tqt3/tools/qembed/qembed.pro.qembed 2012-02-13 19:10:01.000000000 +0100
+++ tqt3/tools/qembed/qembed.pro 2012-02-13 21:26:57.417973392 +0100
@@ -3,5 +3,7 @@
TARGET = qembed
REQUIRES=full-config nocrosscompiler
+DESTDIR = ../../bin
target.path = $$bins.path
INSTALLS += target
+

@ -0,0 +1,23 @@
--- tqt3/src/kernel/qscriptengine_x11.cpp.fontrendering-#214570 2012-02-13 21:41:17.792005290 +0100
+++ tqt3/src/kernel/qscriptengine_x11.cpp 2012-02-13 21:42:38.785202528 +0100
@@ -1243,7 +1243,7 @@
int script = item->script;
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;

@ -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) {

@ -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:");

@ -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 );

@ -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() ) );
+*/
}
}
}

@ -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

@ -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 );

@ -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

@ -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.";

@ -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",

@ -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 <francois.andriot@free.fr> - 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 <francois.andriot@free.fr> - 3.3.8.d-3
- Updates zh_TW translations, thanks to Wei-Lun Chao .
* Thu Nov 03 2011 Francois Andriot <francois.andriot@free.fr> - 3.3.8.d-2
- Add missing BuildRequires
* Fri Sep 02 2011 Francois Andriot <francois.andriot@free.fr> - 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'
Loading…
Cancel
Save