#!/bin/sh

# This shell script is used to fake Python. Gdb wants to be passed a
# Python interpreter, to run its own python-config.py program, which
# uses sysconfig. However, when cross-compiling, this doesn't work
# well since we would have to use the host Python, whose sysconfig
# module would return host values.
#
# As recommended at
# https://sourceware.org/gdb/wiki/CrossCompilingWithPythonSupport,
# this wrapper shell script can be used as a replacement. It ignores
# the python-config.py script passed as first arguments, and
# "emulates" its behavior.

if [ $# -ne 2 ] ; then
    echo "Bad # args." >&2
    exit 1
fi

if [ -z "${BR_PYTHON_VERSION}" ]; then
    echo "Environment variable BR_PYTHON_VERSION not set." >&2
    exit 1
fi

# The first argument is the path to python-config.py, ignore it.

case "$2" in
    --includes)
        echo "-I${STAGING_DIR}/usr/include/python${BR_PYTHON_VERSION}"
        ;;
    --ldflags)
        echo "-lpthread -ldl -lutil -lm -lpython${BR_PYTHON_VERSION}"
        ;;
    --exec-prefix)
        echo "/usr"
        ;;
    *)
        echo "Bad arg $2." >&2
        exit 1
        ;;
esac
