3 # Patch managed by http://www.holgerschurig.de/patcher.html
6 --- qt-2.3.9-snapshot-20050114/configure~qt-visibility
7 +++ qt-2.3.9-snapshot-20050114/configure
16 GPLUSPLUS_EXCEPTIONS=no
19 -tslib ............. Enable TSlib (touchscreen library) mouse handler.
20 See http://arm.linux.org.uk
22 + -visibility-hidden . Use -fvisibility=hidden as default. This requires GCC 4.0
23 + or a special patched GCC to support the visibility attribute
25 -no-g++-exceptions . Disable exceptions on platforms using the GNU C++
26 compiler by using the -fno-exceptions flag.
28 @@ -1364,6 +1370,10 @@
29 QT_CXX="${QT_CXX} -DQT_QWS_TSLIB"
30 QT_LIBS="${QT_LIBS} -lts"
32 +if [ "x$VISIBILITY=" = "xyes" ]
34 + QT_CXX="${QT_CXX} -DGCC_SUPPORTS_VISIBILITY -fvisibility=hidden"
36 if [ "x$THREAD" = "xyes" ]
39 --- qt-2.3.9-snapshot-20050114/src/tools/qglobal.h~qt-visibility
40 +++ qt-2.3.9-snapshot-20050114/src/tools/qglobal.h
45 +#ifdef GCC_SUPPORTS_VISIBILITY
47 + #define Q_EXPORT __attribute__((visibility("default")))
54 --- qt-2.3.9-snapshot-20050114/src/widgets/qscrollview.cpp~qt-visibility
55 +++ qt-2.3.9-snapshot-20050114/src/widgets/qscrollview.cpp
57 The surrounding environment (or application, if there is no
58 environment, may set this. Requires Qt >= 2.3.8.
60 -bool qt_left_hand_scrollbars = FALSE;
61 +bool Q_EXPORT qt_left_hand_scrollbars = FALSE;
64 Updates scrollbars - all possibilities considered. You should never
65 --- qt-2.3.9-snapshot-20050114/src/Makefile.in~qt-visibility
66 +++ qt-2.3.9-snapshot-20050114/src/Makefile.in
69 network/qsocketdevice.h
70 echo '#include "kernel/qt.h"' >allmoc.cpp
71 - $(CXX) -E -DQT_MOC_CPP $(CXXFLAGS) $(INCPATH) >allmoc.h allmoc.cpp
72 + $(CXX) -E -DQT_MOC_CPP -DQ_EXPORT="" $(CXXFLAGS) $(INCPATH) >allmoc.h allmoc.cpp
73 $(MOC) -o allmoc.cpp allmoc.h
74 perl -pi -e 's{"allmoc.h"}{"kernel/qt.h"}' allmoc.cpp
76 --- qt-2.3.9-snapshot-20050114/src/kernel/qcopchannel_qws.h~qt-visibility
77 +++ qt-2.3.9-snapshot-20050114/src/kernel/qcopchannel_qws.h
79 class QCopChannelPrivate;
82 -class QCopChannel : public QObject
83 +class Q_EXPORT QCopChannel : public QObject
87 --- qt-2.3.9-snapshot-20050114/src/kernel/qfontmanager_qws.cpp~qt-visibility
88 +++ qt-2.3.9-snapshot-20050114/src/kernel/qfontmanager_qws.cpp
93 -QFontManager * qt_fontmanager=0;
94 +QFontManager Q_EXPORT *qt_fontmanager=0;
97 \class QFontManager qfontmanager_qws.h
98 --- qt-2.3.9-snapshot-20050114/src/kernel/qgfx_qws.cpp~qt-visibility
99 +++ qt-2.3.9-snapshot-20050114/src/kernel/qgfx_qws.cpp
103 #ifndef QT_NO_QWS_CURSOR
104 -bool qt_sw_cursor=false;
105 -QScreenCursor * qt_screencursor=0;
106 +bool Q_EXPORT qt_sw_cursor=false;
107 +QScreenCursor Q_EXPORT * qt_screencursor=0;
109 -QScreen * qt_screen=0;
110 +QScreen Q_EXPORT * qt_screen=0;
112 extern bool qws_screen_is_interlaced; //### hack, from qapplication_qws.cpp
114 --- qt-2.3.9-snapshot-20050114/src/kernel/qwindowsystem_qws.cpp~qt-visibility
115 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwindowsystem_qws.cpp
118 extern void qt_setMaxWindowRect(const QRect& r);
120 -QWSServer *qwsServer=0;
121 +QWSServer Q_EXPORT *qwsServer=0;
125 --- qt-2.3.9-snapshot-20050114/src/kernel/qwsdecoration_qws.h~qt-visibility
126 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwsdecoration_qws.h
129 Implements decoration styles
132 +class Q_EXPORT QWSDecoration
136 --- qt-2.3.9-snapshot-20050114/src/kernel/qwindowsystem_qws.h~qt-visibility
137 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwindowsystem_qws.h
140 struct QWSWindowData;
142 -class QWSScreenSaver
143 +class Q_EXPORT QWSScreenSaver
146 virtual ~QWSScreenSaver();
148 virtual bool save(int level)=0;
152 +class Q_EXPORT QWSWindow
154 friend class QWSServer;
157 struct QWSCommandStruct;
159 #ifndef QT_NO_QWS_MULTIPROCESS
160 -class QWSServer : public QWSServerSocket
161 +class Q_EXPORT QWSServer : public QWSServerSocket
163 -class QWSServer : public QObject
164 +class Q_EXPORT QWSServer : public QObject
167 friend class QCopChannel;
172 -class QWSInputMethod : public QObject
173 +class Q_EXPORT QWSInputMethod : public QObject
180 #ifndef QT_NO_QWS_FSIM
181 -class QWSGestureMethod : public QObject
182 +class Q_EXPORT QWSGestureMethod : public QObject
188 typedef QMap<int, QWSCursor*> QWSCursorMap;
190 -class QWSClient : public QObject
191 +class Q_EXPORT QWSClient : public QObject
195 --- qt-2.3.9-snapshot-20050114/src/kernel/qwsdefaultdecoration_qws.h~qt-visibility
196 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwsdefaultdecoration_qws.h
201 -class QWSDefaultDecoration : public QWSDecoration
202 +class Q_EXPORT QWSDefaultDecoration : public QWSDecoration
205 QWSDefaultDecoration();
206 --- qt-2.3.9-snapshot-20050114/src/kernel/qwscommand_qws.h~qt-visibility
207 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwscommand_qws.h
210 *********************************************************************/
211 #ifndef QT_NO_QWS_MULTIPROCESS
212 -void qws_write_command( QWSSocket *socket, int type, char *simpleData, int simpleLen, char *rawData, int rawLen );
213 -bool qws_read_command( QWSSocket *socket, char *&simpleData, int &simpleLen, char *&rawData, int &rawLen, int &bytesRead );
214 +void Q_EXPORT qws_write_command( QWSSocket *socket, int type, char *simpleData, int simpleLen, char *rawData, int rawLen );
215 +bool Q_EXPORT qws_read_command( QWSSocket *socket, char *&simpleData, int &simpleLen, char *&rawData, int &rawLen, int &bytesRead );
217 /*********************************************************************
220 *********************************************************************/
223 -struct QWSProtocolItem
224 +struct Q_EXPORT QWSProtocolItem
227 QWSProtocolItem( int t, int len, char *ptr ) : type( t ),
228 --- qt-2.3.9-snapshot-20050114/src/kernel/qfont_qws.cpp~qt-visibility
229 +++ qt-2.3.9-snapshot-20050114/src/kernel/qfont_qws.cpp
231 static QFontCache *fontCache = 0; // cache of loaded fonts
232 static QFontDict *fontDict = 0; // dict of all loaded fonts
234 -void qws_clearLoadedFonts()
235 +void Q_EXPORT qws_clearLoadedFonts()
237 QFontDictIt it( *fontDict );
238 while ( it.current() ) {
239 --- qt-2.3.9-snapshot-20050114/src/kernel/qwscursor_qws.h~qt-visibility
240 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwscursor_qws.h
245 -class QWSCursor : public Qt
246 +class Q_EXPORT QWSCursor : public Qt
250 --- qt-2.3.9-snapshot-20050114/src/kernel/qwsevent_qws.h~qt-visibility
251 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwsevent_qws.h
254 struct QWSMouseEvent;
256 -struct QWSEvent : QWSProtocolItem {
257 +struct Q_EXPORT QWSEvent : QWSProtocolItem {
259 QWSEvent( int t, int len, char *ptr ) : QWSProtocolItem(t,len,ptr) {}
263 //All events must start with windowID
265 -struct QWSConnectedEvent : QWSEvent {
266 +struct Q_EXPORT QWSConnectedEvent : QWSEvent {
268 : QWSEvent( QWSEvent::Connected, sizeof( simpleData ),
269 (char*)&simpleData ) {}
274 -struct QWSMaxWindowRectEvent : QWSEvent {
275 +struct Q_EXPORT QWSMaxWindowRectEvent : QWSEvent {
276 QWSMaxWindowRectEvent()
277 : QWSEvent( MaxWindowRect, sizeof( simpleData ), (char*)&simpleData ) { }
283 -struct QWSMouseEvent : QWSEvent {
284 +struct Q_EXPORT QWSMouseEvent : QWSEvent {
286 : QWSEvent( QWSEvent::Mouse, sizeof( simpleData ),
287 (char*)&simpleData ) {}
292 -struct QWSFocusEvent : QWSEvent {
293 +struct Q_EXPORT QWSFocusEvent : QWSEvent {
295 : QWSEvent( QWSEvent::Focus, sizeof( simpleData ), (char*)&simpleData )
296 { memset((char*)&simpleData,0,sizeof(simpleData)); }
301 -struct QWSKeyEvent: QWSEvent {
302 +struct Q_EXPORT QWSKeyEvent: QWSEvent {
304 : QWSEvent( QWSEvent::Key, sizeof( simpleData ),
310 -struct QWSCreationEvent : QWSEvent {
311 +struct Q_EXPORT QWSCreationEvent : QWSEvent {
313 : QWSEvent( QWSEvent::Creation, sizeof( simpleData ),
314 (char*)&simpleData ) {}
318 #ifndef QT_NO_QWS_PROPERTIES
319 -struct QWSPropertyNotifyEvent : QWSEvent {
320 +struct Q_EXPORT QWSPropertyNotifyEvent : QWSEvent {
321 QWSPropertyNotifyEvent()
322 : QWSEvent( QWSEvent::PropertyNotify, sizeof( simpleData ),
323 (char*)&simpleData ) {}
328 -struct QWSSelectionClearEvent : QWSEvent {
329 +struct Q_EXPORT QWSSelectionClearEvent : QWSEvent {
330 QWSSelectionClearEvent()
331 : QWSEvent( QWSEvent::SelectionClear, sizeof( simpleData ),
332 (char*)&simpleData ) {}
337 -struct QWSSelectionRequestEvent : QWSEvent {
338 +struct Q_EXPORT QWSSelectionRequestEvent : QWSEvent {
339 QWSSelectionRequestEvent()
340 : QWSEvent( QWSEvent::SelectionRequest, sizeof( simpleData ),
341 (char*)&simpleData ) {}
346 -struct QWSSelectionNotifyEvent : QWSEvent {
347 +struct Q_EXPORT QWSSelectionNotifyEvent : QWSEvent {
348 QWSSelectionNotifyEvent()
349 : QWSEvent( QWSEvent::SelectionNotify, sizeof( simpleData ),
350 (char*)&simpleData ) {}
355 -struct QWSRegionModifiedEvent : QWSEvent {
356 +struct Q_EXPORT QWSRegionModifiedEvent : QWSEvent {
357 QWSRegionModifiedEvent()
358 : QWSEvent( QWSEvent::RegionModified, sizeof( simpleData ),
363 #ifndef QT_NO_QWS_PROPERTIES
364 -struct QWSPropertyReplyEvent : QWSEvent {
365 +struct Q_EXPORT QWSPropertyReplyEvent : QWSEvent {
366 QWSPropertyReplyEvent()
367 : QWSEvent( QWSEvent::PropertyReply, sizeof( simpleData ),
368 (char*)&simpleData ) {}
370 #endif //QT_NO_QWS_PROPERTIES
373 -struct QWSQCopMessageEvent : QWSEvent {
374 +struct Q_EXPORT QWSQCopMessageEvent : QWSEvent {
375 QWSQCopMessageEvent()
376 : QWSEvent( QWSEvent::QCopMessage, sizeof( simpleData ),
382 -struct QWSWindowOperationEvent : QWSEvent {
383 +struct Q_EXPORT QWSWindowOperationEvent : QWSEvent {
384 QWSWindowOperationEvent()
385 : QWSEvent( WindowOperation, sizeof( simpleData ), (char*)&simpleData ) { }
391 -struct QWSIMEvent : QWSEvent {
392 +struct Q_EXPORT QWSIMEvent : QWSEvent {
394 : QWSEvent( IMEvent, sizeof( simpleData ), (char*)&simpleData ) { }
396 --- qt-2.3.9-snapshot-20050114/src/kernel/qwsmanager_qws.h~qt-visibility
397 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwsmanager_qws.h
402 -class QWSManager : public QObject
403 +class Q_EXPORT QWSManager : public QObject
407 --- qt-2.3.9-snapshot-20050114/src/kernel/qwsmouse_qws.h~qt-visibility
408 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwsmouse_qws.h
410 #include <qpointarray.h>
413 -class QWSPointerCalibrationData
414 +class Q_EXPORT QWSPointerCalibrationData
417 enum Location { TopLeft = 0, BottomLeft = 1, BottomRight = 2, TopRight = 3,
419 QPoint screenPoints[5];
422 -class QWSMouseHandler : public QObject {
423 +class Q_EXPORT QWSMouseHandler : public QObject {
427 --- qt-2.3.9-snapshot-20050114/src/kernel/qwsproperty_qws.h~qt-visibility
428 +++ qt-2.3.9-snapshot-20050114/src/kernel/qwsproperty_qws.h
431 class QWSPropertyManagerData;
433 -class QWSPropertyManager
434 +class Q_EXPORT QWSPropertyManager
438 --- qt-2.3.9-snapshot-20050114/src/kernel/qlayoutengine.cpp~qt-visibility
439 +++ qt-2.3.9-snapshot-20050114/src/kernel/qlayoutengine.cpp
441 pos and space give the interval (relative to parentWidget topLeft.)
444 -void qGeomCalc( QArray<QLayoutStruct> &chain, int start, int count, int pos,
445 +void Q_EXPORT qGeomCalc( QArray<QLayoutStruct> &chain, int start, int count, int pos,
446 int space, int spacer )
449 --- qt-2.3.9-snapshot-20050114/src/kernel/qfontmanager_qws.h~qt-visibility
450 +++ qt-2.3.9-snapshot-20050114/src/kernel/qfontmanager_qws.h
452 // e.g. Truetype Times, 10 point. There's only one of these though;
453 // we want to share generated glyphs
455 -class QRenderedFont {
456 +class Q_EXPORT QRenderedFont {