83 lines
2.2 KiB
Bash
83 lines
2.2 KiB
Bash
# Copyright 1999-2015 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
# $Id$
|
|
|
|
EAPI=5
|
|
|
|
if [[ ${PV} == "99999999" ]] ; then
|
|
inherit autotools git-r3
|
|
EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
|
|
else
|
|
SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.bz2"
|
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-aix ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
|
fi
|
|
|
|
DESCRIPTION="Eselect module for management of multiple Python versions"
|
|
HOMEPAGE="https://www.gentoo.org/proj/en/Python/"
|
|
|
|
LICENSE="GPL-2"
|
|
SLOT="0"
|
|
IUSE=""
|
|
|
|
RDEPEND=">=app-admin/eselect-1.2.3
|
|
>=dev-lang/python-exec-2.1:2
|
|
!<dev-lang/python-2.7.10-r4:2.7
|
|
!<dev-lang/python-3.3.5-r4:3.3
|
|
!<dev-lang/python-3.4.3-r4:3.4
|
|
!<dev-lang/python-3.5.0-r3:3.5"
|
|
|
|
src_prepare() {
|
|
[[ ${PV} == "99999999" ]] && eautoreconf
|
|
}
|
|
|
|
src_install() {
|
|
keepdir /etc/env.d/python
|
|
emake DESTDIR="${D}" install || die
|
|
|
|
local f
|
|
for f in python{,2,3}; do
|
|
# can't use symlinks here since random stuff
|
|
# loves to do readlink on sys.executable...
|
|
newbin "${EPREFIX}/usr/lib/python-exec/python-exec2" "${f}"
|
|
done
|
|
for f in python{,2,3}-config 2to3 idle pydoc pyvenv; do
|
|
dosym ../lib/python-exec/python-exec2 /usr/bin/"${f}"
|
|
done
|
|
}
|
|
|
|
pkg_preinst() {
|
|
local py
|
|
|
|
# Copy python[23] selection from the old format (symlink)
|
|
for py in 2 3; do
|
|
# default to none
|
|
declare -g "PREV_PYTHON${py}"=
|
|
|
|
if [[ -L ${EROOT}/usr/bin/python${py} ]]; then
|
|
local target=$(readlink "${EROOT}/usr/bin/python${py}")
|
|
|
|
# check if it's actually old eselect symlink
|
|
if [[ ${target} == python?.? ]]; then
|
|
declare -g "PREV_PYTHON${py}=${target}"
|
|
fi
|
|
fi
|
|
done
|
|
}
|
|
|
|
pkg_postinst() {
|
|
local py
|
|
|
|
if has_version 'dev-lang/python'; then
|
|
eselect python update --if-unset
|
|
fi
|
|
|
|
for py in 2 3; do
|
|
local pyvar=PREV_PYTHON${py}
|
|
if [[ -n ${!pyvar} ]]; then
|
|
einfo "Setting Python${py} to ${!pyvar}"
|
|
eselect python set "--python${py}" "${!pyvar}"
|
|
elif has_version "=dev-lang/python-${py}*"; then
|
|
eselect python update "--python${py}" --if-unset
|
|
fi
|
|
done
|
|
}
|