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]

Reply via email to