aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustus Winter <[email protected]>2017-03-13 14:37:15 +0000
committerJustus Winter <[email protected]>2017-03-14 11:20:19 +0000
commit6a371663886a7ba6073f385a3ab5f5a03de8e008 (patch)
tree1d338ea444e93cc391bb4977ed8c1d8a58992770
parentbuild: Tune M4 macros for our needs. (diff)
downloadgpgme-6a371663886a7ba6073f385a3ab5f5a03de8e008.tar.gz
gpgme-6a371663886a7ba6073f385a3ab5f5a03de8e008.zip
build: Improve Python detection.
* configure.ac: Do not error out too early if we don't find a matching Python version. We handle this case later. Signed-off-by: Justus Winter <[email protected]>
-rw-r--r--configure.ac38
1 files changed, 24 insertions, 14 deletions
diff --git a/configure.ac b/configure.ac
index ba269016..2701d413 100644
--- a/configure.ac
+++ b/configure.ac
@@ -418,12 +418,13 @@ if test "$found_py" = "1" -o "$found_py2" = "1" -o "$found_py3" = "1"; then
unset am_cv_python_pyexecdir
if test "$found_py" = "1" -o "$found_py2" = "1"; then
- AM_PATH_PYTHON([2.7])
- AX_PYTHON_DEVEL
- if test "$PYTHON_VERSION"; then
- PYTHONS="$(echo $PYTHONS $PYTHON)"
- PYTHON_VERSIONS="$(echo $PYTHON_VERSIONS $PYTHON_VERSION)"
- fi
+ AM_PATH_PYTHON([2.7], [
+ AX_PYTHON_DEVEL
+ if test "$PYTHON_VERSION"; then
+ PYTHONS="$(echo $PYTHONS $PYTHON)"
+ PYTHON_VERSIONS="$(echo $PYTHON_VERSIONS $PYTHON_VERSION)"
+ fi
+ ], :)
fi
if test "$found_py" = "1" -o "$found_py3" = "1"; then
@@ -441,17 +442,26 @@ if test "$found_py" = "1" -o "$found_py2" = "1" -o "$found_py3" = "1"; then
unset am_cv_python_platform
unset am_cv_python_pythondir
unset am_cv_python_pyexecdir
- AM_PATH_PYTHON([3.4])
- AX_PYTHON_DEVEL
- if test "$PYTHON_VERSION"; then
- PYTHONS="$(echo $PYTHONS $PYTHON)"
- PYTHON_VERSIONS="$(echo $PYTHON_VERSIONS $PYTHON_VERSION)"
- fi
+ AM_PATH_PYTHON([3.4], [
+ AX_PYTHON_DEVEL
+ if test "$PYTHON_VERSION"; then
+ PYTHONS="$(echo $PYTHONS $PYTHON)"
+ PYTHON_VERSIONS="$(echo $PYTHON_VERSIONS $PYTHON_VERSION)"
+ fi
+ ], :)
fi
+ # Recover some values lost in the second attempt to find Python.
+ PYTHON="$(echo $PYTHONS | cut -d ' ' -f 1)"
+ PYTHON_VERSION="$(echo $PYTHON_VERSIONS | cut -d ' ' -f 1)"
+
+ # Remove duplicates.
+ PYTHONS="$(echo $PYTHONS | tr '[[:space:]]' '\n' | sort | uniq | tr '\n' ' ' | sed -e 's/ $//')"
+ PYTHON_VERSIONS="$(echo $PYTHON_VERSIONS | tr '[[:space:]]' '\n' | sort | uniq | tr '\n' ' ' | sed -e 's/ $//')"
+
if test "$PYTHON_VERSIONS"; then
- enabled_languages_v=$(echo $enabled_languages | sed "s/python\([[23]]\)\?/python ($PYTHON_VERSIONS)/")
- enabled_languages=$(echo $enabled_languages | sed "s/python\([[23]]\)\?/python/")
+ enabled_languages_v=$(echo $enabled_languages | sed -Ee "s/python[[23]]?/python ($PYTHON_VERSIONS)/")
+ enabled_languages=$(echo $enabled_languages | sed -Ee "s/python[[23]]?/python/")
else
if test "$explicit_languages" = "1"; then
AC_MSG_ERROR([[