The attached patch make use of GCC's support for ELF
symbols visibility to hide all the symbols that are
not needed for the library to be used by other
programs, in particular it drops all the private
functions of the C++ classes.
Hiding symbols allows to have more control over the
API that is exported to other software, makes less
likely collisions if an internal copy of a library is
used or if an internal symbol with the same symbol is
present, but also allows the compiler to do a better
job at optimisations and decrease startup time of the
software using the library (as it's less symbols to
Diego "Flameeyes" Pettenò
Log in to post a comment.