On Jun 6, 5:48 am, Bryan L Newbold <[EMAIL PROTECTED]> wrote: Hi Bryan,
> Wow you're fast! I work full time on Sage thanks to William and I have no life, so no surprises on my end ;) > I'm running ./sage -t * with 3.0.3 under emulation right > now and trying a new compile, I intended to post results once they > completed. Do you mean 3.0.2 or are you actually running a 3.0.3.alphaX binary? I am interested in any failures you see. > Sorry not to have been in communication, I've just finished my finals and > would like to pitch in and help. Help is always welcome and I am more than happy that someone else wants to get things done for FreeBSD. I didn't want to imply that you were stepping on my turf, so I am glad my email didn't get misunderstood. I don't know if you followed the Solaris threads, but we finally found and fixed a bug in libSingular that made over a hundred doctests segfault, so now we finally are close to a working Solaris 10 port on at least x86. > It feels like the port is very close, do > you intend to submit port files and stay in contact with the freebsd ports > people to track releases? I personally have no such intent since I am a "compile from source" kind of guy. I know too little about pkg files to be helpful, but I assume it would be little work to add them. In the end it all depends if you want to do a full compartmentalization of Sage like the Debian effort (think 70+ individual debs where 25 or so are new and the rest is used from Debian proper) or if you want one big honking tarball. Option (2) is certainly much easier and I intent to make Sage compile out of the box on *BSD provided the regular dependencies + gmake is installed. I am more than happy to pay special attention to any patches from *BSD that reduces their workload since I believe that everything should get pushed upstream. I think packaging Sage for various OSes is very important, but I personally always prefer the power to compile myself, i.e. I can install as many version of Sage in parallel and do funny experiments myself while the normal "apt get Sage" installs one version in one location and that is about it. That is likely what most people who want to use Sage desire, but I am porting Sage and I don't use it in the traditional sense. I.e. I don't do mathematical research and should a gang of elliptic functions ever mug me in a dark alley I couldn't tell the policy their genus ;). [I hope that makes sense, apologies to John Cremona and others for still not knowing more about elliptic curves] > Writing the Makefile will take a little thought > w/r/t future compatability. Yes. But I consider it ok to require gmake. As is freetype will only compile with gmake and I am aware that there is a FreeBSD port for it. I did poke around in it, but in the end it wasn't worth it to make that code merge into Sage's freetype.spkg. I will just build it with gmake on *BSD and Solaris. Besides eclib and FLINT there are also some optional spkgs that use gmake specific extensions and while it is a long term goal to fix all the GNUism in the codebase it will take a while to get there. So for now I am willing to work around those issues since a native FreeBSD version is more desirable now than a binary running under emulation. > I was thinking of writing up a linux-sage-math port which would install > binaries and require the appropriate kernel emulation and base tools, but > I think the real port is close enough to skip that kind of crutch. Yes, this much will be the final push to finish the Solaris, 64 bit OSX ports and resurrect the Cygwin port. And as the Solaris port matures the FreeBSD port will be nearly done, so it is definitely on the menu. My goal for the BSDs is actually OpenBSD since it offers a special malloc mode that mmaps ever individual malloc to it own page an un-mmaps it on free. So any use-after-free results in a segfault which is a great way to find those bugs in Sage. I know I am a masochist to go out looking for trouble like that, but it is very important to get the quality of Sage up. ;) > > * Nearly everything happening for the Solaris port also fixes *BSD > > issues > > It certainly seems so, with the exception of g/tar (tar -i didn't work, > i'll make a list of scripts using that option) everything is compiling > very smoothly. (edit: got as far as ntl) ok. Feel free to post a list of issues which we can then turn into tickets on trac. Regarding: tar vs. gtar: It seems like the twisted.spkg is somehow broken under BSD tar [at least on Solaris], but untarring and rebuilding the spkg with Sun's tar fixes the issue. We do use certain options that a gtar specific and those should be removed. GNUism these days is the enemy of portable software for Unix- y operating systems. Ten years ago everything ran out of the box on Solaris and Linux was the OS that had to deal with issues, these days the tables have turned and you will not believe how much crap I have to deal with on a regular basis to even compile Sage on Solaris ;) > > * It would help a lot if somebody made a simple 32 and/or 64 bit 6.3 > > and/or 7.0 FreeBSD VMWare image since we need to automatically test > > and the easiest way to do that is via VMWare image that William and I > > integrate into the test farm > > I've never done this before, but i'll give it a try. From your previous > email it looks like it should be "[...] as small as possible, i.e. basic > setup without GUI + dev tools [gcc mostly]." ssh should be running and be reachable from the "outside". I assume you know how to generate a key pair and so on. It did surprise me that things like that weren't done automatically, but I guess that is the very Unix tradition of FreeBSD. Since I ran Linux from scratch for years it wasn't "hard" to fix, I just think it is the difference in doing things. > Do you have any other requirements? A list on the wiki of what every > minimal testing image should include? And I assume you meant /with/ dev > tools like gcc, not without? Besides the packages listed in README we also need bash and gmake. Some editor like nano would be nice. I was shocked to see that building vim on FreeBSD 6.2 from pkg sources required gtk. Both bash and gmake should be in their default location, i.e. /usr/local/bin IIRC. We don't want to make any modifications to the default OS setups since that will likely introduce issues down the road since people do not read documentation ;) > -bryan > > (ps, re: usernames, it looks like google has changed their account > linking?) I am not sure what you are hinting at there. Cheers, Michael --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---