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