summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-03-24 12:21:33 +0100
committerBram Moolenaar <Bram@vim.org>2015-03-24 12:21:33 +0100
commit6c927557e2b0b2fbc2dfc91f604bf1117d0bf77a (patch)
tree3b3d8d4312688cfae894e3b1b501baea36e8818d
parenteab316bdf9494eb1e076dfc5c8ec7ae000a0560f (diff)
downloadvim-git-6c927557e2b0b2fbc2dfc91f604bf1117d0bf77a.tar.gz
updated for version 7.4.676v7.4.676
Problem: On Mac, when not using the default Python framework configure doesn't do the right thing. Solution: Use a linker search path. (Kazunobu Kuriyama)
-rwxr-xr-xsrc/auto/configure17
-rw-r--r--src/configure.in25
-rw-r--r--src/version.c2
3 files changed, 44 insertions, 0 deletions
diff --git a/src/auto/configure b/src/auto/configure
index 0258a9ed6..b5d178298 100755
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -5888,18 +5888,35 @@ __:
@echo "python_LINKFORSHARED='$(LINKFORSHARED)'"
@echo "python_DLLLIBRARY='$(DLLLIBRARY)'"
@echo "python_INSTSONAME='$(INSTSONAME)'"
+ @echo "python_PYTHONFRAMEWORK='$(PYTHONFRAMEWORK)'"
+ @echo "python_PYTHONFRAMEWORKPREFIX='$(PYTHONFRAMEWORKPREFIX)'"
+ @echo "python_PYTHONFRAMEWORKINSTALLDIR='$(PYTHONFRAMEWORKINSTALLDIR)'"
eof
eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
rm -f -- "${tmp_mkf}"
if test "x$MACOSX" = "xyes" && ${vi_cv_path_python} -c \
"import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then
vi_cv_path_python_plibs="-framework Python"
+ if test "x${vi_cv_path_python}" != "x/usr/bin/python" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
+ vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
+ fi
else
if test "${vi_cv_var_python_version}" = "1.4"; then
vi_cv_path_python_plibs="${PYTHON_CONFDIR}/libModules.a ${PYTHON_CONFDIR}/libPython.a ${PYTHON_CONFDIR}/libObjects.a ${PYTHON_CONFDIR}/libParser.a"
else
vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}"
fi
+ if test -n "${python_LINKFORSHARED}"; then
+ python_link_symbol=`echo ${python_LINKFORSHARED} | sed 's/\([^ \t][^ \t]*[ \t][ \t]*[^ \t][^ \t]*\)[ \t].*/\1/'`
+ python_link_path=`echo ${python_LINKFORSHARED} | sed 's/\([^ \t][^ \t]*[ \t][ \t]*[^ \t][^ \t]*\)[ \t][ \t]*\(.*\)/\2/'`
+ if test -n "${python_link_path}" && ! test -x "${python_link_path}"; then
+ python_link_path="${python_PYTHONFRAMEWORKPREFIX}/${python_link_path}"
+ if test -n "${python_link_path}" && ! test -x "${python_link_path}"; then
+ python_link_path="${python_PYTHONFRAMEWORKINSTALLDIR}/Versions/${vi_cv_var_python_version}/${python_PYTHONFRAMEWORK}"
+ fi
+ python_LINKFORSHARED="${python_link_symbol} ${python_link_path}"
+ fi
+ fi
vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
fi
diff --git a/src/configure.in b/src/configure.in
index 7fa429739..9d8121530 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1126,6 +1126,9 @@ __:
@echo "python_LINKFORSHARED='$(LINKFORSHARED)'"
@echo "python_DLLLIBRARY='$(DLLLIBRARY)'"
@echo "python_INSTSONAME='$(INSTSONAME)'"
+ @echo "python_PYTHONFRAMEWORK='$(PYTHONFRAMEWORK)'"
+ @echo "python_PYTHONFRAMEWORKPREFIX='$(PYTHONFRAMEWORKPREFIX)'"
+ @echo "python_PYTHONFRAMEWORKINSTALLDIR='$(PYTHONFRAMEWORKINSTALLDIR)'"
eof
dnl -- delete the lines from make about Entering/Leaving directory
eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
@@ -1133,12 +1136,34 @@ eof
if test "x$MACOSX" = "xyes" && ${vi_cv_path_python} -c \
"import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then
vi_cv_path_python_plibs="-framework Python"
+ if test "x${vi_cv_path_python}" != "x/usr/bin/python" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
+ vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
+ fi
else
if test "${vi_cv_var_python_version}" = "1.4"; then
vi_cv_path_python_plibs="${PYTHON_CONFDIR}/libModules.a ${PYTHON_CONFDIR}/libPython.a ${PYTHON_CONFDIR}/libObjects.a ${PYTHON_CONFDIR}/libParser.a"
else
vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}"
fi
+ dnl -- Check if the path contained in python_LINKFORSHARED is
+ dnl usable for vim build. If not, make and try other
+ dnl candidates.
+ if test -n "${python_LINKFORSHARED}"; then
+ python_link_symbol=`echo ${python_LINKFORSHARED} | sed 's/\([[^ \t]][[^ \t]]*[[ \t]][[ \t]]*[[^ \t]][[^ \t]]*\)[[ \t]].*/\1/'`
+ python_link_path=`echo ${python_LINKFORSHARED} | sed 's/\([[^ \t]][[^ \t]]*[[ \t]][[ \t]]*[[^ \t]][[^ \t]]*\)[[ \t]][[ \t]]*\(.*\)/\2/'`
+ if test -n "${python_link_path}" && ! test -x "${python_link_path}"; then
+ dnl -- The path looks relative. Guess the absolute one using
+ dnl the prefix and try that.
+ python_link_path="${python_PYTHONFRAMEWORKPREFIX}/${python_link_path}"
+ if test -n "${python_link_path}" && ! test -x "${python_link_path}"; then
+ dnl -- A last resort.
+ python_link_path="${python_PYTHONFRAMEWORKINSTALLDIR}/Versions/${vi_cv_var_python_version}/${python_PYTHONFRAMEWORK}"
+ dnl -- No check is done. The last word is left to the
+ dnl "sanity" test on link flags that follows shortly.
+ fi
+ python_LINKFORSHARED="${python_link_symbol} ${python_link_path}"
+ fi
+ fi
vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
dnl remove -ltermcap, it can conflict with an earlier -lncurses
vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
diff --git a/src/version.c b/src/version.c
index bb19cb75e..86a59978d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 676,
+/**/
675,
/**/
674,