summaryrefslogtreecommitdiff
path: root/scripts/build/arch
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build/arch')
-rw-r--r--scripts/build/arch/arc.sh34
-rw-r--r--scripts/build/arch/arm.sh1
-rw-r--r--scripts/build/arch/powerpc.sh8
3 files changed, 39 insertions, 4 deletions
diff --git a/scripts/build/arch/arc.sh b/scripts/build/arch/arc.sh
new file mode 100644
index 0000000..2b48e4b
--- /dev/null
+++ b/scripts/build/arch/arc.sh
@@ -0,0 +1,34 @@
+# Compute ARC-specific values
+
+CT_DoArchTupleValues() {
+ # The architecture part of the tuple:
+ CT_TARGET_ARCH="${CT_ARCH}${CT_ARCH_SUFFIX:-${target_endian_eb}}"
+
+ # The system part of the tuple:
+ case "${CT_LIBC}" in
+ glibc) CT_TARGET_SYS=gnu;;
+ uClibc) CT_TARGET_SYS=uclibc;;
+ esac
+}
+
+CT_DoArchUClibcConfig() {
+ local cfg="${1}"
+
+ CT_DoArchUClibcSelectArch "${cfg}" "arc"
+}
+
+CT_DoArchUClibcCflags() {
+ local cfg="${1}"
+ local cflags="${2}"
+ local f
+
+ CT_KconfigDisableOption "CONFIG_ARC_HAS_ATOMICS" "${cfg}"
+
+ for f in ${cflags}; do
+ case "${f}" in
+ -matomic)
+ CT_KconfigEnableOption "CONFIG_ARC_HAS_ATOMICS" "${cfg}"
+ ;;
+ esac
+ done
+}
diff --git a/scripts/build/arch/arm.sh b/scripts/build/arch/arm.sh
index 7433c92..4873df1 100644
--- a/scripts/build/arch/arm.sh
+++ b/scripts/build/arch/arm.sh
@@ -96,6 +96,7 @@ CT_DoArchUClibcCflags() {
case "${f}" in
-mthumb)
CT_KconfigEnableOption "COMPILE_IN_THUMB_MODE" "${cfg}"
+ CT_KconfigDisableOption "UCLIBC_HAS_CONTEXT_FUNCS" "${cfg}"
;;
-marm)
CT_KconfigDisableOption "COMPILE_IN_THUMB_MODE" "${cfg}"
diff --git a/scripts/build/arch/powerpc.sh b/scripts/build/arch/powerpc.sh
index 52f3f8b..36a727a 100644
--- a/scripts/build/arch/powerpc.sh
+++ b/scripts/build/arch/powerpc.sh
@@ -12,18 +12,18 @@ CT_DoArchTupleValues () {
;;
spe)
case "${CT_LIBC}" in
- none|newlib) CT_TARGET_SYS="spe";;
+ none|newlib) CT_TARGET_SYS="elfspe";;
*glibc) CT_TARGET_SYS="gnuspe";;
uClibc) CT_TARGET_SYS="uclibcgnuspe";;
esac
;;
esac
- # Add extra flags for SPE if needed
+ # Add extra flags for SPE if needed. SPE is obsolete in GCC8.
if [ "${CT_ARCH_powerpc_ABI_SPE}" = "y" ]; then
CT_ARCH_TARGET_CFLAGS="-mabi=spe -mspe"
- CT_ARCH_CC_CORE_EXTRA_CONFIG="--enable-e500_double"
- CT_ARCH_CC_EXTRA_CONFIG="--enable-e500_double"
+ CT_ARCH_CC_CORE_EXTRA_CONFIG="--enable-e500_double --enable-obsolete"
+ CT_ARCH_CC_EXTRA_CONFIG="--enable-e500_double --enable-obsolete"
fi
}