Skip to content

Commit 98c2b4b

Browse files
committed
auto merge of #13738 : buttslol/rust/armv7-support, r=alexcrichton
This was required to get ./configure to work on my armv7 test machine. I haven't found anything sane to feature gate `hf` on that's pokable from the context of the configure script. It also seems that gcc doesn't work on armv7 by default (rust wants to pass it `-m32` which isn't supported), would it be preferential to make the default `--enable-clang` on arm, or remove the `-m32` flag on that platform?
2 parents cd6fb59 + b4e69d4 commit 98c2b4b

File tree

1 file changed

+46
-18
lines changed

1 file changed

+46
-18
lines changed

configure

+46-18
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,11 @@ case $CFG_CPUTYPE in
348348
CFG_CPUTYPE=arm
349349
;;
350350

351+
armv7l)
352+
CFG_CPUTYPE=arm
353+
CFG_OSTYPE="${CFG_OSTYPE}eabihf"
354+
;;
355+
351356
x86_64 | x86-64 | x64 | amd64)
352357
CFG_CPUTYPE=x86_64
353358
;;
@@ -401,6 +406,7 @@ opt optimize 1 "build optimized rust code"
401406
opt optimize-cxx 1 "build optimized C++ code"
402407
opt optimize-llvm 1 "build optimized LLVM"
403408
opt optimize-tests 1 "build tests with optimizations"
409+
opt libcpp 1 "build with clang's libcpp"
404410
opt llvm-assertions 1 "build LLVM with assertions"
405411
opt debug 1 "build with extra debug fun"
406412
opt ratchet-bench 0 "ratchet benchmarks"
@@ -1043,53 +1049,71 @@ do
10431049

10441050
case "$CFG_CC" in
10451051
("ccache clang")
1046-
LLVM_CXX_32="ccache clang++ -m32 -Qunused-arguments"
1047-
LLVM_CC_32="ccache clang -m32 -Qunused-arguments"
1052+
LLVM_CXX_32="ccache clang++ -Qunused-arguments"
1053+
LLVM_CC_32="ccache clang -Qunused-arguments"
10481054

10491055
LLVM_CXX_64="ccache clang++ -Qunused-arguments"
10501056
LLVM_CC_64="ccache clang -Qunused-arguments"
1051-
LLVM_OPTS="$LLVM_OPTS --enable-libcpp"
10521057
;;
10531058
("clang")
1054-
LLVM_CXX_32="clang++ -m32 -Qunused-arguments"
1055-
LLVM_CC_32="clang -m32 -Qunused-arguments"
1059+
LLVM_CXX_32="clang++ -Qunused-arguments"
1060+
LLVM_CC_32="clang -Qunused-arguments"
10561061

10571062
LLVM_CXX_64="clang++ -Qunused-arguments"
10581063
LLVM_CC_64="clang -Qunused-arguments"
1059-
LLVM_OPTS="$LLVM_OPTS --enable-libcpp"
10601064
;;
10611065
("ccache gcc")
1062-
LLVM_CXX_32="ccache g++ -m32"
1063-
LLVM_CC_32="ccache gcc -m32"
1066+
LLVM_CXX_32="ccache g++"
1067+
LLVM_CC_32="ccache gcc"
10641068

10651069
LLVM_CXX_64="ccache g++"
10661070
LLVM_CC_64="ccache gcc"
10671071
;;
10681072
("gcc")
1069-
LLVM_CXX_32="g++ -m32"
1070-
LLVM_CC_32="gcc -m32"
1073+
LLVM_CXX_32="g++"
1074+
LLVM_CC_32="gcc"
10711075

10721076
LLVM_CXX_64="g++"
10731077
LLVM_CC_64="gcc"
10741078
;;
10751079

10761080
(*)
10771081
msg "inferring LLVM_CXX/CC from CXX/CC = $CXX/$CC"
1078-
LLVM_CXX_32="$CXX -m32"
1079-
LLVM_CC_32="$CC -m32"
1082+
LLVM_CXX_32="$CXX"
1083+
LLVM_CC_32="$CC"
10801084

10811085
LLVM_CXX_64="$CXX"
10821086
LLVM_CC_64="$CC"
10831087
;;
10841088
esac
10851089

1086-
LLVM_CFLAGS_32="-m32"
1087-
LLVM_CXXFLAGS_32="-m32"
1088-
LLVM_LDFLAGS_32="-m32"
1090+
case "$CFG_CPUTYPE" in
1091+
(x86*)
1092+
LLVM_CXX_32="$LLVM_CXX_32 -m32"
1093+
LLVM_CC_32="$LLVM_CC_32 -m32"
1094+
1095+
LLVM_CFLAGS_32="-m32"
1096+
LLVM_CXXFLAGS_32="-m32"
1097+
LLVM_LDFLAGS_32="-m32"
1098+
1099+
LLVM_CFLAGS_64=""
1100+
LLVM_CXXFLAGS_64=""
1101+
LLVM_LDFLAGS_64=""
1102+
1103+
LLVM_CXX_32="$LLVM_CXX_32 -m32"
1104+
LLVM_CC_32="$LLVM_CC_32 -m32"
1105+
;;
1106+
1107+
(*)
1108+
LLVM_CFLAGS_32=""
1109+
LLVM_CXXFLAGS_32=""
1110+
LLVM_LDFLAGS_32=""
10891111

1090-
LLVM_CFLAGS_64=""
1091-
LLVM_CXXFLAGS_64=""
1092-
LLVM_LDFLAGS_64=""
1112+
LLVM_CFLAGS_64=""
1113+
LLVM_CXXFLAGS_64=""
1114+
LLVM_LDFLAGS_64=""
1115+
;;
1116+
esac
10931117

10941118
if echo $t | grep -q x86_64
10951119
then
@@ -1112,6 +1136,10 @@ do
11121136
CXXFLAGS=$LLVM_CXXFLAGS
11131137
LDFLAGS=$LLVM_LDFLAGS
11141138

1139+
if [ "$CFG_DISABLE_LIBCPP" != 1 ]; then
1140+
LLVM_OPTS="$LLVM_OPTS --enable-libcpp"
1141+
fi
1142+
11151143
LLVM_FLAGS="$LLVM_TARGETS $LLVM_OPTS $LLVM_BUILD \
11161144
$LLVM_HOST $LLVM_TARGET --with-python=$CFG_PYTHON"
11171145

0 commit comments

Comments
 (0)