On Apr 26, 9:49 pm, "Justin C. Walker" <jus...@mac.com> wrote: > I think you are violating your NDA with Apple. I think the only detail I revealed that actually belongs to apple is the version number of darwin 10 (and possibly a "version range" of gcc). Since the last few version numbers have been 7, 8, and 9, I don't think anybody will be too excited that the next one is 10. I could be wrong, lawyers are lawyers. As far as they are concerned, you don't even know if I used a copy of Snow: I could have simply seen the bug and speculated that the pieces of code in question would fail in a future release, then phrased everything as an assertion for convenience's sake. Thanks for your concern, though :)
mabshoff wrote: >> 2) GMP's config.guess fails to run its piece of assembly code to auto- >> detect the CPU type because of some architectural issues (I think cc >> is trying to link a multi-architecture object against a single >> architecture object, failing silently, and declaring the CPU 32-bit >> only). Again, from the sage-3.4.1 directory: > >I am not so sure about this fix. I guess it is CPU dependent. There is >definitely an issue with detecting OSX running on Penryn correctly and >that will be fixed in 3.4.2. To avoid potential duplication of work, here is what I did: Copied config.guess, cpuid.c, and whatever else those needed to work onto my desktop and crippled config.guess so that it didn't remove temporary files. config.guess outputs two files, dummy-1234.s and dummy-1235.c, then compiles them with cc. The compiled program outputs the CPU's true architecture by reading its flags directly. This fails by default on macs, I think because it tries to compile a 64 bit (or ppc?) version and barfs at the pushl and popl instructions. The failure is silently absorbed by config.guess which then takes a wild guess rather than an educated guess, returning i686. My patch forces it to only compile the dummy-whatever.s on ia32, which removes the failure and lets it take an educated guess again. This should work in general, since we have that the uname -m matches "i?86-*-*|x86_64-*-*" from the switch case the code is in, and all the architectures I know that match that pattern also support i386, unless you are supporting really early architectures or 64 bit only CPUs. Tell me if I'm wrong (I would hate to make bad assumptions in other places). I'm looking forward to 3.4.2, I'll tell you how it goes. Even if it does die on exit it would still be useful to me - I'd rather manually kill it than run it in a VM :) --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---