Enable gcc visibility support in Qt3

This partially closes Bug 696
pull/2/head
Timothy Pearson 13 years ago
parent e278b85873
commit 5e47b11f23

1
configure vendored

@ -1080,6 +1080,7 @@ done
[ -d $outpath/src/tools ] || mkdir -p $outpath/src/tools [ -d $outpath/src/tools ] || mkdir -p $outpath/src/tools
cat > $outpath/src/tools/qconfig.cpp.new <<EOF cat > $outpath/src/tools/qconfig.cpp.new <<EOF
/* Install paths from configure */ /* Install paths from configure */
#include "qglobal.h"
static const char QT_INSTALL_PREFIX [267] = "qt_nstpath=$QT_INSTALL_PREFIX"; static const char QT_INSTALL_PREFIX [267] = "qt_nstpath=$QT_INSTALL_PREFIX";
static const char QT_INSTALL_BINS [267] = "qt_binpath=$QT_INSTALL_BINS"; static const char QT_INSTALL_BINS [267] = "qt_binpath=$QT_INSTALL_BINS";

@ -16,7 +16,7 @@ QMAKE_YACCFLAGS = -d
QMAKE_YACCFLAGS_MANGLE = -p $base -b $base QMAKE_YACCFLAGS_MANGLE = -p $base -b $base
QMAKE_YACC_HEADER = $base.tab.h QMAKE_YACC_HEADER = $base.tab.h
QMAKE_YACC_SOURCE = $base.tab.c QMAKE_YACC_SOURCE = $base.tab.c
QMAKE_CFLAGS = -pipe -g QMAKE_CFLAGS = -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden
QMAKE_CFLAGS_DEPS = -M QMAKE_CFLAGS_DEPS = -M
QMAKE_CFLAGS_WARN_ON = -Wall -W QMAKE_CFLAGS_WARN_ON = -Wall -W
QMAKE_CFLAGS_WARN_OFF = -w QMAKE_CFLAGS_WARN_OFF = -w

