Opened 11 years ago

Closed 10 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:


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

Change History (6)

comment:1 Changed 11 years ago by Joe Ciccone

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

comment:2 Changed 10 years ago by Joe Ciccone

Version: CLFS Embedded 1.0.0CLFS Embedded GIT

comment:3 Changed 10 years ago by Andrew Bradford

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 Changed 10 years ago by Andrew Bradford

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

# CONFIG_MIPS_N32_ABI is not set
# CONFIG_MIPS_N64_ABI is not set
# 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 Changed 10 years ago by Andrew Bradford

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 Changed 10 years ago by Joe Ciccone

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.