William Stein wrote: >> I've never run Gentoo linux and have not run Linux much, so I am not saying >> your >> approach of using system libraries, rather than Sage libraries is wrong. In >> fact, your approach is more typical of how most software packages are built. >> I >> do not know of any other where the source file consists of virtually all the >> software needed to build a package. > > Commercial software is sometimes built this way... but you'll never know :-)
Yes, I realise that. But Sage's approach is quite unusual in the open-source world. Normally there is a file which tell you what to install. If there were 100 dependencies, I suspect 99% of people would give up. >> If you were porting to VMS, then I could see that having one method for >> Unix-like systems and another for VMS might be quite reasonable. Likewise I >> can >> see the logic for Windows. But I'm less convinced myself about the wisdom of >> using a different approach on Gentoo, then on any other Unix or Linux system. > > Well the default sage-x.y.z.tar source distribution will continue to > build the same way on Gentoo as everywhere else. François is just > properly integrating a Gentoo-provided Sage into the Gentoo > environment. This is exactly like Tim Abbott integrating Sage into > Debian. OK. My understanding of Gentoo is limited. I gather it all gets built from source, so I can see the logic. >>> Of course checking whether you can use a system package rather than >>> the sage provided one is a big complication, which would get lots of -1 >>> if suggested. But it is nice to know that it is actually doable. >> Yes, I can imagine you would get lots of -1's. > > It wouldn't be so bad to try this but have it *off* by default, and > make it so one can turn it on with an environment variable. I suspect it needs one environment variable for each package, so one can choose whether or not to install a particular library. Perhaps one variable which stops all libraries being built, and another specific libraries. So the readline.spkg would have something like: if [ "x$SAGE_NO_LIBS" = "xyes" ] || [ "x$SAGE_NO_READLINE" = "xyes" ] ; then # do not build readline, but exit as if built properly. exit 0 fi That way, SAGE_NO_LIBS could be used to stop all libraries being built, and SAGE_NO_READLINE could be used to stop just readline being built. I suspect the issue with gnutls not building on OpenSolaris http://trac.sagemath.org/sage_trac/ticket/7387 could be solved if there were environment variables SAGE_NO_GPG_ERROR and SAGE_NO_GCRYPT in the packages for libgpg_error-1.6.p2.spkg and libgcrypt-1.4.4.p1.spkg. I say that, as if those headers and libraries are deleted from the SAGE_LOCAL, OpenSolaris will get further than it otherwise does. (It does eventually fail elsewhere). Dave -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org