This is the mail archive of the
libc-help@sourceware.org
mailing list for the glibc project.
Re: abi-variants question
On Wed, 2012-10-03 at 15:53 -0400, Carlos O'Donell wrote:
> The installed stub file is defined in Makefile, which always
> installs the default ABI stub file e.g. stubs-$(default-abi).h.
>
> Which for MIPS is o32. Did you break the selection of the appropriate
> MIPS-specific Makefile which sets default-abi?
>
> Cheers,
> Carlos.
OK, that helped. I found these Makefiles:
ports/sysdeps/unix/sysv/linux/mips/mips32/Makefile
ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Makefile
ports/sysdeps/unix/sysv/linux/mips/mips64/n64/Makefile
Where default-abi was being set to o32, n32, or n64. I changed these
to o32_hard, n32_hard, and n64_hard and now I get the stubs-o32_hard.h,
stubs-n32_hard.h, and stubs-n64_hard.h files, but no *_soft.h files. I
assume that I need to create more Makefiles where I set default-abi to
o32_soft, n32_soft, and n64_soft.
It is not entirely clear to me how these Makefiles are selected, I am
guessing that it is done based on $machine and looking at the mips
preconfigure script I see some things that match up to that idea:
machine=mips/mips64/n32
machine=mips/mips64/n64
and other things that look odd:
machine=mips/mips32/kern64 (there is no such directory in glibc)
machine=mips/mips32/$machine (not sure what this is trying to do)
maybe it doesn't matter that these don't exist and it uses $base_machine?
Steve Ellcey
sellcey@mips.com