[MacPorts] #15578: gmp: universal build is broken (t-get_d test fails)
#15578: gmp: universal build is broken (t-get_d test fails) -------------------------------------+-------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Keywords: | -------------------------------------+-------------------------------------- I enabled the universal variant of gmp in r37327 because it seemed to build, but the test suite fails: {{{ creating t-scan make check-TESTS PASS: t-asmtype PASS: t-aors_1 PASS: t-divrem_1 PASS: t-fat mpn_get_d wrong on 2^n bit 0 exp 0 want_bit 0 sign 0 n =0x1 nsize 1 want =[00 00 00 00 00 00 F0 3F] 1 got =[FE 07 00 00 00 00 00 00] 1.0108583113911904294e-320 FAIL: t-get_d PASS: t-instrument PASS: t-iord_u PASS: t-mp_bases PASS: t-perfsqr PASS: t-scan ================================== 1 of 10 tests failed Please report to gmp-bugs@swox.com ================================== make[4]: *** [check-TESTS] Error 1 make[3]: *** [check-am] Error 2 make[2]: *** [check-recursive] Error 1 make[1]: *** [check-recursive] Error 1 make: *** [check] Error 2 }}} I'm [http://gmplib.org/list-archives/gmp-bugs/2008-June/001031.html asking the developers] for help with this problem. -- Ticket URL: <http://trac.macports.org/ticket/15578> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: | Keywords: --------------------------------------+------------------------------------- Comment (by ryandesign@macports.org): The developers have not been helpful and I haven't had sufficient time to look into this so I just disabled the universal variant again for now in r37785. -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: | Keywords: Port: | --------------------------------------+------------------------------------- Comment(by illogic-al@macports.org): Hi. I just "fixed" gmp to allow for universal builds in a recent check-in. I didn't realize this ticket was here. But, now that it's all said and done, I'd like to keep it as is until I test out some software which requires it. I'll report back on what happens when run on a ppc and intel machine. -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: | Keywords: Port: gmp | --------------------------------------+------------------------------------- Changes (by ryandesign@macports.org): * port: => gmp Comment: Removed universal variant again because it does not produce a viable gmp. See notes in duplicate #16935. The gmp developers are [http://gmplib.org/macos.html hostile towards the use of Apple gcc in general]; they are unlikely to support a universal build. Please see the above referenced conversation I had with the developers of gmp in which they [http://gmplib.org/list-archives/gmp-bugs/2008-June/001033.html did not even know what a universal binary was]. -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: | Keywords: Port: gmp | --------------------------------------+------------------------------------- Comment(by illogic-al@macports.org): Unfortunate, but understandable. I tested the app using gmp (KCalc) and from my limited testing it worked fine. I saw the other bug about the UB failing compilation on ppc however so that doesn't help much. Do you think I should try to do that builds for each arch separately, as with cairo? We could provide each generated file in the port's file directory, then copy it over after configure right? I don't actually _need_ this Portfile to build as a universal (since I know how now) but I think it works when it does get built that way, so we might as well give it a shot i think. Also I think I'll bug the gmp people again. :-) -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: | Keywords: Port: gmp | --------------------------------------+------------------------------------- Comment(by blb@macports.org): One issue I noticed was the gmp.h header file, which as (among other things) !__GMP_HAVE_HOST_CPU_FAMILY_powerpc, on Intel it's 0, PowerPC it's a 1, so the header file is technically not universal... -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: | Keywords: Port: gmp | --------------------------------------+------------------------------------- Comment(by ryandesign@macports.org): Replying to [comment:6 blb@…]:
One issue I noticed was the gmp.h header file, which as (among other things) !__GMP_HAVE_HOST_CPU_FAMILY_powerpc, on Intel it's 0, PowerPC it's a 1, so the header file is technically not universal...
Right. We've overcome things like that in other ports; see the glib2 port for example. It would be nice to have a universal gmp. We would need to see if gmp can be cross-compiled at all. If it can, then we still have the problem that probably the test suite cannot be run for the non-native architecture (at least, the Intel parts can probably not be tested on PowerPC; the PowerPC parts might be testable on Intel via Rosetta). I have learned the hard way (and it is stated in the gmp documentation) that the test suite must must must pass before you can use the built gmp. Otherwise you're just asking for trouble. -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@macports.org | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: | Keywords: Port: gmp | --------------------------------------+------------------------------------- Comment(by illogic-al@macports.org): Replying to [comment:7 ryandesign@…]:
It would be nice to have a universal gmp. We would need to see if gmp can be cross-compiled at all. If it can, then we still have the problem that probably the test suite cannot be run for the non-native architecture (at least, the Intel parts can probably not be tested on PowerPC; the PowerPC parts might be testable on Intel via Rosetta). I have learned the hard way (and it is stated in the gmp documentation) that the test suite must must must pass before you can use the built gmp. Otherwise you're just asking for trouble.
Ok so the app I've tested, kcalc, links to a universal libgmp. I've tested on intel and ppc (rosetta) and nothing crashes. I'll ask the gmp developers this weekend. -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) -------------------------------------+-------------------------------------- Reporter: ryandesign@… | Owner: ryandesign@… Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Keywords: | Port: gmp -------------------------------------+-------------------------------------- Changes (by blb@…): * cc: mcalhoun@… (added) Comment: Is this still an issue with gmp using muniversal? -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) -------------------------------------+-------------------------------------- Reporter: ryandesign@… | Owner: ryandesign@… Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Keywords: | Port: gmp -------------------------------------+-------------------------------------- Comment(by mcalhoun@…): As it stands now, gmp can build universal:[[BR]] On an Intel Mac: ppc/i386, ppc/x86_64, or i386/x86_64[[BR]] On a PPC Mac: ppc/ppc64 All the tests pass on the configurations I can test. This is not quite ideal (no ppc/i386/x86_64 or 4-way universal), but there are no plans to improve the situation.[[BR]] I would vote this ticket be closed. -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15578: gmp: universal build is broken (t-get_d test fails) --------------------------------------+------------------------------------- Reporter: ryandesign@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Resolution: fixed | Keywords: Port: gmp | --------------------------------------+------------------------------------- Changes (by ryandesign@…): * status: new => closed * resolution: => fixed Comment: I built an i386/x86_64 universal and it passed all tests, so that's good. It's better than no universal at all. I'll close this for now. -- Ticket URL: <http://trac.macports.org/ticket/15578#comment:11> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts