void-packages

Void Source Packages
git clone git://ezup.dev/void-packages.git
Log | Files | Refs | README | LICENSE

python3-module.sh (2135B)


      1#
      2# This helper is for templates installing python3-only modules.
      3#
      4
      5do_build() {
      6	if [ -n "$CROSS_BUILD" ]; then
      7		PYPREFIX="$XBPS_CROSS_BASE"
      8		CFLAGS+=" -I${XBPS_CROSS_BASE}/${py3_inc} -I${XBPS_CROSS_BASE}/usr/include"
      9		LDFLAGS+=" -L${XBPS_CROSS_BASE}/${py3_lib} -L${XBPS_CROSS_BASE}/usr/lib"
     10		CC="${XBPS_CROSS_TRIPLET}-gcc -pthread $CFLAGS $LDFLAGS"
     11		LDSHARED="${CC} -shared $LDFLAGS"
     12		for f in ${XBPS_CROSS_BASE}/${py3_lib}/_sysconfigdata_*; do
     13			f=${f##*/}
     14			_PYTHON_SYSCONFIGDATA_NAME=${f%.py}
     15		done
     16		env CC="$CC" LDSHARED="$LDSHARED" \
     17			PYPREFIX="$PYPREFIX" CFLAGS="$CFLAGS" \
     18			PYTHONPATH=${XBPS_CROSS_BASE}/${py3_lib} \
     19			_PYTHON_SYSCONFIGDATA_NAME="$_PYTHON_SYSCONFIGDATA_NAME" \
     20			LDFLAGS="$LDFLAGS" python3 setup.py build ${make_build_args}
     21	else
     22		python3 setup.py build ${make_build_args}
     23	fi
     24}
     25
     26do_check() {
     27	if python3 -m pytest --help >/dev/null 2>&1; then
     28		python3 -m pytest ${make_check_args} ${make_check_target}
     29	else
     30		# Fall back to deprecated setup.py test orchestration without pytest
     31		if [ -z "$make_check_target" ]; then
     32			if ! python3 setup.py --help test >/dev/null 2>&1; then
     33				msg_warn "No command 'test' defined by setup.py.\n"
     34				return 0
     35			fi
     36		fi
     37
     38		: ${make_check_target:=test}
     39		python3 setup.py ${make_check_target} ${make_check_args}
     40	fi
     41}
     42
     43do_install() {
     44	if [ -n "$CROSS_BUILD" ]; then
     45		PYPREFIX="$XBPS_CROSS_BASE"
     46		CFLAGS+=" -I${XBPS_CROSS_BASE}/${py3_inc} -I${XBPS_CROSS_BASE}/usr/include"
     47		LDFLAGS+=" -L${XBPS_CROSS_BASE}/${py3_lib} -L${XBPS_CROSS_BASE}/usr/lib"
     48		CC="${XBPS_CROSS_TRIPLET}-gcc -pthread $CFLAGS $LDFLAGS"
     49		LDSHARED="${CC} -shared $LDFLAGS"
     50		for f in ${XBPS_CROSS_BASE}/${py3_lib}/_sysconfigdata_*; do
     51			f=${f##*/}
     52			_PYTHON_SYSCONFIGDATA_NAME=${f%.py}
     53		done
     54		env CC="$CC" LDSHARED="$LDSHARED" \
     55			PYPREFIX="$PYPREFIX" CFLAGS="$CFLAGS" \
     56			PYTHONPATH=${XBPS_CROSS_BASE}/${py3_lib} \
     57			_PYTHON_SYSCONFIGDATA_NAME="$_PYTHON_SYSCONFIGDATA_NAME" \
     58			LDFLAGS="$LDFLAGS" python3 setup.py \
     59				install --prefix=/usr --root=${DESTDIR} ${make_install_args}
     60	else
     61		python3 setup.py install --prefix=/usr --root=${DESTDIR} ${make_install_args}
     62	fi
     63}