@ -337,7 +337,7 @@ static long qt_mode_switch_remove_mask = 0;
// flags for extensions for special Languages, currently only for RTL languages // flags for extensions for special Languages, currently only for RTL languages
static bool qt_use_rtl_extensions = FALSE; static bool qt_use_rtl_extensions = FALSE;
bool qt_hebrew_keyboard_hack = FALSE; Q_EXPORT bool qt_hebrew_keyboard_hack = FALSE;
static Window mouseActWindow = 0; // window where mouse is static Window mouseActWindow = 0; // window where mouse is
static int mouseButtonPressed = 0; // last mouse button pressed static int mouseButtonPressed = 0; // last mouse button pressed
@ -3851,7 +3851,7 @@ void qt_leave_modal( QWidget *widget )
} }
bool qt_try_modal( QWidget *widget, XEvent *event ) Q_EXPORT bool qt_try_modal( QWidget *widget, XEvent *event )
{ {
if (qt_xdnd_dragging) { if (qt_xdnd_dragging) {
// allow mouse events while DnD is active // allow mouse events while DnD is active

@ -93,35 +93,19 @@
return i->iface(); \ return i->iface(); \
} }
# ifdef Q_WS_WIN #if defined(Q_WS_WIN) && defined(Q_CC_BOR)
# ifdef Q_CC_BOR # define Q_STDCALL __stdcall
# define Q_EXPORT_PLUGIN(PLUGIN) \ #else
Q_PLUGIN_VERIFICATION_DATA \ # define Q_STDCALL
Q_EXTERN_C __declspec(dllexport) \ #endif
const char * __stdcall qt_ucm_query_verification_data() \
{ return qt_ucm_verification_data; } \ #define Q_EXPORT_PLUGIN(PLUGIN) \
Q_EXTERN_C __declspec(dllexport) QUnknownInterface* \
__stdcall ucm_instantiate() \
Q_PLUGIN_INSTANTIATE( PLUGIN )
# else
# define Q_EXPORT_PLUGIN(PLUGIN) \
Q_PLUGIN_VERIFICATION_DATA \
Q_EXTERN_C __declspec(dllexport) \
const char *qt_ucm_query_verification_data() \
{ return qt_ucm_verification_data; } \
Q_EXTERN_C __declspec(dllexport) QUnknownInterface* ucm_instantiate() \
Q_PLUGIN_INSTANTIATE( PLUGIN )
# endif
# else
# define Q_EXPORT_PLUGIN(PLUGIN) \
Q_PLUGIN_VERIFICATION_DATA \ Q_PLUGIN_VERIFICATION_DATA \
Q_EXTERN_C \ Q_EXTERN_C Q_EXPORT \
const char *qt_ucm_query_verification_data() \ const char * Q_STDCALL qt_ucm_query_verification_data() \
{ return qt_ucm_verification_data; } \ { return qt_ucm_verification_data; } \
Q_EXTERN_C QUnknownInterface* ucm_instantiate() \ Q_EXTERN_C Q_EXPORT QUnknownInterface* Q_STDCALL ucm_instantiate() \
Q_PLUGIN_INSTANTIATE( PLUGIN ) Q_PLUGIN_INSTANTIATE( PLUGIN )
# endif
#endif #endif
struct QUnknownInterface; struct QUnknownInterface;

@ -292,7 +292,7 @@ private:
class QFontPrivate; class QFontPrivate;
class QTextEngine { class Q_EXPORT QTextEngine {
public: public:
QTextEngine( const QString &str, QFontPrivate *f ); QTextEngine( const QString &str, QFontPrivate *f );
~QTextEngine(); ~QTextEngine();

@ -885,6 +885,10 @@ class QDataStream;
# define Q_TEMPLATE_EXTERN # define Q_TEMPLATE_EXTERN
# undef Q_DISABLE_COPY /* avoid unresolved externals */ # undef Q_DISABLE_COPY /* avoid unresolved externals */
# endif # endif
#elif defined(Q_CC_GNU) && __GNUC__ - 0 >= 4
# define Q_EXPORT __attribute__((visibility("default")))
# undef QT_MAKEDLL /* ignore these for other platforms */
# undef QT_DLL
#else #else
# undef QT_MAKEDLL /* ignore these for other platforms */ # undef QT_MAKEDLL /* ignore these for other platforms */
# undef QT_DLL # undef QT_DLL

@ -40,7 +40,7 @@
class QDomElement; class QDomElement;
class QDomDocument; class QDomDocument;
class DomTool : public Qt class Q_EXPORT DomTool : public Qt
{ {
public: public:
static QVariant readProperty( const QDomElement& e, const QString& name, const QVariant& defValue ); static QVariant readProperty( const QDomElement& e, const QString& name, const QVariant& defValue );

@ -120,13 +120,13 @@ static QPluginManager<WidgetInterface> *widgetInterfaceManager = 0;
static QMap<QString, bool> *availableWidgetMap = 0; static QMap<QString, bool> *availableWidgetMap = 0;
static QStringList *availableWidgetList = 0; static QStringList *availableWidgetList = 0;
QMap<QWidget*, QString> *qwf_forms = 0; Q_EXPORT QMap<QWidget*, QString> *qwf_forms = 0;
QString *qwf_language = 0; QString *qwf_language = 0;
bool qwf_execute_code = TRUE; Q_EXPORT bool qwf_execute_code = TRUE;
bool qwf_stays_on_top = FALSE; bool qwf_stays_on_top = FALSE;
QString qwf_currFileName = ""; QString qwf_currFileName = "";
QObject *qwf_form_object = 0; QObject *qwf_form_object = 0;
QString *qwf_plugin_dir = 0; Q_EXPORT QString *qwf_plugin_dir = 0;
static void setupPluginDir() static void setupPluginDir()
{ {

@ -55,7 +55,7 @@ class QWidget;
class QWidgetFactoryPrivate; class QWidgetFactoryPrivate;
class UibStrTable; class UibStrTable;
class QWidgetFactory class Q_EXPORT QWidgetFactory
{ {
public: public:
QWidgetFactory(); QWidgetFactory();

Loading…
Cancel
Save