On Saturday 06 August 2011, David Henningsson wrote: > As reported in ticket #98, FluidSynth 1.1.4 dropped one symbol. However, > this symbol (fluid_defsfont_get_sample) is not part of the public API, > so no programs should use it anyway. > > I don't know how much of a big deal this is, really. Can you help me > determine that, and the proper action for it?
It is a bug, and should be resolved. Not a big concern, because as you noticed it is not part of the public API. > Is it something that alone calls for a new release (1.1.5) or can we > just update svn? What implications does bumping the SONAME have? Changing the SONAME because this bug is too much a burden for everybody. My suggestion is to restore the removed symbol with a dummy function body, and release 1.1.5 > IMO, the ideal would be if we could tell gcc to stop exporting all > symbols that are not part of the public API. Then we would get rid of > this problem altogether. Is that possible? Yes, this is possible. But this is a task for the next major release, and of course it requires changing the SONAME anyway. Technically, we need to take into account all platforms and compilers. For the GCC compiler, we have several tools: * gcc arguments CFLAGS=-fvisibility=hidden http://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#index-fvisibility-2198 Source changes. Either: * function attributes: http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html * dllimport and dllexport attributes for Windows platform (we already do this in the macro FLUIDSYNTH_API) * visibility attribute for ELF platforms http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html#index-g_t_0040code_007bvisibility_007d-attribute-2547 * visibility #pragma: http://gcc.gnu.org/onlinedocs/gcc/Visibility-Pragmas.html * we can also include a linker version script as a complement http://sca.uwaterloo.ca/coldfire/gcc-doc/docs/ld_25.html Regards, Pedro _______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/fluid-dev