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
-~----------~----~----~----~------~----~------~--~---

Reply via email to