| Summary: | dev-libs/{mpfr,gmp} & media-libs/freetype fails to build on armv3 | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Alan Hourihane <alanh> |
| Component: | [OLD] Development | Assignee: | Gentoo ARM Porters <arm> |
| Status: | RESOLVED OBSOLETE | ||
| Severity: | normal | ||
| Priority: | High | ||
| Version: | 2005.1 | ||
| Hardware: | ARM | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
|
Description
Alan Hourihane
2007-07-25 21:27:55 UTC
Oh, I know this is because I'm using -march=armv3, but the Acorn RiscPC has a strongarm CPU, but it doesn't support half-word, so using armv3 is the best route. I guess I can workaround this by disabling fortran, and it'll avoid gcc pulling in mpfr and thus gmp. arm3 is not supported and i dont ever plan on supporting it [directly] you're free to post patches and if they're OK i'll merge them, but that's it O.k. so the fortran hack no longer works, so I'll re-open this given you said you'd support patches if they're o.k. So I could use a little help on the best way to integrate this. I have a solution where all that needs to happen is remove the offending files from the build when CFLAGS has armv3 defined and gmp builds with the generic code. Is there a way in portage to detect what's in CFLAGS and adjust accordingly ? This is all I need to do in src_unpack()....
rm -f mpn/arm/{mul_1.asm,addmul_1.asm,invert_limb.asm,submul_1.asm}
sed -i -e 's/#if 1/#if 0/' longlong.h
Also, had to do this to mpfr-2.4.1_p1.ebuild.... sed -i -e 's/#if 1/#if 0/' mpfr-longlong.h again in src_unpack(). Any help ? Also freetype also needs a fix that I guess depends on -march=armv3 in CFLAGS. Can this be achieved ??? vapier - any help on this ? you could change the '#if 1 ...' to: #if (!defined(__ARM_ARCH_2__) && !defined(__ARM_ARCH_3__)) ... I guess that'd be o.k. for mpfr, but given I need to delete some files from gmp, I guess this should be o.k. too... if is-flags -march=armv3; then... ...do stuff... fi Is that acceptable in an ebuild ? (In reply to comment #8) > Also freetype also needs a fix that I guess depends on -march=armv3 in CFLAGS. For freetype we need this... if is-flags -march=armv3; then enable_option FT_CONFIG_OPTION_NO_ASSEMBLER fi ping vapier ? another ping . i'm looking for a fix to go in the packages themselves, not be worked around in the ebuild. we cant send that upstream. Closing this as the Acorn RiscPC can use armv3m instead, which supports these instructions. |