@@ -283,7 +283,7 @@ opt_core() {
283
283
fi
284
284
done
285
285
else
286
- if [ -n " $META " ]
286
+ if [ ! -z " $META " ]
287
287
then
288
288
OP=" $OP =<$META >"
289
289
fi
@@ -317,23 +317,12 @@ envopt() {
317
317
fi
318
318
319
319
# If script or environment provided a value, save it.
320
- if [ -n " $VV " ]
320
+ if [ ! -z " $VV " ]
321
321
then
322
322
putvar $V
323
323
fi
324
324
}
325
325
326
- enable_if_not_disabled () {
327
- local OP=$1
328
- local UOP=$( echo $OP | tr ' [:lower:]' ' [:upper:]' | tr ' \-' ' \_' )
329
- local ENAB_V=" CFG_ENABLE_$UOP "
330
- local EXPLICITLY_DISABLED=" CFG_DISABLE_${UOP} _PROVIDED"
331
- eval VV=\$ $EXPLICITLY_DISABLED
332
- if [ -z " $VV " ]; then
333
- eval $ENAB_V =1
334
- fi
335
- }
336
-
337
326
to_llvm_triple () {
338
327
case $1 in
339
328
i686-w64-mingw32) echo i686-pc-windows-gnu ;;
@@ -601,9 +590,7 @@ valopt llvm-root "" "set LLVM root"
601
590
valopt python " " " set path to python"
602
591
valopt jemalloc-root " " " set directory where libjemalloc_pic.a is located"
603
592
valopt build " ${DEFAULT_BUILD} " " GNUs ./configure syntax LLVM build triple"
604
- valopt android-cross-path " /opt/ndk_standalone" " Android NDK standalone path (deprecated)"
605
- valopt arm-linux-androideabi-ndk " " " arm-linux-androideabi NDK standalone path"
606
- valopt aarch64-linux-android-ndk " " " aarch64-linux-android NDK standalone path"
593
+ valopt android-cross-path " /opt/ndk_standalone" " Android NDK standalone path"
607
594
valopt release-channel " dev" " the name of the release channel to build"
608
595
valopt musl-root " /usr/local" " MUSL root installation directory"
609
596
@@ -684,12 +671,10 @@ if [ -n "$CFG_ENABLE_DEBUG" ]; then
684
671
CFG_DISABLE_OPTIMIZE=1
685
672
CFG_DISABLE_OPTIMIZE_CXX=1
686
673
fi
687
-
688
- # Set following variables to 1 unless setting already provided
689
- enable_if_not_disabled debug-assertions
690
- enable_if_not_disabled debug-jemalloc
691
- enable_if_not_disabled debuginfo
692
- enable_if_not_disabled llvm-assertions
674
+ CFG_ENABLE_DEBUG_ASSERTIONS=1
675
+ CFG_ENABLE_DEBUG_JEMALLOC=1
676
+ CFG_ENABLE_DEBUGINFO=1
677
+ CFG_ENABLE_LLVM_ASSERTIONS=1
693
678
fi
694
679
695
680
# OK, now write the debugging options
@@ -769,7 +754,7 @@ probe CFG_LLDB lldb
769
754
# On MacOS X, invoking `javac` pops up a dialog if the JDK is not
770
755
# installed. Since `javac` is only used if `antlr4` is available,
771
756
# probe for it only in this case.
772
- if [ -n " $CFG_ANTLR4 " ]
757
+ if [ ! -z " $CFG_ANTLR4 " ]
773
758
then
774
759
probe CFG_JAVAC javac
775
760
fi
@@ -788,14 +773,14 @@ then
788
773
fi
789
774
fi
790
775
791
- if [ -n " $CFG_GDB " ]
776
+ if [ ! -z " $CFG_GDB " ]
792
777
then
793
778
# Store GDB's version
794
779
CFG_GDB_VERSION=$( $CFG_GDB --version 2> /dev/null | head -1)
795
780
putvar CFG_GDB_VERSION
796
781
fi
797
782
798
- if [ -n " $CFG_LLDB " ]
783
+ if [ ! -z " $CFG_LLDB " ]
799
784
then
800
785
# Store LLDB's version
801
786
CFG_LLDB_VERSION=$( $CFG_LLDB --version 2> /dev/null | head -1)
@@ -821,7 +806,7 @@ step_msg "looking for target specific programs"
821
806
822
807
probe CFG_ADB adb
823
808
824
- if [ -n " $CFG_PANDOC " ]
809
+ if [ ! -z " $CFG_PANDOC " ]
825
810
then
826
811
# Extract "MAJOR MINOR" from Pandoc's version number
827
812
PV_MAJOR_MINOR=$( pandoc --version | grep ' ^pandoc' |
847
832
BIN_SUF=.exe
848
833
fi
849
834
850
- if [ -n " $CFG_ENABLE_LOCAL_RUST " ]
835
+ if [ ! -z " $CFG_ENABLE_LOCAL_RUST " ]
851
836
then
852
837
system_rustc=$( which rustc)
853
838
if [ -f ${CFG_LOCAL_RUST_ROOT} /bin/rustc${BIN_SUF} ]
932
917
933
918
# Okay, at this point, we have made up our minds about whether we are
934
919
# going to force CFG_ENABLE_CLANG or not; save the setting if so.
935
- if [ -n " $CFG_ENABLE_CLANG " ]
920
+ if [ ! -z " $CFG_ENABLE_CLANG " ]
936
921
then
937
922
putvar CFG_ENABLE_CLANG
938
923
fi
939
924
940
925
# Same with jemalloc. save the setting here.
941
- if [ -n " $CFG_DISABLE_JEMALLOC " ]
926
+ if [ ! -z " $CFG_DISABLE_JEMALLOC " ]
942
927
then
943
928
putvar CFG_DISABLE_JEMALLOC
944
929
fi
945
930
946
- if [ -n " $CFG_LLVM_ROOT " -a -z " $CFG_DISABLE_LLVM_VERSION_CHECK " -a -e " $CFG_LLVM_ROOT /bin/llvm-config" ]
931
+ if [ ! -z " $CFG_LLVM_ROOT " -a -z " $CFG_DISABLE_LLVM_VERSION_CHECK " -a -e " $CFG_LLVM_ROOT /bin/llvm-config" ]
947
932
then
948
933
step_msg " using custom LLVM at $CFG_LLVM_ROOT "
949
934
972
957
# CFG_ENABLE_CLANG is set, that indicates that we are opting into
973
958
# running such safeguards.
974
959
975
- if [ -n " $CC " ]
960
+ if [ ! -z " $CC " ]
976
961
then
977
962
msg " skipping compiler inference steps; using provided CC=$CC "
978
963
CFG_CC=" $CC "
985
970
putvar CFG_USING_CLANG
986
971
fi
987
972
else
988
- if [ -n " $CFG_ENABLE_CLANG " ]
973
+ if [ ! -z " $CFG_ENABLE_CLANG " ]
989
974
then
990
975
if [ -z " $CFG_CLANG " ]
991
976
then
999
984
fi
1000
985
fi
1001
986
1002
- if [ -n " $CFG_ENABLE_CLANG " ]
987
+ if [ ! -z " $CFG_ENABLE_CLANG " ]
1003
988
then
1004
989
case " $CC " in
1005
990
(' ' |* clang)
@@ -1015,7 +1000,7 @@ then
1015
1000
CFG_CLANG_VERSION=$( echo $CFG_CLANG_REPORTED_VERSION | sed ' s/.*version \(.*\) .*/\1/' )
1016
1001
fi
1017
1002
1018
- if [ -n " $CFG_OSX_CLANG_VERSION " ]
1003
+ if [ ! -z " $CFG_OSX_CLANG_VERSION " ]
1019
1004
then
1020
1005
case $CFG_OSX_CLANG_VERSION in
1021
1006
(7.0* )
@@ -1044,7 +1029,7 @@ then
1044
1029
esac
1045
1030
fi
1046
1031
1047
- if [ -n " $CFG_ENABLE_CCACHE " ]
1032
+ if [ ! -z " $CFG_ENABLE_CCACHE " ]
1048
1033
then
1049
1034
if [ -z " $CFG_CCACHE " ]
1050
1035
then
@@ -1114,24 +1099,20 @@ do
1114
1099
fi
1115
1100
1116
1101
case $i in
1117
- * android* )
1118
- upper_snake_target=$( echo " $i " | tr ' [:lower:]' ' [:upper:]' | tr ' \-' ' \_' )
1119
- eval ndk=\$ " CFG_${upper_snake_target} _NDK"
1120
- if [ -z " $ndk " ]
1102
+ arm-linux-androideabi)
1103
+
1104
+ if [ ! -f $CFG_ANDROID_CROSS_PATH /bin/arm-linux-androideabi-gcc ]
1121
1105
then
1122
- ndk=$CFG_ANDROID_CROSS_PATH
1123
- eval " CFG_${upper_snake_target} _NDK" =$CFG_ANDROID_CROSS_PATH
1124
- warn " generic/default Android NDK option is deprecated (use --$i -ndk option instead)"
1106
+ err " NDK $CFG_ANDROID_CROSS_PATH /bin/arm-linux-androideabi-gcc not found"
1107
+ fi
1108
+ if [ ! -f $CFG_ANDROID_CROSS_PATH /bin/arm-linux-androideabi-g++ ]
1109
+ then
1110
+ err " NDK $CFG_ANDROID_CROSS_PATH /bin/arm-linux-androideabi-g++ not found"
1111
+ fi
1112
+ if [ ! -f $CFG_ANDROID_CROSS_PATH /bin/arm-linux-androideabi-ar ]
1113
+ then
1114
+ err " NDK $CFG_ANDROID_CROSS_PATH /bin/arm-linux-androideabi-ar not found"
1125
1115
fi
1126
-
1127
- # Perform a basic sanity check of the NDK
1128
- for android_ndk_tool in " $ndk /bin/$i -gcc" " $ndk /bin/$i -g++" " $ndk /bin/$i -ar"
1129
- do
1130
- if [ ! -f $android_ndk_tool ]
1131
- then
1132
- err " NDK tool $android_ndk_tool not found (bad or missing --$i -ndk option?)"
1133
- fi
1134
- done
1135
1116
;;
1136
1117
1137
1118
arm-apple-darwin)
@@ -1183,13 +1164,8 @@ do
1183
1164
# INCLUDE and LIB variables for MSVC so we can set those in the
1184
1165
# build system as well.
1185
1166
install=$( reg QUERY \
1186
- ' HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14 .0' \
1167
+ ' HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\12 .0' \
1187
1168
-v InstallDir)
1188
- if [ -z " $install " ]; then
1189
- install=$( reg QUERY \
1190
- ' HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\12.0' \
1191
- -v InstallDir)
1192
- fi
1193
1169
need_ok " couldn't find visual studio install root"
1194
1170
CFG_MSVC_ROOT=$( echo " $install " | grep InstallDir | sed ' s/.*REG_SZ[ ]*//' )
1195
1171
CFG_MSVC_ROOT=$( dirname " $CFG_MSVC_ROOT " )
1210
1186
;;
1211
1187
esac
1212
1188
bindir=" ${CFG_MSVC_ROOT} /VC/bin"
1213
- if [ -n " $msvc_part " ]; then
1189
+ if [ ! -z " $msvc_part " ]; then
1214
1190
bindir=" $bindir /$msvc_part "
1215
1191
fi
1216
1192
eval CFG_MSVC_BINDIR_$bits =" \" $bindir \" "
1240
1216
esac
1241
1217
done
1242
1218
1243
- if [ -n " $CFG_PERF " ]
1219
+ if [ ! -z " $CFG_PERF " ]
1244
1220
then
1245
1221
HAVE_PERF_LOGFD=` $CFG_PERF stat --log-fd 2>&1 | grep ' unknown option' `
1246
1222
if [ -z " $HAVE_PERF_LOGFD " ];
@@ -1350,11 +1326,11 @@ then
1350
1326
" ${CFG_GIT} " submodule init
1351
1327
1352
1328
# Disable submodules that we're not using
1353
- if [ -n " ${CFG_LLVM_ROOT} " ]; then
1329
+ if [ ! -z " ${CFG_LLVM_ROOT} " ]; then
1354
1330
msg " git: submodule deinit src/llvm"
1355
1331
" ${CFG_GIT} " submodule deinit src/llvm
1356
1332
fi
1357
- if [ -n " ${CFG_JEMALLOC_ROOT} " ]; then
1333
+ if [ ! -z " ${CFG_JEMALLOC_ROOT} " ]; then
1358
1334
msg " git: submodule deinit src/jemalloc"
1359
1335
" ${CFG_GIT} " submodule deinit src/jemalloc
1360
1336
fi
1401
1377
if [ -z $CFG_LLVM_ROOT ]
1402
1378
then
1403
1379
LLVM_BUILD_DIR=${CFG_BUILD_DIR} $t /llvm
1404
- if [ -n " $CFG_DISABLE_OPTIMIZE_LLVM " ]
1380
+ if [ ! -z " $CFG_DISABLE_OPTIMIZE_LLVM " ]
1405
1381
then
1406
1382
LLVM_DBG_OPTS=" --enable-debug-symbols --disable-optimized"
1407
1383
# Just use LLVM straight from its build directory to
1457
1433
msg " configuring LLVM for $t with cmake"
1458
1434
1459
1435
CMAKE_ARGS=" -DLLVM_INCLUDE_TESTS=OFF"
1460
- if [ -n " $CFG_DISABLE_OPTIMIZE_LLVM " ]; then
1436
+ if [ ! -z " $CFG_DISABLE_OPTIMIZE_LLVM " ]; then
1461
1437
CMAKE_ARGS=" $CMAKE_ARGS -DCMAKE_BUILD_TYPE=Debug"
1462
1438
else
1463
1439
CMAKE_ARGS=" $CMAKE_ARGS -DCMAKE_BUILD_TYPE=Release"
@@ -1471,22 +1447,12 @@ do
1471
1447
1472
1448
msg " configuring LLVM with:"
1473
1449
msg " $CMAKE_ARGS "
1474
- case " $CFG_MSVC_ROOT " in
1475
- * 14.0* )
1476
- generator=" Visual Studio 14 2015"
1477
- ;;
1478
- * 12.0* )
1479
- generator=" Visual Studio 12 2013"
1480
- ;;
1481
- * )
1482
- err " can't determine generator for LLVM cmake"
1483
- ;;
1484
- esac
1485
1450
case " $t " in
1486
1451
x86_64-* )
1487
- generator=" $generator Win64"
1452
+ generator=" Visual Studio 12 2013 Win64"
1488
1453
;;
1489
1454
i686-* )
1455
+ generator=" Visual Studio 12 2013"
1490
1456
;;
1491
1457
* )
1492
1458
err " can only build LLVM for x86 platforms"
1559
1525
1560
1526
(* )
1561
1527
msg " inferring LLVM_CXX/CC from CXX/CC = $CXX /$CC "
1562
- if [ -n " $CFG_ENABLE_CCACHE " ]
1528
+ if [ ! -z " $CFG_ENABLE_CCACHE " ]
1563
1529
then
1564
1530
if [ -z " $CFG_CCACHE " ]
1565
1531
then
@@ -1688,26 +1654,25 @@ putvar CFG_HOST
1688
1654
putvar CFG_TARGET
1689
1655
putvar CFG_LIBDIR_RELATIVE
1690
1656
putvar CFG_DISABLE_MANAGE_SUBMODULES
1691
- putvar CFG_AARCH64_LINUX_ANDROID_NDK
1692
- putvar CFG_ARM_LINUX_ANDROIDEABI_NDK
1657
+ putvar CFG_ANDROID_CROSS_PATH
1693
1658
putvar CFG_MANDIR
1694
1659
1695
1660
# Avoid spurious warnings from clang by feeding it original source on
1696
1661
# ccache-miss rather than preprocessed input.
1697
- if [ -n " $CFG_ENABLE_CCACHE " ] && [ -n " $CFG_USING_CLANG " ]
1662
+ if [ ! -z " $CFG_ENABLE_CCACHE " ] && [ ! -z " $CFG_USING_CLANG " ]
1698
1663
then
1699
1664
CFG_CCACHE_CPP2=1
1700
1665
putvar CFG_CCACHE_CPP2
1701
1666
fi
1702
1667
1703
- if [ -n " $CFG_ENABLE_CCACHE " ]
1668
+ if [ ! -z " $CFG_ENABLE_CCACHE " ]
1704
1669
then
1705
1670
CFG_CCACHE_BASEDIR=${CFG_SRC_DIR}
1706
1671
putvar CFG_CCACHE_BASEDIR
1707
1672
fi
1708
1673
1709
1674
1710
- if [ -n $BAD_PANDOC ]
1675
+ if [ ! -z $BAD_PANDOC ]
1711
1676
then
1712
1677
CFG_PANDOC=
1713
1678
putvar CFG_PANDOC
0 commit comments