diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2021-06-23 17:21:16 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2021-06-25 02:30:13 +0200 |
commit | e2034480561f1266bd0fa975ba74956b0301695f (patch) | |
tree | 481ddecadf7a42b7a1abc7675fe914dec2d0f5c3 | |
parent | 83e511dfa6f07547011cb1230b0f71f7a4e72351 (diff) | |
download | kopete-otr-e2034480561f1266bd0fa975ba74956b0301695f.tar.gz kopete-otr-e2034480561f1266bd0fa975ba74956b0301695f.zip |
Separate OTRPlugin object code from the OTRPluginFactory definition.
This resolves bug 1153.
Fix support for GCC hidden visibility.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
(cherry picked from commit 8403288e0159dbe377403e5f089072685a9d94f3)
-rw-r--r-- | src/Makefile.am | 8 | ||||
-rw-r--r-- | src/otrlchatinterface.h | 4 | ||||
-rw-r--r-- | src/otrlconfinterface.h | 2 | ||||
-rw-r--r-- | src/otrplugin-factory.cpp | 32 | ||||
-rw-r--r-- | src/otrplugin.cpp | 3 | ||||
-rw-r--r-- | src/otrplugin.h | 2 |
6 files changed, 41 insertions, 10 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 0486258..06300a5 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -8,8 +8,8 @@ INCLUDES = $(all_includes) -I$(kde_includes)/kopete -I$(kde_includes)/tde/kopete kde_module_LTLIBRARIES = kcm_kopete_otr.la kopete_otr.la -kopete_otr_la_SOURCES = kopete_otr.kcfgc otrguiclient.cpp otrplugin.cpp - +kopete_otr_la_SOURCES = otrplugin-factory.cpp + kopete_otr_la_LDFLAGS = -module -no-undefined $(KDE_PLUGIN) $(all_libraries) $(LIB_QT) $(LIB_TDECORE) $(LIB_TDEUI) \ -lkopete @@ -39,7 +39,9 @@ rc_DATA = otrchatui.rc otrui.rc lib_LTLIBRARIES = libkotr.la libkotr_la_LDFLAGS = $(all_libraries) $(LIB_QT) $(LIB_TDECORE) $(LIB_TDEUI) -libkotr_la_SOURCES = otrlchatinterface.cpp otrlconfinterface.cpp \ +libkotr_la_SOURCES = \ + kopete_otr.kcfgc otrguiclient.cpp otrplugin.cpp \ + otrlchatinterface.cpp otrlconfinterface.cpp \ privkeypopup.cpp privkeypopupui.ui smppopup.cpp smppopupui.ui verifypopup.cpp \ verifypopupui.ui libkotr_la_LIBADD = -lotr diff --git a/src/otrlchatinterface.h b/src/otrlchatinterface.h index 1f2fd3e..c4a9428 100644 --- a/src/otrlchatinterface.h +++ b/src/otrlchatinterface.h @@ -41,7 +41,7 @@ extern "C" { #include <libotr/userstate.h> } -class OtrlChatInterface: public TQObject +class KDE_EXPORT OtrlChatInterface: public TQObject { Q_OBJECT @@ -82,7 +82,7 @@ private: TQTimer m_forwardSecrecyTimer; }; - class KeyGenThread : public TQThread { +class KeyGenThread : public TQThread { private: TQString accountname; diff --git a/src/otrlconfinterface.h b/src/otrlconfinterface.h index 5cfe244..801889a 100644 --- a/src/otrlconfinterface.h +++ b/src/otrlconfinterface.h @@ -40,7 +40,7 @@ extern "C" { #include <libotr/context.h> } -class OtrlConfInterface +class KDE_EXPORT OtrlConfInterface { public: diff --git a/src/otrplugin-factory.cpp b/src/otrplugin-factory.cpp new file mode 100644 index 0000000..bf1df9f --- /dev/null +++ b/src/otrplugin-factory.cpp @@ -0,0 +1,32 @@ +/*************************************************************************** + * Copyright (C) 2007 by Michael Zanetti * + * * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * + ***************************************************************************/ + +#include <kgenericfactory.h> +#include <tdeaboutdata.h> + +#include "otrplugin.h" + +/** + * @author Michael Zanetti + */ + +typedef KGenericFactory<OTRPlugin> OTRPluginFactory; +static const TDEAboutData aboutdata("kopete_otr", I18N_NOOP("OTR") , "0.7" ); +K_EXPORT_COMPONENT_FACTORY( kopete_otr, OTRPluginFactory( &aboutdata ) ) diff --git a/src/otrplugin.cpp b/src/otrplugin.cpp index a9b918b..0d9a5fe 100644 --- a/src/otrplugin.cpp +++ b/src/otrplugin.cpp @@ -31,7 +31,6 @@ #include <tdeconfig.h> #include <kgenericfactory.h> #include <tdeversion.h> -#include <tdeaboutdata.h> #include <kstandarddirs.h> #include <tdemessagebox.h> @@ -59,8 +58,6 @@ typedef KGenericFactory<OTRPlugin> OTRPluginFactory; -static const TDEAboutData aboutdata("kopete_otr", I18N_NOOP("OTR") , "0.7" ); -K_EXPORT_COMPONENT_FACTORY( kopete_otr, OTRPluginFactory( &aboutdata ) ) OTRPlugin::OTRPlugin( TQObject *parent, const char *name, const TQStringList & /* args */ ) : Kopete::Plugin( OTRPluginFactory::instance(), parent, name ) diff --git a/src/otrplugin.h b/src/otrplugin.h index da6b320..14d582b 100644 --- a/src/otrplugin.h +++ b/src/otrplugin.h @@ -65,7 +65,7 @@ public: } }; -class OTRPlugin : public Kopete::Plugin +class KDE_EXPORT OTRPlugin : public Kopete::Plugin { Q_OBJECT |