summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2010-09-12 20:15:12 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2010-09-12 20:15:12 (GMT)
commit6f5d910d1fdff7e92b074fbffa292a611946759a (patch)
tree2b1c90960fd0ed93457f9e74752f33e6cff5a5bb /scripts
parentb92668a21123d0039f9d5df407469cb6c37fce24 (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')
-rw-r--r--scripts/build/libc/uClibc.sh34
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