public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2012-12-24  2:51 Zac Medico (zmedico)
  0 siblings, 0 replies; 8+ messages in thread
From: Zac Medico (zmedico) @ 2012-12-24  2:51 UTC (permalink / raw
  To: gentoo-commits

zmedico     12/12/24 02:51:25

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  Fix python-any-r1_pkg_setup fallback logic.

Revision  Changes    Path
1.575                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.575&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.575&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.574&r2=1.575

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.574
retrieving revision 1.575
diff -u -r1.574 -r1.575
--- ChangeLog	22 Dec 2012 03:57:14 -0000	1.574
+++ ChangeLog	24 Dec 2012 02:51:25 -0000	1.575
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.574 2012/12/22 03:57:14 pesa Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.575 2012/12/24 02:51:25 zmedico Exp $
+
+  24 Dec 2012; Zac Medico <zmedico@gentoo.org> python-any-r1.eclass:
+  Fix python-any-r1_pkg_setup fallback logic.
 
   22 Dec 2012; Davide Pesavento <pesa@gentoo.org> qt4-build.eclass:
   Tweak sed expression to match against Qt 4.8.4 too. Thanks to Tomasz



1.4                  eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.4&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.4&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.3&r2=1.4

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- python-any-r1.eclass	20 Dec 2012 23:35:17 -0000	1.3
+++ python-any-r1.eclass	24 Dec 2012 02:51:25 -0000	1.4
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.3 2012/12/20 23:35:17 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.4 2012/12/24 02:51:25 zmedico Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -205,7 +205,7 @@
 	local PYTHON_PKG_DEP
 	for i in "${rev_impls[@]}"; do
 		python_export "${i}" PYTHON_PKG_DEP EPYTHON PYTHON
-		has_version "${PYTHON_PKG_DEP}" && break
+		ROOT=/ has_version "${PYTHON_PKG_DEP}" && return
 	done
 
 	die $EPYTHON





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2013-04-30  5:32 Michal Gorny (mgorny)
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Gorny (mgorny) @ 2013-04-30  5:32 UTC (permalink / raw
  To: gentoo-commits

mgorny      13/04/30 05:32:51

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  Improve consistency in Python version checks and wrapper setup.

Revision  Changes    Path
1.805                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.805&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.805&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.804&r2=1.805

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.804
retrieving revision 1.805
diff -u -r1.804 -r1.805
--- ChangeLog	29 Apr 2013 22:14:23 -0000	1.804
+++ ChangeLog	30 Apr 2013 05:32:51 -0000	1.805
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.804 2013/04/29 22:14:23 tomwij Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.805 2013/04/30 05:32:51 mgorny Exp $
+
+  30 Apr 2013; Michal Gorny <mgorny@gentoo.org> python-any-r1.eclass:
+  Improve consistency in Python version checks and wrapper setup.
 
   29 Apr 2013; Tom Wijsman <TomWij@gentoo.org> kernel-2.eclass:
   Corrected UNIPATCH_DOCS functionality, this went unnoticed since



1.8                  eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.8&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.8&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.7&r2=1.8

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- python-any-r1.eclass	7 Apr 2013 17:02:52 -0000	1.7
+++ python-any-r1.eclass	30 Apr 2013 05:32:51 -0000	1.8
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.7 2013/04/07 17:02:52 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.8 2013/04/30 05:32:51 mgorny Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -158,7 +158,11 @@
 	esac
 
 	if has "${i}" "${PYTHON_COMPAT[@]}"; then
-		return 0
+		local PYTHON_PKG_DEP
+		python_export "${i}" PYTHON_PKG_DEP
+		if ROOT=/ has_version "${PYTHON_PKG_DEP}"; then
+			return 0
+		fi
 	elif ! has "${i}" "${_PYTHON_ALL_IMPLS[@]}"; then
 		ewarn "Invalid EPYTHON: ${EPYTHON}"
 	fi
@@ -176,6 +180,7 @@
 	if [[ ${EPYTHON} ]]; then
 		if _python_EPYTHON_supported "${EPYTHON}"; then
 			python_export EPYTHON PYTHON
+			python_wrapper_setup "${T}"
 			return
 		fi
 	fi
@@ -190,6 +195,7 @@
 			break
 		elif _python_EPYTHON_supported "${i}"; then
 			python_export "${i}" EPYTHON PYTHON
+			python_wrapper_setup "${T}"
 			return
 		fi
 	done
@@ -202,10 +208,9 @@
 		fi
 	done
 
-	local PYTHON_PKG_DEP
 	for i in "${rev_impls[@]}"; do
-		python_export "${i}" PYTHON_PKG_DEP EPYTHON PYTHON
-		if ROOT=/ has_version "${PYTHON_PKG_DEP}"; then
+		python_export "${i}" EPYTHON PYTHON
+		if _python_EPYTHON_supported "${EPYTHON}"; then
 			python_wrapper_setup "${T}"
 			return
 		fi





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2013-04-30  5:33 Michal Gorny (mgorny)
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Gorny (mgorny) @ 2013-04-30  5:33 UTC (permalink / raw
  To: gentoo-commits

mgorny      13/04/30 05:33:19

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  Report no matching impl properly.

Revision  Changes    Path
1.806                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.806&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.806&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.805&r2=1.806

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.805
retrieving revision 1.806
diff -u -r1.805 -r1.806
--- ChangeLog	30 Apr 2013 05:32:51 -0000	1.805
+++ ChangeLog	30 Apr 2013 05:33:19 -0000	1.806
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.805 2013/04/30 05:32:51 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.806 2013/04/30 05:33:19 mgorny Exp $
+
+  30 Apr 2013; Michal Gorny <mgorny@gentoo.org> python-any-r1.eclass:
+  Report no matching impl properly.
 
   30 Apr 2013; Michal Gorny <mgorny@gentoo.org> python-any-r1.eclass:
   Improve consistency in Python version checks and wrapper setup.



1.9                  eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.9&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.9&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.8&r2=1.9

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- python-any-r1.eclass	30 Apr 2013 05:32:51 -0000	1.8
+++ python-any-r1.eclass	30 Apr 2013 05:33:19 -0000	1.9
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.8 2013/04/30 05:32:51 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.9 2013/04/30 05:33:19 mgorny Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -215,6 +215,12 @@
 			return
 		fi
 	done
+
+	eerror "No Python implementation found for the build. This is usually"
+	eerror "a bug in the ebuild. Please report it to bugs.gentoo.org"
+	eerror "along with the build log."
+	echo
+	die "No supported Python implementation installed."
 }
 
 _PYTHON_ANY_R1=1





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2013-04-30  5:34 Michal Gorny (mgorny)
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Gorny (mgorny) @ 2013-04-30  5:34 UTC (permalink / raw
  To: gentoo-commits

mgorny      13/04/30 05:34:33

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  Support declaring python_check_deps() in ebuilds, to check Python impl for proper deps.

Revision  Changes    Path
1.807                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.807&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.807&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.806&r2=1.807

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.806
retrieving revision 1.807
diff -u -r1.806 -r1.807
--- ChangeLog	30 Apr 2013 05:33:19 -0000	1.806
+++ ChangeLog	30 Apr 2013 05:34:33 -0000	1.807
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.806 2013/04/30 05:33:19 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.807 2013/04/30 05:34:33 mgorny Exp $
+
+  30 Apr 2013; Michal Gorny <mgorny@gentoo.org> python-any-r1.eclass:
+  Support declaring python_check_deps() in ebuilds, to check Python impl for
+  proper deps.
 
   30 Apr 2013; Michal Gorny <mgorny@gentoo.org> python-any-r1.eclass:
   Report no matching impl properly.



1.10                 eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.10&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.10&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.9&r2=1.10

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- python-any-r1.eclass	30 Apr 2013 05:33:19 -0000	1.9
+++ python-any-r1.eclass	30 Apr 2013 05:34:33 -0000	1.10
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.9 2013/04/30 05:33:19 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.10 2013/04/30 05:34:33 mgorny Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -20,6 +20,14 @@
 # pkg_setup() which finds the best supported implementation and sets it
 # as the active one.
 #
+# Optionally, you can define a python_check_deps() function. It will
+# be called by the eclass with EPYTHON set to each matching Python
+# implementation and it is expected to check whether the implementation
+# fulfills the package requirements. You can use the locally exported
+# PYTHON_USEDEP to check USE-dependencies of relevant packages. It
+# should return a true value (0) if the Python implementation fulfills
+# the requirements, a false value (non-zero) otherwise.
+#
 # Please note that python-any-r1 will always inherit python-utils-r1
 # as well. Thus, all the functions defined there can be used in the
 # packages using python-any-r1, and there is no need ever to inherit
@@ -134,16 +142,38 @@
 }
 _python_build_set_globals
 
+# @ECLASS-VARIABLE: PYTHON_USEDEP
+# @DESCRIPTION:
+# An eclass-generated USE-dependency string for the currently tested
+# implementation. It is set locally for python_check_deps() call.
+#
+# The generate USE-flag list is compatible with packages using python-r1,
+# python-single-r1 and python-distutils-ng eclasses. It must not be used
+# on packages using python.eclass.
+#
+# Example use:
+# @CODE
+# python_check_deps() {
+#	has_version "dev-python/foo[${PYTHON_USEDEP}]"
+# }
+# @CODE
+#
+# Example value:
+# @CODE
+# python_targets_python2_7(-)?,python_single_target_python2_7(+)?
+# @CODE
+
 # @FUNCTION: _python_EPYTHON_supported
 # @USAGE: <epython>
 # @INTERNAL
 # @DESCRIPTION:
 # Check whether the specified implementation is supported by package
-# (specified in PYTHON_COMPAT).
+# (specified in PYTHON_COMPAT). Calls python_check_deps() if declared.
 _python_EPYTHON_supported() {
 	debug-print-function ${FUNCNAME} "${@}"
 
-	local i=${1/./_}
+	local EPYTHON=${1}
+	local i=${EPYTHON/./_}
 
 	case "${i}" in
 		python*|jython*)
@@ -161,6 +191,12 @@
 		local PYTHON_PKG_DEP
 		python_export "${i}" PYTHON_PKG_DEP
 		if ROOT=/ has_version "${PYTHON_PKG_DEP}"; then
+			if declare -f python_check_deps >/dev/null; then
+				local PYTHON_USEDEP="python_targets_${i}(-),python_single_target_${i}(+)"
+				python_check_deps
+				return ${?}
+			fi
+
 			return 0
 		fi
 	elif ! has "${i}" "${_PYTHON_ALL_IMPLS[@]}"; then





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2013-07-27 11:16 Michal Gorny (mgorny)
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Gorny (mgorny) @ 2013-07-27 11:16 UTC (permalink / raw
  To: gentoo-commits

mgorny      13/07/27 11:16:48

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  Use PYTHON_PKG_DEP for generating deps.

Revision  Changes    Path
1.897                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.897&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.897&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.896&r2=1.897

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.896
retrieving revision 1.897
diff -u -r1.896 -r1.897
--- ChangeLog	27 Jul 2013 10:36:55 -0000	1.896
+++ ChangeLog	27 Jul 2013 11:16:48 -0000	1.897
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.896 2013/07/27 10:36:55 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.897 2013/07/27 11:16:48 mgorny Exp $
+
+  27 Jul 2013; Michał Górny <mgorny@gentoo.org> python-any-r1.eclass:
+  Use PYTHON_PKG_DEP for generating deps.
 
   27 Jul 2013; Michał Górny <mgorny@gentoo.org> systemd.eclass:
   Introduce systemd_is_booted() to allow ebuilds to warn consistently for



1.12                 eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.12&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.12&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.11&r2=1.12

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- python-any-r1.eclass	10 May 2013 22:03:30 -0000	1.11
+++ python-any-r1.eclass	27 Jul 2013 11:16:48 -0000	1.12
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.11 2013/05/10 22:03:30 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.12 2013/07/27 11:16:48 mgorny Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -118,25 +118,13 @@
 	[[ ${PYTHON_REQ_USE} ]] && usestr="[${PYTHON_REQ_USE}]"
 
 	PYTHON_DEPS=
-	local i
+	local i PYTHON_PKG_DEP
 	for i in "${_PYTHON_ALL_IMPLS[@]}"; do
-		if has "${i}" "${PYTHON_COMPAT[@]}"
-		then
-			local d
-			case ${i} in
-				python*)
-					d='dev-lang/python';;
-				jython*)
-					d='dev-java/jython';;
-				pypy*)
-					d='dev-python/pypy';;
-				*)
-					die "Invalid implementation: ${i}"
-			esac
+		has "${i}" "${PYTHON_COMPAT[@]}" || continue
 
