scripts/build/debug/duma.in
author Titus von Boxberg <titus@v9g.de>
Mon Aug 22 09:26:02 2011 +0200 (2011-08-22)
branch1.12
changeset 2640 e40c55e445b8
parent 635 0d7348cb7faa
child 2908 dcdb309b7967
permissions -rw-r--r--
debug/ltrace: Fix HOST_OS and ar

HOST_OS really is the target OS. Allow setting it for configure
via an environment variable.
libltrace.a should have an index:
Allow ar to be set as an environment variable, and generate
an index in this lib.

Reported-by: "Guylhem Aznar" <crossgcc@guylhem.net>
Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
(transplanted from f86af11138ea2b2ecd4876d9c6c24f58ba4d68ac)
     1 #!/bin/sh
     2 # (C) 2008 Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
     3 # Licensed under the GPL v.2
     4 
     5 LIBDUMA_SO=
     6 
     7 case "$1" in
     8   -on)
     9     case "${LD_PRELOAD}" in
    10       *${LIBDUMA_SO}*) ;;
    11       *) LD_PRELOAD="${LIBDUMA_SO} ${LD_PRELOAD}";;
    12     esac
    13     shift
    14     ;;
    15   -off)
    16     # We use a suposedly POSIX-compliant shell: /bin/sh
    17     #  -> we can't use "${LD_PRELOAD//${LIBDUMA_SO}/}", it's not POSIX
    18     # We don't know if sed will be present on the target
    19     #  -> we can't use $(echo "${LD_PRELOAD}" |sed -r -e "s|${LIBDUMA_SO}||;")
    20     # So, iterate through LD_PRELOAD, and keep only those libs that
    21     # are not "${LIBDUMA_SO}"
    22     old_LD_PRELOAD="${LD_PRELOAD}"
    23     LD_PRELOAD=
    24     for lib in ${old_LD_PRELOAD}; do
    25       [ "${lib}" = "${LIBDUMA_SO}" ] || LD_PRELOAD="${LD_PRELOAD} ${lib}"
    26     done
    27     unset old_LD_PRELOAD
    28     shift
    29     ;;
    30   -show)
    31     case "${LD_PRELOAD}" in
    32       *${LIBDUMA_SO}*) echo "duma is enabled";;
    33       *)               echo "duma is disabled";;
    34     esac
    35     exit 0
    36     ;;
    37   "")
    38     cat <<_EOF_
    39 Usage:
    40     . $0 <-on|-off|-show>
    41         Sets, unsets or show DUMA usage.
    42     $0 <executable [arg...]>
    43         Execute 'executable' (with arguments 'args') using DUMA.
    44 _EOF_
    45     false # Don't 'exit', we could well be source'd
    46     ;;
    47   *)
    48     exec "$0" -on "$@"
    49     ;;
    50 esac
    51 
    52 export LD_PRELOAD
    53 if [ -n "$1" ]; then
    54   exec "$@"
    55 fi