#
# This helper is for templates installing python3-only modules.
#

do_build() {
	if [ -n "$CROSS_BUILD" ]; then
		PYPREFIX="$XBPS_CROSS_BASE"
		CFLAGS+=" -I${XBPS_CROSS_BASE}/${py3_inc} -I${XBPS_CROSS_BASE}/usr/include"
		LDFLAGS+=" -L${XBPS_CROSS_BASE}/${py3_lib} -L${XBPS_CROSS_BASE}/usr/lib"
		CC="${XBPS_CROSS_TRIPLET}-gcc -pthread $CFLAGS $LDFLAGS"
		LDSHARED="${CC} -shared $LDFLAGS"
		for f in ${XBPS_CROSS_BASE}/${py3_lib}/_sysconfigdata_*; do
			f=${f##*/}
			_PYTHON_SYSCONFIGDATA_NAME=${f%.py}
		done
		env CC="$CC" LDSHARED="$LDSHARED" \
			PYPREFIX="$PYPREFIX" CFLAGS="$CFLAGS" \
			PYTHONPATH=${XBPS_CROSS_BASE}/${py3_lib} \
			_PYTHON_SYSCONFIGDATA_NAME="$_PYTHON_SYSCONFIGDATA_NAME" \
			LDFLAGS="$LDFLAGS" python3 setup.py build ${make_build_args}
	else
		python3 setup.py build ${make_build_args}
	fi
}

do_check() {
	if python3 -c 'import pytest' >/dev/null 2>&1; then
		PYTHONPATH="$(cd build/lib* && pwd)" \
			python3 -m pytest ${make_check_args} ${make_check_target}
	else
		# Fall back to deprecated setup.py test orchestration without pytest
		if [ -z "$make_check_target" ]; then
			if ! python3 setup.py --help test >/dev/null 2>&1; then
				msg_warn "No command 'test' defined by setup.py.\n"
				return 0
			fi
		fi

		: ${make_check_target:=test}
		python3 setup.py ${make_check_target} ${make_check_args}
	fi
}

do_install() {
	if [ -n "$CROSS_BUILD" ]; then
		PYPREFIX="$XBPS_CROSS_BASE"
		CFLAGS+=" -I${XBPS_CROSS_BASE}/${py3_inc} -I${XBPS_CROSS_BASE}/usr/include"
		LDFLAGS+=" -L${XBPS_CROSS_BASE}/${py3_lib} -L${XBPS_CROSS_BASE}/usr/lib"
		CC="${XBPS_CROSS_TRIPLET}-gcc -pthread $CFLAGS $LDFLAGS"
		LDSHARED="${CC} -shared $LDFLAGS"
		for f in ${XBPS_CROSS_BASE}/${py3_lib}/_sysconfigdata_*; do
			f=${f##*/}
			_PYTHON_SYSCONFIGDATA_NAME=${f%.py}
		done
		env CC="$CC" LDSHARED="$LDSHARED" \
			PYPREFIX="$PYPREFIX" CFLAGS="$CFLAGS" \
			PYTHONPATH=${XBPS_CROSS_BASE}/${py3_lib} \
			_PYTHON_SYSCONFIGDATA_NAME="$_PYTHON_SYSCONFIGDATA_NAME" \
			LDFLAGS="$LDFLAGS" python3 setup.py \
				install --prefix=/usr --root=${DESTDIR} ${make_install_args}
	else
		python3 setup.py install --prefix=/usr --root=${DESTDIR} ${make_install_args}
	fi
}
