diff options
author | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2010-09-12 20:15:12 (GMT) |
---|---|---|
committer | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2010-09-12 20:15:12 (GMT) |
commit | 6f5d910d1fdff7e92b074fbffa292a611946759a (patch) | |
tree | 2b1c90960fd0ed93457f9e74752f33e6cff5a5bb /scripts/build/libc/uClibc.sh | |
parent | b92668a21123d0039f9d5df407469cb6c37fce24 (diff) |
libc/uClibc: use the MIPS ABI selection
Use the MIPS ABI selection to properly munge the uClibc config file.
This has the side effect to force the ISA:
- n32 ABI -> MIPS-III ISA
- n64 ABI -> MIPS64 ISA
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Diffstat (limited to 'scripts/build/libc/uClibc.sh')
-rw-r--r-- | scripts/build/libc/uClibc.sh | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/scripts/build/libc/uClibc.sh b/scripts/build/libc/uClibc.sh index 1247ba7..a492870 100644 --- a/scripts/build/libc/uClibc.sh +++ b/scripts/build/libc/uClibc.sh @@ -297,6 +297,40 @@ mungeuClibcConfig() { ENDSED fi ;; + mips) + case "${CT_ARCH_mips_ABI}" in + 32) + cat <<-ENDSED + s/.*(CONFIG_MIPS_O32_ABI).*/\\1=y/ + s/.*(CONFIG_MIPS_N32_ABI).*/# \\1 is not set/ + s/.*(CONFIG_MIPS_N64_ABI).*/# \\1 is not set/ + ENDSED + ;; + # For n32 and n64, also force the ISA + # Not so sure this is pertinent, so it's + # commented out for now. It would take a + # (MIPS+uClibc) expert to either remove + # or re-enable the overrides. + n32) + cat <<-ENDSED + s/.*(CONFIG_MIPS_O32_ABI).*/# \\1 is not set/ + s/.*(CONFIG_MIPS_N32_ABI).*/\\1=y/ + s/.*(CONFIG_MIPS_N64_ABI).*/# \\1 is not set/ + s/.*(CONFIG_MIPS_ISA_.*).*/# \\1 is not set/ + s/.*(CONFIG_MIPS_ISA_3).*/\\1=y/ + ENDSED + ;; + 64) + cat <<-ENDSED + s/.*(CONFIG_MIPS_O32_ABI).*/# \\1 is not set/ + s/.*(CONFIG_MIPS_N32_ABI).*/# \\1 is not set/ + s/.*(CONFIG_MIPS_N64_ABI).*/\\1=y/ + s/.*(CONFIG_MIPS_ISA_.*).*/# \\1 is not set/ + s/.*(CONFIG_MIPS_ISA_MIPS64).*/\\1=y/ + ENDSED + ;; + esac + ;; esac # Accomodate for old and new uClibc versions, where the |