aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar DavidKorczynski <david@adalogics.com>2022-04-08 23:00:40 +0100
committerGravatar GitHub <noreply@github.com>2022-04-08 23:00:40 +0100
commit0569a4ed6e8aecaaf2dc8b80a8ee24e6e11c1398 (patch)
treeec9eeeb232f0a806aec886198db7defd13cf0e66
parent2fe1b0828d2f1a64466c4226f4bc74a35b69368c (diff)
icu: set LDFLAGS to fix fuzz-introspector (#7538)
* icu: set LDFLAGS to fix fuzz-introspector Fuzz-introspector uses LDFLAGS to force linking by way of the gold linker. We need to use it when linking fuzzers. * nit
-rwxr-xr-xprojects/icu/build.sh10
1 files changed, 8 insertions, 2 deletions
diff --git a/projects/icu/build.sh b/projects/icu/build.sh
index 2d8e3532..d0590719 100755
--- a/projects/icu/build.sh
+++ b/projects/icu/build.sh
@@ -16,6 +16,12 @@
#
################################################################################
+# Fuzz introspector uses LDFLAGS, so ensure LDFLAGS
+# is always set for other sanitizer options.
+if [ "$SANITIZER" != "introspector" ]; then
+ export LDFLAGS=""
+fi
+
mkdir $WORK/icu
cd $WORK/icu
@@ -33,7 +39,7 @@ export UBSAN_OPTIONS="detect_leaks=0"
make -j$(nproc)
-$CXX $CXXFLAGS -std=c++11 -c $SRC/icu/icu4c/source/test/fuzzer/locale_util.cpp \
+$CXX $CXXFLAGS $LDFLAGS -std=c++11 -c $SRC/icu/icu4c/source/test/fuzzer/locale_util.cpp \
-I$SRC/icu4c/source/test/fuzzer
FUZZER_PATH=$SRC/icu/icu4c/source/test/fuzzer
@@ -42,7 +48,7 @@ FUZZERS=$FUZZER_PATH/*_fuzzer.cpp
for fuzzer in $FUZZERS; do
file=${fuzzer:${#FUZZER_PATH}+1}
- $CXX $CXXFLAGS -std=c++11 \
+ $CXX $CXXFLAGS $LDFLAGS -std=c++11 \
$fuzzer -o $OUT/${file/.cpp/} locale_util.o \
-I$SRC/icu/icu4c/source/common -I$SRC/icu/icu4c/source/i18n -L$WORK/icu/lib \
$LIB_FUZZING_ENGINE -licui18n -licuuc -licutu -licudata