summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/build/debug/duma.in13
1 files changed, 12 insertions, 1 deletions
diff --git a/scripts/build/debug/duma.in b/scripts/build/debug/duma.in
index 7871100..00afd67 100644
--- a/scripts/build/debug/duma.in
+++ b/scripts/build/debug/duma.in
@@ -13,7 +13,18 @@ case "$1" in
shift
;;
-off)
- LD_PRELOAD="${LD_PRELOAD//${LIBDUMA_SO}/}"
+ # We use a suposedly POSIX-compliant shell: /bin/sh
+ # -> we can't use "${LD_PRELOAD//${LIBDUMA_SO}/}", it's not POSIX
+ # We don't know if sed will be present on the target
+ # -> we can't use $(echo "${LD_PRELOAD}" |sed -r -e "s|${LIBDUMA_SO}||;")
+ # So, iterate through LD_PRELOAD, and keep only those libs that
+ # are not "${LIBDUMA_SO}"
+ old_LD_PRELOAD="${LD_PRELOAD}"
+ LD_PRELOAD=
+ for lib in ${old_LD_PRELOAD}; do
+ [ "${lib}" = "${LIBDUMA_SO}" ] || LD_PRELOAD="${LD_PRELOAD} ${lib}"
+ done
+ unset old_LD_PRELOAD
shift
;;
-show)