In the various ImportExport.h headers we #define dllimport/dllexport macros for
windows based on the following conditionals:
./include/qpid/console/ConsoleImportExport.h:24:#if defined(CONSOLE_EXPORT) ||
defined (qmfconsole_EXPORTS)
./include/qpid/client/ClientImportExport.h:24:#if defined(CLIENT_EXPORT) ||
defined (qpidclient_EXPORTS)
./include/qpid/messaging/ImportExport.h:24:#if defined(CLIENT_EXPORT) || defined
(qpidmessaging_EXPORTS)
./include/qpid/CommonImportExport.h:24:#if defined(COMMON_EXPORT) || defined
(qpidcommon_EXPORTS)
./include/qmf/engine/QmfEngineImportExport.h:24:# if defined(QMF_EXPORT) ||
defined (qmfengine_EXPORTS)
./include/qmf/QmfImportExport.h:24:# if defined(QMF_EXPORT) || defined
(qmfcommon_EXPORTS)
./src/qpid/broker/BrokerImportExport.h:24:#if defined(BROKER_EXPORT) || defined
(qpidbroker_EXPORTS)
As far as I can tell, the first symbol in each case (CONSOLE_EXPORT,
CLIENT_EXPORT etc.) is never defined anywhere in the cmake or the automake build
system. The second symbol (qpidcommon_EXPORTS etc.) is defined in the cmake
generated makefiles.
So does the first symbol actually have a purpose? If not can I remove it and
just make the tests:
#if defined (qmfconsole_EXPORTS)
etc.
I'm trying to understand the setup so I can introduce some visibility
declarations for gcc, don't want to step on anything.
Cheers,
Alan.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]