libm4ri has two issues that I am aware of as soon as one tries to use a
non-GNU or non-86 environment.
I believe the developers hang out here, so I'll put a bit of information
here, on the hope they see it.
1) Despite the fact Sun's C compiler can compile thousands of lines of
Sage without any problem, libm4ri's configure script says the compiler
can't create executables:
http://sagetrac.org/sage_trac/ticket/7037
This is clearly is a bug that needs fixing. Plenty of other configure
scripts have checked the compiler and decides it works.
2) On HP-UX, the configure script can't work out how many CPUs I have,
what sort they are, but then tries to determine the cache size. This
causes the configure script to break.
The macro for determining the number of CPUs
http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_count_cpus.m4
is clearly only designed to work on linux and Mac. So it will fail on
other platforms, including Solaris which is supported, and HP-UX which
is not.
The macro for determining cache sizes will only work on x86 CPUs.
It seems to me there are two issues here.
1) The code for checking the C compiler is broken.
2) Code for checking CPU-related things should only be done on platforms
where the macros work. It would clearly be very difficult to rewrite the
macros to work on every platform, but it should not be so hard to ensure
the macros are only called on platforms where they will work. One way to
do this would probably be to executed bits of code only if certain
preprocessor items are defined. I believe there is an autoconf macro
which will determine if for example __hpux__ is defined, in which case
execute code for HP-UX.
I don't mind having a go at refining the macro for computing the number
of CPUs, so it at least work on Solaris, AIX and HP-UX.
Cache sizes is not something I want to get into. I think it would be
sensible to just report 1 MB or something like that.
I do not know why these macros cause failures to build on HP-UX but not
Solaris. It is clear from looking at the source they will not work on
either platform.
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
-~--~~~~--~~--~--~---