public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-07 19:58 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-07 19:58 UTC (permalink / raw
  To: gentoo-commits

commit:     5a70c5afbc2b45b222b2549b6cd7418f2bc5d948
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  7 09:28:21 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 19:52:51 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5a70c5af

python-utils-r1.eclass: set PYTHON locally in python_export()

Ensure that PYTHON is always set inside python_export() for convenience.
If it wasn't requested for explicit export, make it a local variable.

 eclass/python-utils-r1.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a80bdf4..69166cf 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -248,6 +248,12 @@ python_export() {
 	esac
 	debug-print "${FUNCNAME}: implementation: ${impl}"
 
+	# make sure it doesn't leave our function unless desired
+	if ! has PYTHON "${@}"; then
+		local PYTHON
+	fi
+	export PYTHON=${EPREFIX}/usr/bin/${impl}
+
 	for var; do
 		case "${var}" in
 			EPYTHON)
@@ -255,7 +261,7 @@ python_export() {
 				debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
 				;;
 			PYTHON)
-				export PYTHON=${EPREFIX}/usr/bin/${impl}
+				# already exported above
 				debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
 				;;
 			PYTHON_SITEDIR)


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-10 17:53 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-10 17:53 UTC (permalink / raw
  To: gentoo-commits

commit:     e2cfe4b65816c63e86412370b11753f703ddc116
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  8 08:30:37 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov 10 17:40:49 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2cfe4b6

python-utils-r1.eclass: Reuse PYTHON_CONFIG in python_wrapper_setup()

 eclass/python-utils-r1.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 68926ab..33cee1b 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -877,8 +877,8 @@ python_wrapper_setup() {
 		rm -f "${workdir}"/bin/2to3 || die
 		rm -f "${workdir}"/pkgconfig/python{,2,3}.pc || die
 
-		local EPYTHON PYTHON
-		python_export "${impl}" EPYTHON PYTHON
+		local EPYTHON PYTHON PYTHON_CONFIG
+		python_export "${impl}" EPYTHON PYTHON PYTHON_CONFIG
 
 		local pyver pyother
 		if python_is_python3; then
@@ -906,7 +906,7 @@ python_wrapper_setup() {
 		if [[ ${EPYTHON} == python* ]]; then
 			cat > "${workdir}/bin/python-config" <<-_EOF_
 				#!/bin/sh
-				exec "${PYTHON}-config" "\${@}"
+				exec "${PYTHON_CONFIG}" "\${@}"
 			_EOF_
 			cp "${workdir}/bin/python-config" \
 				"${workdir}/bin/python${pyver}-config" || die


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-10 17:53 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-10 17:53 UTC (permalink / raw
  To: gentoo-commits

commit:     3baa63fc95509cf3c2da7bf3d87537b6c4d8d8c2
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  7 09:28:21 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov 10 17:40:49 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3baa63fc

python-utils-r1.eclass: set PYTHON locally in python_export()

Ensure that PYTHON is always set inside python_export() for convenience.
If it wasn't requested for explicit export, make it a local variable.

 eclass/python-utils-r1.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a80bdf4..69166cf 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -248,6 +248,12 @@ python_export() {
 	esac
 	debug-print "${FUNCNAME}: implementation: ${impl}"
 
+	# make sure it doesn't leave our function unless desired
+	if ! has PYTHON "${@}"; then
+		local PYTHON
+	fi
+	export PYTHON=${EPREFIX}/usr/bin/${impl}
+
 	for var; do
 		case "${var}" in
 			EPYTHON)
@@ -255,7 +261,7 @@ python_export() {
 				debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
 				;;
 			PYTHON)
-				export PYTHON=${EPREFIX}/usr/bin/${impl}
+				# already exported above
 				debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
 				;;
 			PYTHON_SITEDIR)


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-08  8:42 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-08  8:42 UTC (permalink / raw
  To: gentoo-commits

commit:     dc67356c18e3e5f6fdcbee6e893777e4e953f232
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  8 08:30:37 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Nov  8 08:42:24 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dc67356c

python-utils-r1.eclass: Reuse PYTHON_CONFIG in python_wrapper_setup()

 eclass/python-utils-r1.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 68926ab..33cee1b 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -877,8 +877,8 @@ python_wrapper_setup() {
 		rm -f "${workdir}"/bin/2to3 || die
 		rm -f "${workdir}"/pkgconfig/python{,2,3}.pc || die
 
-		local EPYTHON PYTHON
-		python_export "${impl}" EPYTHON PYTHON
+		local EPYTHON PYTHON PYTHON_CONFIG
+		python_export "${impl}" EPYTHON PYTHON PYTHON_CONFIG
 
 		local pyver pyother
 		if python_is_python3; then
@@ -906,7 +906,7 @@ python_wrapper_setup() {
 		if [[ ${EPYTHON} == python* ]]; then
 			cat > "${workdir}/bin/python-config" <<-_EOF_
 				#!/bin/sh
-				exec "${PYTHON}-config" "\${@}"
+				exec "${PYTHON_CONFIG}" "\${@}"
 			_EOF_
 			cp "${workdir}/bin/python-config" \
 				"${workdir}/bin/python${pyver}-config" || die


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-08  8:42 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-08  8:42 UTC (permalink / raw
  To: gentoo-commits

commit:     ea4e80de8b42fe508d870a6dcb1a87fa7f880362
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  7 09:28:21 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Nov  8 08:40:18 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea4e80de

python-utils-r1.eclass: set PYTHON locally in python_export()

Ensure that PYTHON is always set inside python_export() for convenience.
If it wasn't requested for explicit export, make it a local variable.

 eclass/python-utils-r1.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a80bdf4..69166cf 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -248,6 +248,12 @@ python_export() {
 	esac
 	debug-print "${FUNCNAME}: implementation: ${impl}"
 
+	# make sure it doesn't leave our function unless desired
+	if ! has PYTHON "${@}"; then
+		local PYTHON
+	fi
+	export PYTHON=${EPREFIX}/usr/bin/${impl}
+
 	for var; do
 		case "${var}" in
 			EPYTHON)
@@ -255,7 +261,7 @@ python_export() {
 				debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
 				;;
 			PYTHON)
-				export PYTHON=${EPREFIX}/usr/bin/${impl}
+				# already exported above
 				debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
 				;;
 			PYTHON_SITEDIR)


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-07 19:44 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-07 19:44 UTC (permalink / raw
  To: gentoo-commits

commit:     f15189332c0aec22cddae7121db3f326e484210e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  7 09:28:21 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 18:31:16 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1518933

python-utils-r1.eclass: set PYTHON locally in python_export()

Ensure that PYTHON is always set inside python_export() for convenience.
If it wasn't requested for explicit export, make it a local variable.

 eclass/python-utils-r1.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a80bdf4..69166cf 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -248,6 +248,12 @@ python_export() {
 	esac
 	debug-print "${FUNCNAME}: implementation: ${impl}"
 
+	# make sure it doesn't leave our function unless desired
+	if ! has PYTHON "${@}"; then
+		local PYTHON
+	fi
+	export PYTHON=${EPREFIX}/usr/bin/${impl}
+
 	for var; do
 		case "${var}" in
 			EPYTHON)
@@ -255,7 +261,7 @@ python_export() {
 				debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
 				;;
 			PYTHON)
-				export PYTHON=${EPREFIX}/usr/bin/${impl}
+				# already exported above
 				debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
 				;;
 			PYTHON_SITEDIR)


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-07  9:40 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-07  9:40 UTC (permalink / raw
  To: gentoo-commits

commit:     c90f29e7f7247bf1250dd4d4db79eb63c4177872
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  7 09:28:21 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 09:30:13 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c90f29e7

python-utils-r1.eclass: set PYTHON locally in python_export()

Ensure that PYTHON is always set inside python_export() for convenience.
If it wasn't requested for explicit export, make it a local variable.

 eclass/python-utils-r1.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a80bdf4..69166cf 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -248,6 +248,12 @@ python_export() {
 	esac
 	debug-print "${FUNCNAME}: implementation: ${impl}"
 
+	# make sure it doesn't leave our function unless desired
+	if ! has PYTHON "${@}"; then
+		local PYTHON
+	fi
+	export PYTHON=${EPREFIX}/usr/bin/${impl}
+
 	for var; do
 		case "${var}" in
 			EPYTHON)
@@ -255,7 +261,7 @@ python_export() {
 				debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
 				;;
 			PYTHON)
-				export PYTHON=${EPREFIX}/usr/bin/${impl}
+				# already exported above
 				debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
 				;;
 			PYTHON_SITEDIR)


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-07  9:40 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-07  9:40 UTC (permalink / raw
  To: gentoo-commits

commit:     ee9f4b45a82a129269431861c5a6619a3a7622d1
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  6 22:21:37 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 09:30:19 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee9f4b45

python-utils-r1.eclass: Obtain include directory from the interpreter

Obtain the Python include directory using the sysconfig module of
the Python interpreter rather than hardcoding values for it. This makes
the code more maintainable, and clears the way for re-enabling ABIFLAGS
on new Python versions.

 eclass/python-utils-r1.eclass | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 69166cf..467d83f 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -138,6 +138,7 @@ _python_impl_supported() {
 # The path to Python include directory.
 #
 # Set and exported on request using python_export().
+# Requires a proper build-time dependency on the Python implementation.
 #
 # Example value:
 # @CODE
@@ -279,21 +280,13 @@ python_export() {
 				debug-print "${FUNCNAME}: PYTHON_SITEDIR = ${PYTHON_SITEDIR}"
 				;;
 			PYTHON_INCLUDEDIR)
-				local dir
-				case "${impl}" in
-					python*)
-						dir=/usr/include/${impl}
-						;;
-					pypy|pypy3)
-						dir=/usr/$(get_libdir)/${impl}/include
-						;;
-					*)
-						die "${impl} lacks header files"
-						;;
-				esac
-
-				export PYTHON_INCLUDEDIR=${EPREFIX}${dir}
+				export PYTHON_INCLUDEDIR=$("${PYTHON}" -c 'import sysconfig; print(sysconfig.get_path("include"))')
 				debug-print "${FUNCNAME}: PYTHON_INCLUDEDIR = ${PYTHON_INCLUDEDIR}"
+
+				# Jython gives a non-existing directory
+				if [[ ! -d ${PYTHON_INCLUDEDIR} ]]; then
+					die "${impl} does not install any header files!"
+				fi
 				;;
 			PYTHON_LIBPATH)
 				local libname


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-07  9:40 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-07  9:40 UTC (permalink / raw
  To: gentoo-commits

commit:     9441784adb703b887201786fa82be4f9dcd8727c
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  6 22:41:52 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 09:30:22 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9441784a

python-utils-r1.eclass: Obtain library path from the interpreter

Obtain library path as concatenation of LIBDIR and LDLIBRARY config
variables (from sysconfig module) rather than hardcoding it in the
eclass. This improves maintainability and fixes compatibility with
ABIFLAGS-enabled Python 3.3+.

 eclass/python-utils-r1.eclass | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 467d83f..b8d093a 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -151,7 +151,8 @@ _python_impl_supported() {
 # The path to Python library.
 #
 # Set and exported on request using python_export().
-# Valid only for CPython.
+# Valid only for CPython. Requires a proper build-time dependency
+# on the Python implementation.
 #
 # Example value:
 # @CODE
@@ -289,20 +290,12 @@ python_export() {
 				fi
 				;;
 			PYTHON_LIBPATH)
-				local libname
-				case "${impl}" in
-					python*)
-						libname=lib${impl}
-						;;
-					*)
-						die "${impl} lacks a dynamic library"
-						;;
-				esac
-
-				local path=${EPREFIX}/usr/$(get_libdir)
-
-				export PYTHON_LIBPATH=${path}/${libname}$(get_libname)
+				export PYTHON_LIBPATH=$("${PYTHON}" -c 'import os.path, sysconfig; print(os.path.join(sysconfig.get_config_var("LIBDIR"), sysconfig.get_config_var("LDLIBRARY")) if sysconfig.get_config_var("LDLIBRARY") else "")')
 				debug-print "${FUNCNAME}: PYTHON_LIBPATH = ${PYTHON_LIBPATH}"
+
+				if [[ ! ${PYTHON_LIBPATH} ]]; then
+					die "${impl} lacks a (usable) dynamic library"
+				fi
 				;;
 			PYTHON_CFLAGS)
 				local val


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-07  9:16 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-07  9:16 UTC (permalink / raw
  To: gentoo-commits

commit:     b52e01678e9106467a712258e0f3a6a3af53bb62
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  6 22:41:52 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 09:12:23 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b52e0167

python-utils-r1.eclass: Obtain library path from the interpreter

Obtain library path as concatenation of LIBDIR and LDLIBRARY config
variables (from sysconfig module) rather than hardcoding it in the
eclass. This improves maintainability and fixes compatibility with
ABIFLAGS-enabled Python 3.3+.

 eclass/python-utils-r1.eclass | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 911a1fd..016d3a7 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -151,7 +151,8 @@ _python_impl_supported() {
 # The path to Python library.
 #
 # Set and exported on request using python_export().
-# Valid only for CPython.
+# Valid only for CPython. Requires a proper build-time dependency
+# on the Python implementation.
 #
 # Example value:
 # @CODE
@@ -283,20 +284,12 @@ python_export() {
 				fi
 				;;
 			PYTHON_LIBPATH)
-				local libname
-				case "${impl}" in
-					python*)
-						libname=lib${impl}
-						;;
-					*)
-						die "${impl} lacks a dynamic library"
-						;;
-				esac
-
-				local path=${EPREFIX}/usr/$(get_libdir)
-
-				export PYTHON_LIBPATH=${path}/${libname}$(get_libname)
+				export PYTHON_LIBPATH=$("${PYTHON}" -c 'import os.path, sysconfig; print(os.path.join(sysconfig.get_config_var("LIBDIR"), sysconfig.get_config_var("LDLIBRARY")) if sysconfig.get_config_var("LDLIBRARY") else "")')
 				debug-print "${FUNCNAME}: PYTHON_LIBPATH = ${PYTHON_LIBPATH}"
+
+				if [[ ! ${PYTHON_LIBPATH} ]]; then
+					die "${impl} lacks a (usable) dynamic library"
+				fi
 				;;
 			PYTHON_CFLAGS)
 				local val


^ permalink raw reply related	[flat|nested] 11+ messages in thread
* [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/
@ 2015-11-07  9:16 Michał Górny
  0 siblings, 0 replies; 11+ messages in thread
From: Michał Górny @ 2015-11-07  9:16 UTC (permalink / raw
  To: gentoo-commits

commit:     8c99a0fa34decdf32e32766d18386675ee7b84ae
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  6 22:21:37 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 09:12:23 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c99a0fa

python-utils-r1.eclass: Obtain include directory from the interpreter

Obtain the Python include directory using the sysconfig module of
the Python interpreter rather than hardcoding values for it. This makes
the code more maintainable, and clears the way for re-enabling ABIFLAGS
on new Python versions.

 eclass/python-utils-r1.eclass | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a80bdf4..911a1fd 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -138,6 +138,7 @@ _python_impl_supported() {
 # The path to Python include directory.
 #
 # Set and exported on request using python_export().
+# Requires a proper build-time dependency on the Python implementation.
 #
 # Example value:
 # @CODE
@@ -273,21 +274,13 @@ python_export() {
 				debug-print "${FUNCNAME}: PYTHON_SITEDIR = ${PYTHON_SITEDIR}"
 				;;
 			PYTHON_INCLUDEDIR)
-				local dir
-				case "${impl}" in
-					python*)
-						dir=/usr/include/${impl}
-						;;
-					pypy|pypy3)
-						dir=/usr/$(get_libdir)/${impl}/include
-						;;
-					*)
-						die "${impl} lacks header files"
-						;;
-				esac
-
-				export PYTHON_INCLUDEDIR=${EPREFIX}${dir}
+				export PYTHON_INCLUDEDIR=$("${PYTHON}" -c 'import sysconfig; print(sysconfig.get_path("include"))')
 				debug-print "${FUNCNAME}: PYTHON_INCLUDEDIR = ${PYTHON_INCLUDEDIR}"
+
+				# Jython gives a non-existing directory
+				if [[ ! -d ${PYTHON_INCLUDEDIR} ]]; then
+					die "${impl} does not install any header files!"
+				fi
 				;;
 			PYTHON_LIBPATH)
 				local libname


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

end of thread, other threads:[~2015-11-10 17:53 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-07 19:58 [gentoo-commits] repo/gentoo:python-soabi-cleanup commit in: eclass/ Michał Górny
  -- strict thread matches above, loose matches on Subject: below --
2015-11-10 17:53 Michał Górny
2015-11-10 17:53 Michał Górny
2015-11-08  8:42 Michał Górny
2015-11-08  8:42 Michał Górny
2015-11-07 19:44 Michał Górny
2015-11-07  9:40 Michał Górny
2015-11-07  9:40 Michał Górny
2015-11-07  9:40 Michał Górny
2015-11-07  9:16 Michał Górny
2015-11-07  9:16 Michał Górny

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