# $Id$ # Pypi functions # default to build modules for multiple python versions (atm python2 and python3) : ${PYPI_MULTIPLE_PYTHON_VERSIONS=1} # needs python sminclude python : ${SPLIT_PNAME="${PNAME}"} : ${PYPI_MODULE="${PNAME}"} : ${PYPI_ARCHIVE="gz"} # some sane defaults : ${PCAT="dev-python"} # always lower letters : ${HOMEPAGE="http://pypi.python.org/pypi/${PYPI_MODULE}"} case ${PYPI_ARCHIVE} in gz|bz2|xz) : ${SRCFILE="${PYPI_MODULE}-${PVER}.tar.${PYPI_ARCHIVE}"} ;; *) : ${SRCFILE="${PYPI_MODULE}-${PVER}.${PYPI_ARCHIVE}"} ;; esac : ${SRCDIR="${BUILDDIR}/${PYPI_MODULE}-${PVER}"} if [[ ${PYPI_MULTIPLE_PYTHON_VERSIONS} = 1 ]] then sminclude python2 python3 SPLIT_PACKAGES="python2-${SPLIT_PNAME} python3-${SPLIT_PNAME}" eval "split_info_python2-${SPLIT_PNAME}() { DEPEND=\"\${DEPEND} \${PYTHON2_DEPEND} >= dev-lang/python2-2.7\" }" eval "split_info_python3-${SPLIT_PNAME}() { DEPEND=\"\${DEPEND} \${PYTHON3_DEPEND} >= dev-lang/python3-3.6\" }" else DEPEND="${DEPEND} >= dev-lang/python-2.7" fi SRC_URI=( ${SRC_URI[*]} https://pypi.io/packages/source/${PYPI_MODULE:0:1}/${PYPI_MODULE}/${SRCFILE} #https://pypi.python.org/packages/source/${PYPI_MODULE:0:1}/${PYPI_MODULE}/${SRCFILE} mirror://${PNAME}/${SRCFILE} ) UP2SUBSTITUTE=".asc" UP2DATE="updatecmd_pypi ${PYPI_MODULE} ${PYPI_ARCHIVE}" pypi_src_prepare() { if [[ ${PYPI_MULTIPLE_PYTHON_VERSIONS} = 1 ]] then python2_src_prepare || die python3_src_prepare || die else python_src_prepare || die fi } pypi_multilib_src_prepare() { if [[ ${PYPI_MULTIPLE_PYTHON_VERSIONS} = 1 ]] then python2_multilib_src_prepare || die python3_multilib_src_prepare || die else python_multilib_src_prepare || die fi } pypi_src_compile() { local configure_opts="$@" if [[ ${PYPI_MULTIPLE_PYTHON_VERSIONS} = 1 ]] then python2_src_compile ${configure_opts} || die python3_src_compile ${configure_opts} || die else python_src_compile ${configure_opts} || die fi } pypi_multilib_src_compile() { local configure_opts="$@" if [[ ${PYPI_MULTIPLE_PYTHON_VERSIONS} = 1 ]] then python2_multilib_src_compile ${configure_opts} || die python3_multilib_src_compile ${configure_opts} || die else python_multilib_src_compile ${configure_opts} || die fi } pypi_src_install() { python_src_install || die } eval "pypi_src_install_python2-${SPLIT_PNAME}() { python2_src_install || die }" eval "pypi_src_install_python3-${SPLIT_PNAME}() { python3_src_install || die }" pypi_multilib_src_install() { python_multilib_src_install || die } eval "pypi_multilib_src_install_python2-${SPLIT_PNAME}() { python2_multilib_src_install || die }" eval "pypi_multilib_src_install_python3-${SPLIT_PNAME}() { python3_multilib_src_install || die }" if [[ ${MULTILIB_BUILD} = true ]] then if [[ ${PYPI_MULTIPLE_PYTHON_VERSIONS} = 1 ]] then export_inherits pypi_multilib src_prepare src_compile src_install_python2-${SPLIT_PNAME} src_install_python3-${SPLIT_PNAME} else export_inherits pypi_multilib src_prepare src_compile src_install fi else if [[ ${PYPI_MULTIPLE_PYTHON_VERSIONS} = 1 ]] then export_inherits pypi src_prepare src_compile src_install_python2-${SPLIT_PNAME} src_install_python3-${SPLIT_PNAME} else export_inherits pypi src_prepare src_compile src_install fi fi