#!/bin/sh

set -eu

bbdbg_help() {
    /bin/echo -e "NAME"
    /bin/echo -e "\tbbdbg - debug applications in a target environment built by bitbake"
    /bin/echo -e
    /bin/echo -e "SYNOPSIS"
    /bin/echo -e "\tbbdbg PATH FILE CORE PACKAGES"
    /bin/echo -e
    /bin/echo -e "DESCRIPTION"
    /bin/echo -e "\tPATH is the path to the root of a bitbake build directory"
    /bin/echo -e "\tFILE is the absolute path to the binary of interest in the target environment"
    /bin/echo -e "\tCORE is an optional core file generated by FILE. Pass '-' for no core file"
    /bin/echo -e "\tPACKAGES will be used to populate a temporary rootfs for debugging FILE"
    /bin/echo -e
    /bin/echo -e "EXAMPLE"
    /bin/echo -e "\tbbdbg ~/src/openbmc/openbmc/build/p10bmc \\"
    /bin/echo -e "\t\t/usr/bin/nvmesensor - \\"
    /bin/echo -e "\t\tdbus-sensors dbus-sensors-dbg"
}

trap bbdbg_help EXIT

BBDBG_PATH=$1; shift
BBDBG_FILE=$1; shift
BBDBG_CORE=$1; shift
BBDBG_PKGS=$@

BBDBG_ROOT=$(mktemp -t --directory bbdbg.XXX)
BBDBG_LIBS=${BBDBG_PATH}/tmp/sysroots-components/$(uname -m)/libsolv-native/usr/lib:${BBDBG_PATH}/tmp/sysroots-components/$(uname -m)/libarchive-native/usr/lib
BBDBG_OPKG=${BBDBG_PATH}/tmp/sysroots-components/$(uname -m)/opkg-native/usr/bin/opkg
BBDBG_CONF=$(find ${BBDBG_PATH}/tmp/work/*/obmc-phosphor-image -name opkg.conf -exec grep -lE ^src \{\} \;)

bbdbg_cleanup() {
    rm -rf "$BBDBG_ROOT"
}

trap bbdbg_cleanup EXIT

bbdbg_opkg() {
    LD_LIBRARY_PATH=${BBDBG_LIBS} $BBDBG_OPKG -V0 -f $BBDBG_CONF -o $BBDBG_ROOT $@
}

set -x
bbdbg_opkg update
bbdbg_opkg install $BBDBG_PKGS
gdb-multiarch -q \
    -iex "set solib-absolute-prefix $BBDBG_ROOT" \
    -iex "add-auto-load-safe-path $BBDBG_ROOT" \
    -iex "set directories $BBDBG_ROOT" \
    ${BBDBG_ROOT}${BBDBG_FILE} \
    $([ '-' = "${BBDBG_CORE}" ] || echo ${BBDBG_CORE})
set +x
