From e9df59462c9f3731db65e62fd852605ad569f702 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 9 Sep 2019 18:19:26 +0200 Subject: [PATCH] dev-lang/python-exec: Install python{2,3} conditionally MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Closes: https://bugs.gentoo.org/693910 Signed-off-by: Michał Górny Closes: https://github.com/gentoo/gentoo/pull/12892 Signed-off-by: Michał Górny --- .../python-exec/python-exec-2.4.6-r1.ebuild | 20 +++++++++++++++++-- dev-lang/python-exec/python-exec-9999.ebuild | 20 +++++++++++++++++-- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild b/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild index 9f56ea1a1d85..d18086c2f138 100644 --- a/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild +++ b/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild @@ -49,13 +49,29 @@ src_install() { newins - python-exec.conf \ < <(sed -n -e '/^#/p' config/python-exec.conf.example) + local programs=( python ) + local scripts=( python-config 2to3 idle pydoc pyvenv ) + local i + for i in "${_PYTHON_ALL_IMPLS[@]}"; do + if use "python_targets_${i}"; then + # NB: duplicate entries are harmless + if python_is_python3 "${i}"; then + programs+=( python3 ) + scripts+=( python3-config ) + else + programs+=( python2 ) + scripts+=( python2-config ) + fi + fi + done + local f - for f in python{,2,3}; do + for f in "${programs[@]}"; do # symlink the C wrapper for python to avoid shebang recursion # bug #568974 dosym python-exec2c /usr/bin/"${f}" done - for f in python{,2,3}-config 2to3 idle pydoc pyvenv; do + for f in "${scripts[@]}"; do # those are python scripts (except for new python-configs) # so symlink them via the python wrapper dosym ../lib/python-exec/python-exec2 /usr/bin/"${f}" diff --git a/dev-lang/python-exec/python-exec-9999.ebuild b/dev-lang/python-exec/python-exec-9999.ebuild index ca430aeaf2d8..b37d3e0c3b6f 100644 --- a/dev-lang/python-exec/python-exec-9999.ebuild +++ b/dev-lang/python-exec/python-exec-9999.ebuild @@ -55,13 +55,29 @@ src_install() { newins - python-exec.conf \ < <(sed -n -e '/^#/p' config/python-exec.conf.example) + local programs=( python ) + local scripts=( python-config 2to3 idle pydoc pyvenv ) + local i + for i in "${_PYTHON_ALL_IMPLS[@]}"; do + if use "python_targets_${i}"; then + # NB: duplicate entries are harmless + if python_is_python3 "${i}"; then + programs+=( python3 ) + scripts+=( python3-config ) + else + programs+=( python2 ) + scripts+=( python2-config ) + fi + fi + done + local f - for f in python{,2,3}; do + for f in "${programs[@]}"; do # symlink the C wrapper for python to avoid shebang recursion # bug #568974 dosym python-exec2c /usr/bin/"${f}" done - for f in python{,2,3}-config 2to3 idle pydoc pyvenv; do + for f in "${scripts[@]}"; do # those are python scripts (except for new python-configs) # so symlink them via the python wrapper dosym ../lib/python-exec/python-exec2 /usr/bin/"${f}" -- 2.26.2