summaryrefslogtreecommitdiff
path: root/scripts/build/arch/x86.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build/arch/x86.sh')
-rw-r--r--scripts/build/arch/x86.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/scripts/build/arch/x86.sh b/scripts/build/arch/x86.sh
index ca0f08b..0e41d67 100644
--- a/scripts/build/arch/x86.sh
+++ b/scripts/build/arch/x86.sh
@@ -68,3 +68,27 @@ CT_DoArchMultilibTarget ()
echo "${target}"
}
+
+# Adjust target tuple for GLIBC
+CT_DoArchGlibcAdjustTuple() {
+ local target="${1}"
+
+ case "${target}" in
+ # x86 quirk: architecture name is i386, but glibc expects i[4567]86 - to
+ # indicate the desired optimization. If it was a multilib variant of x86_64,
+ # then it targets at least NetBurst a.k.a. i786, but we'll follow the model
+ # above # and set the optimization to i686. Otherwise, replace with the most
+ # conservative choice, i486.
+ i386-*)
+ if [ "${CT_TARGET_ARCH}" = "x86_64" ]; then
+ target=${target/#i386-/i686-}
+ elif [ "${CT_TARGET_ARCH}" != "i386" ]; then
+ target=${target/#i386-/${CT_TARGET_ARCH}-}
+ else
+ target=${target/#i386-/i486-}
+ fi
+ ;;
+ esac
+
+ echo "${target}"
+}