summaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
Diffstat (limited to 'util')
-rwxr-xr-xutil/xcompile/xcompile14
1 files changed, 13 insertions, 1 deletions
diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile
index 97dd7c4004f2..07bcde7a6d0b 100755
--- a/util/xcompile/xcompile
+++ b/util/xcompile/xcompile
@@ -128,6 +128,10 @@ detect_special_flags() {
testcc "$GCC" "$CFLAGS_GCC -Wno-unused-but-set-variable " &&
CFLAGS_GCC="$CFLAGS_GCC -Wno-unused-but-set-variable "
+ # Check for an operational -m32/-m64
+ testcc "$GCC" "$CFLAGS_GCC -m$TWIDTH " &&
+ CFLAGS_GCC="$CFLAGS_GCC -m$TWIDTH "
+
# Use bfd linker instead of gold if available:
testcc "$GCC" "$CFLAGS_GCC -fuse-ld=bfd" &&
CFLAGS_GCC="$CFLAGS_GCC -fuse-ld=bfd" && LINKER_SUFFIX='.bfd'
@@ -201,7 +205,7 @@ EOF
}
# Architecture definitions
-SUPPORTED_ARCHITECTURES="arm arm64 mipsel riscv x86"
+SUPPORTED_ARCHITECTURES="arm arm64 mipsel riscv x64 x86"
arch_config_arm() {
TARCH="arm"
@@ -229,6 +233,14 @@ arch_config_riscv() {
TABI="elf"
}
+arch_config_x64() {
+ TARCH="x86_64"
+ TBFDARCHS="x86-64"
+ TCLIST="x86_64"
+ TWIDTH="64"
+ TABI="elf"
+}
+
arch_config_x86() {
TARCH="x86_32"
TBFDARCHS="i386"