This is the script that does the dirty work: https://bitbucket.org/vbraun/libgap/src/e3a3adc06dd8/spkg/libGAPify.py
C doesn't have namespaces, its a C++ feature. Of course thats would be a good solution, but not for GAP which is written in (pre-ansi) C. Other good solutions are only exporting the functions that you know you need using __attribute__ visibility but that requires some foresight to what will be useful in the shared library ;-) On Sunday, September 23, 2012 2:57:43 PM UTC+1, John Cremona wrote: > > About prefixing symbols: is there an automatic way to do this or is > it a question of editing all source files (tedious and prone to > error)? And how does it related to using namespaces? > > John > > On 23 September 2012 14:48, mmarco <mma...@unizar.es <javascript:>> > wrote: > > I am really excited about this. My vote would be a big +1. > > > > I guess that, at least for a (long) while, both gap interfaces will > > coexist, since lot of code deppends on the old pexpect one. But the > > speed difference is so big that i think it would be worth the effort > > of porting old code to the new interface. > > > > On 23 sep, 15:40, Volker Braun <vbraun.n...@gmail.com> wrote: > >> LibGAP (the C library interface to GAP) is finally usable and ready to > be > >> released into the wild! We will ship it as a separate spkg since > >> * Upstream doesn't build a shared library > >> * The build system is replaced by standard autotools > >> * To avoid symbol collisions every gap function and global variable > is > >> renamed with a libGAP_ prefix > >> * We add hooks to input/output, error handling, and the GAP memory > >> manager. > >> > >> Actually, prefixing the symbols in a library might be a good idea in > other > >> libraries that were not originally written with sharing in mind. If two > >> functions have the same name in two shared libraries, then (at least on > >> Linux) the first one wins which is almost certainly not what the second > >> library wants. LibGAP does the prefixing with a script using the python > ply > >> module to identify the globals. > >> > >> Per the usual rules, new spkgs need a vote so now is your chance to be > >> heard ;-) > > > > -- > > You received this message because you are subscribed to the Google > Groups "sage-devel" group. > > To post to this group, send email to > > sage-...@googlegroups.com<javascript:>. > > > To unsubscribe from this group, send email to > sage-devel+...@googlegroups.com <javascript:>. > > Visit this group at http://groups.google.com/group/sage-devel?hl=en. > > > > > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To post to this group, send email to sage-devel@googlegroups.com. To unsubscribe from this group, send email to sage-devel+unsubscr...@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel?hl=en.