The "correct" way to limit the exported symbols
Created by: evelikov
According to Ulrich Drepper’s paper [1] the current method used in GLVND is the least desirable. The alternatives - annotating the symbols (a) and version scripts (b) being the other options.
Each of them has its drawbacks I'm afraid a) annotating all the private symbols is tedious. f we go for the public ones, the declaration and definitions much have the PUBLIC tag. Which in itself will become part of the API and is likely to conflict with other symbols. b) older linkers (like the one in OpenBSD) do not support version scripts.
For most of mesa I've picked b) so I'm wondering if we don't want something similar here.
Thoughts, suggestions ? -Emil