Define public/private library symbols with gcc
----------------------------------------------
Key: QPID-3163
URL: https://issues.apache.org/jira/browse/QPID-3163
Project: Qpid
Issue Type: Improvement
Components: C++ Client
Affects Versions: 0.11
Reporter: Alan Conway
Assignee: Alan Conway
Fix For: 0.11
Currently qpid libraries built with gcc export all symbols, public and private.
This makes it difficult to define the public interface of our libraries and to
create automated tools that can verify compatibility between library versions
or detect incompatible changes.
gcc provides a flag flag to make symbols hidden by default
(--fvisibility=hidden), and the qpid source code already has macros to mark
public functions, the FOO_EXTERN macros defined to support exporting the public
API on Windows. By suitably defining these macros for gcc we can control the
symbols exported by our libraries.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]