Opened 14 years ago

Closed 14 years ago

#621 closed task (fixed)

uClibc MIPS Level

Reported by: Joe Ciccone Owned by: Joe Ciccone
Priority: major Milestone: CLFS Embedded 1.0.0
Component: BOOK Version: CLFS Embedded GIT
Keywords: Cc:

Description

This needs to be reimplemented when compiling uClibc for mips. Currently the variable is not used.

Change History (6)

comment:1 by Joe Ciccone, 14 years ago

Owner: changed from clfs-commits@… to Joe Ciccone

comment:2 by Joe Ciccone, 14 years ago

Version: CLFS Embedded 1.0.0CLFS Embedded GIT

comment:3 by Andrew Bradford, 14 years ago

Between all the choices for MIPS (gosh, there's a lot), there will end up being 12 different config files for uClibc, just for MIPS.

All the combinations of: [ABI = o32, n32, and n64] [MIPS levels = 1 and 3] [Endian = little and big]

I was considering making a different config file for each of the combinations but now I'm thinking there might be a sed command or two that could help out here and reduce the maintenance headache if we change uClibc versions (and thus need to have new config files in the configs patch) in the future.

comment:4 by Andrew Bradford, 14 years ago

uClibc configuration lines of interest (for either little or big endian) are:

CONFIG_MIPS_O32_ABI=y
# CONFIG_MIPS_N32_ABI is not set
# CONFIG_MIPS_N64_ABI is not set
CONFIG_MIPS_ISA_1=y
# CONFIG_MIPS_ISA_3 is not set

If we leave two configs (as it is today, one for big and one for little endian), pseudo code for changing the current configs might look like:
if $CLFS_ABI == "n32"
then sed command to change "CONFIG_MIPS_O32_ABI=y" to "CONFIG_MIPS_N32_ABI=y"
else if $CLFS_ABI == "64"
then sed command to change "CONFIG_MIPS_O32_ABI=y" to "CONFIG_MIPS_N64_ABI=y"
if $CLFS_MIPS_LEVEL == "3"
then sed command to change "CONFIG_MIPS_ISA_1=y" to "CONFIG_MIPS_ISA_3=y"

In this case, the default would be $CLFS_ABI = "32" and $CLFS_MIPS_LEVEL = "1" as it is in today's config files.

comment:5 by Andrew Bradford, 14 years ago

My git repo, as of commit b54e9693a1657df4c308a92602e96370c3850f6a, implements the use of o32, n32, and n64 ABIs and both MIPS levels 1 and 3.

comment:6 by Joe Ciccone, 14 years ago

Resolution: fixed
Status: newclosed

As far as I can tell everything looks good. I haven't had a chance to run a test build of embedded yet with the new options but I was just reading through and it looks solid. Going to resolve this ticket as closed. Any issues that arise can be put into new ticket.

Note: See TracTickets for help on using tickets.