#!/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