-			local v=${i##*[a-z]}
-			PYTHON_DEPS="${d}:${v/_/.}${usestr} ${PYTHON_DEPS}"
-		fi
+		python_export "${i}" PYTHON_PKG_DEP
+
+		PYTHON_DEPS="${PYTHON_PKG_DEP} ${PYTHON_DEPS}"
 	done
 	PYTHON_DEPS="|| ( ${PYTHON_DEPS})"
 }





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2013-08-01 12:49 Michal Gorny (mgorny)
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Gorny (mgorny) @ 2013-08-01 12:49 UTC (permalink / raw
  To: gentoo-commits

mgorny      13/08/01 12:49:42

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  python-any-r1: bail out on invalid PYTHON_COMPAT.

Revision  Changes    Path
1.908                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.908&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.908&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.907&r2=1.908

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.907
retrieving revision 1.908
diff -u -r1.907 -r1.908
--- ChangeLog	31 Jul 2013 21:18:41 -0000	1.907
+++ ChangeLog	1 Aug 2013 12:49:42 -0000	1.908
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.907 2013/07/31 21:18:41 hasufell Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.908 2013/08/01 12:49:42 mgorny Exp $
+
+  01 Aug 2013; Michał Górny <mgorny@gentoo.org> python-any-r1.eclass:
+  python-any-r1: bail out on invalid PYTHON_COMPAT.
 
   31 Jul 2013; Julian Ospald <hasufell@gentoo.org> kernel-2.eclass:
   reword security-deblob-thing acked by keytoaster



1.13                 eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.13&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.13&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.12&r2=1.13

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- python-any-r1.eclass	27 Jul 2013 11:16:48 -0000	1.12
+++ python-any-r1.eclass	1 Aug 2013 12:49:42 -0000	1.13
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.12 2013/07/27 11:16:48 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.13 2013/08/01 12:49:42 mgorny Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -114,11 +114,16 @@
 # @CODE
 
 _python_build_set_globals() {
-	local usestr
+	local usestr i PYTHON_PKG_DEP
 	[[ ${PYTHON_REQ_USE} ]] && usestr="[${PYTHON_REQ_USE}]"
 
+	# check for invalid PYTHON_COMPAT
+	for i in "${PYTHON_COMPAT[@]}"; do
+		# the function simply dies on invalid impl
+		_python_impl_supported "${i}"
+	done
+
 	PYTHON_DEPS=
-	local i PYTHON_PKG_DEP
 	for i in "${_PYTHON_ALL_IMPLS[@]}"; do
 		has "${i}" "${PYTHON_COMPAT[@]}" || continue
 





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2013-09-24 19:53 Michal Gorny (mgorny)
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Gorny (mgorny) @ 2013-09-24 19:53 UTC (permalink / raw
  To: gentoo-commits

mgorny      13/09/24 19:53:06

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  Introduce python_gen_any_dep to generate any-of dependencies matching python_check_deps() code.

Revision  Changes    Path
1.984                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.984&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.984&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.983&r2=1.984

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.983
retrieving revision 1.984
diff -u -r1.983 -r1.984
--- ChangeLog	24 Sep 2013 15:39:43 -0000	1.983
+++ ChangeLog	24 Sep 2013 19:53:06 -0000	1.984
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.983 2013/09/24 15:39:43 maksbotan Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.984 2013/09/24 19:53:06 mgorny Exp $
+
+  24 Sep 2013; Michał Górny <mgorny@gentoo.org> python-any-r1.eclass:
+  Introduce python_gen_any_dep to generate any-of dependencies matching
+  python_check_deps() code.
 
   24 Sep 2013; Maxim Koltsov <maksbotan@gentoo.org> leechcraft.eclass:
   Correct official mirror url in SRC_URI.



1.14                 eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.14&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.14&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.13&r2=1.14

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- python-any-r1.eclass	1 Aug 2013 12:49:42 -0000	1.13
+++ python-any-r1.eclass	24 Sep 2013 19:53:06 -0000	1.14
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.13 2013/08/01 12:49:42 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.14 2013/09/24 19:53:06 mgorny Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -156,6 +156,67 @@
 # python_targets_python2_7(-)?,python_single_target_python2_7(+)?
 # @CODE
 
+# @FUNCTION: python_gen_any_dep
+# @USAGE: <dependency-block>
+# @DESCRIPTION:
+# Generate an any-of dependency that enforces a version match between
+# the Python interpreter and Python packages. <dependency-block> needs
+# to list one or more dependencies with verbatim '${PYTHON_USEDEP}'
+# references (quoted!) that will get expanded inside the function.
+#
+# This should be used along with an appropriate python_check_deps()
+# that checks which of the any-of blocks were matched.
+#
+# Example use:
+# @CODE
+# DEPEND="$(python_gen_any_dep '
+#	dev-python/foo[${PYTHON_USEDEP}]
+#	|| ( dev-python/bar[${PYTHON_USEDEP}]
+#		dev-python/baz[${PYTHON_USEDEP}] )')"
+#
+# python_check_deps() {
+#	has_version "dev-python/foo[${PYTHON_USEDEP}]" \
+#		&& { has_version "dev-python/bar[${PYTHON_USEDEP}]" \
+#			|| has_version "dev-python/baz[${PYTHON_USEDEP}]"; }
+# }
+# @CODE
+#
+# Example value:
+# @CODE
+# || (
+#	(
+#		dev-lang/python:2.7
+#		dev-python/foo[python_targets_python2_7(-)?,python_single_target_python2_7(+)?]
+#		|| ( dev-python/bar[python_targets_python2_7(-)?,python_single_target_python2_7(+)?]
+#			dev-python/baz[python_targets_python2_7(-)?,python_single_target_python2_7(+)?] )
+#	)
+#	(
+#		dev-lang/python:2.6
+#		dev-python/foo[python_targets_python2_6(-)?,python_single_target_python2_6(+)?]
+#		|| ( dev-python/bar[python_targets_python2_6(-)?,python_single_target_python2_6(+)?]
+#			dev-python/baz[python_targets_python2_6(-)?,python_single_target_python2_6(+)?] )
+#	)
+# )
+# @CODE
+python_gen_any_dep() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	local depstr=${1}
+	[[ ${depstr} ]] || die "No dependency string provided"
+
+	local PYTHON_PKG_DEP out=
+	for i in "${_PYTHON_ALL_IMPLS[@]}"; do
+		has "${i}" "${PYTHON_COMPAT[@]}" || continue
+
+		local PYTHON_USEDEP="python_targets_${i}(-),python_single_target_${i}(+)"
+		python_export "${i}" PYTHON_PKG_DEP
+
+		local i_depstr=${depstr//\$\{PYTHON_USEDEP\}/${PYTHON_USEDEP}}
+		out="( ${PYTHON_PKG_DEP} ${i_depstr} ) ${out}"
+	done
+	echo "|| ( ${out})"
+}
+
 # @FUNCTION: _python_EPYTHON_supported
 # @USAGE: <epython>
 # @INTERNAL





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass
@ 2013-10-12 11:08 Michal Gorny (mgorny)
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Gorny (mgorny) @ 2013-10-12 11:08 UTC (permalink / raw
  To: gentoo-commits

mgorny      13/10/12 11:08:12

  Modified:             ChangeLog python-any-r1.eclass
  Log:
  Do not look up Python for binary package install.

Revision  Changes    Path
1.1019               eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1019&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1019&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1018&r2=1.1019

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1018
retrieving revision 1.1019
diff -u -r1.1018 -r1.1019
--- ChangeLog	10 Oct 2013 06:10:00 -0000	1.1018
+++ ChangeLog	12 Oct 2013 11:08:12 -0000	1.1019
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1018 2013/10/10 06:10:00 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1019 2013/10/12 11:08:12 mgorny Exp $
+
+  12 Oct 2013; Michał Górny <mgorny@gentoo.org> python-any-r1.eclass:
+  Do not look up Python for binary package install.
 
   10 Oct 2013; Michał Górny <mgorny@gentoo.org> distutils-r1.eclass:
   Do not alter HOME and TMPDIR when single impl is being used. This may



1.15                 eclass/python-any-r1.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.15&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?rev=1.15&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/python-any-r1.eclass?r1=1.14&r2=1.15

Index: python-any-r1.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- python-any-r1.eclass	24 Sep 2013 19:53:06 -0000	1.14
+++ python-any-r1.eclass	12 Oct 2013 11:08:12 -0000	1.15
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.14 2013/09/24 19:53:06 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/python-any-r1.eclass,v 1.15 2013/10/12 11:08:12 mgorny Exp $
 
 # @ECLASS: python-any-r1
 # @MAINTAINER:
@@ -266,6 +266,10 @@
 python-any-r1_pkg_setup() {
 	debug-print-function ${FUNCNAME} "${@}"
 
+	# avoid looking up Python for binary package install.
+	# if you need Python during pkg_preinst/_postinst, please let us know.
+	[[ ${MERGE_TYPE} == binary ]] && return 0
+
 	# first, try ${EPYTHON}... maybe it's good enough for us.
 	if [[ ${EPYTHON} ]]; then
 		if _python_EPYTHON_supported "${EPYTHON}"; then





^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2013-10-12 11:08 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-12 11:08 [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog python-any-r1.eclass Michal Gorny (mgorny)
  -- strict thread matches above, loose matches on Subject: below --
2013-09-24 19:53 Michal Gorny (mgorny)
2013-08-01 12:49 Michal Gorny (mgorny)
2013-07-27 11:16 Michal Gorny (mgorny)
2013-04-30  5:34 Michal Gorny (mgorny)
2013-04-30  5:33 Michal Gorny (mgorny)
2013-04-30  5:32 Michal Gorny (mgorny)
2012-12-24  2:51 Zac Medico (zmedico)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox