+1 to moving as much as possible into the individual pyx file and away from 
a global module_list.py

Can't we test for underlinking using ldd / readelf on linux? I'm sure 
somebody has written a solution for that. Documenting is nice, but testing 
is better.


On Tuesday, April 21, 2015 at 4:00:30 AM UTC-4, Jean-Pierre Flori wrote:
>
> Dear all,
>
> It seems we're shifting from the original way we were building Cython 
> extensions where each extension was listed in module_list.py to use 
> wildcards in module_list.py.
> See #7987 and #15410 for wide coverage tickets, and e.g. #17767 for more 
> focused ones.
>
> This is problematic when some file need special linking or should only be 
> optionally compiled.
> The latter matter was in part dealt with in #18145.
> For both one the solution is then to explicitly list the problematic files 
> in module_list.py (on top of the wildcard stuff), or to add cython 
> directives in the file itself.
> That is what was done in #17962.
>
> Should progressively convert all files in this direction?
> That is put Cython directives for linking, including C files and so on, at 
> the top of the pyx file?
> And uses as many wildcards as possible in module_list.py?
> If we do so, we definitely need to update the doc at 
> http://www.sagemath.org/doc/developer/coding_in_cython.html.
>
> I also take this opportunity to remember everyone that underlinking is bad.
> Linux is nice enough not to complain at compile time, but some other 
> platforms do.
> In particular many extensions use functions from GMP (recently lots of 
> files in coding theory and graph theory) but did not list gmp in the 
> libraries to link to.
> That would be another thing to add to the doc.
>
> Best,
> JP
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to