comparison src/configure.in @ 7786:0ee0c7729f28 v7.4.1190

commit https://github.com/vim/vim/commit/ba59ddbd3642d02614acbe52694e3e8a78c0e9d3 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jan 28 15:34:25 2016 +0100 patch 7.4.1190 Problem: On OSX the default flag for dlopen() is different. Solution: Add RTLD_LOCAL in the configure check. (sv99, closes https://github.com/vim/vim/issues/604)
author Christian Brabandt <cb@256bit.org>
date Thu, 28 Jan 2016 15:45:05 +0100
parents 3a1b60f5e89b
children cf744110897d
comparison
equal deleted inserted replaced
7785:9420058dfec6 7786:0ee0c7729f28
1217 vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}" 1217 vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
1218 dnl remove -ltermcap, it can conflict with an earlier -lncurses 1218 dnl remove -ltermcap, it can conflict with an earlier -lncurses
1219 vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//` 1219 vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
1220 fi 1220 fi
1221 ]) 1221 ])
1222 AC_CACHE_VAL(vi_cv_dll_name_python, 1222 AC_CACHE_CHECK(Python's dll name,vi_cv_dll_name_python,
1223 [ 1223 [
1224 if test "X$python_DLLLIBRARY" != "X"; then 1224 if test "X$python_DLLLIBRARY" != "X"; then
1225 vi_cv_dll_name_python="$python_DLLLIBRARY" 1225 vi_cv_dll_name_python="$python_DLLLIBRARY"
1226 else 1226 else
1227 vi_cv_dll_name_python="$python_INSTSONAME" 1227 vi_cv_dll_name_python="$python_INSTSONAME"
1426 vi_cv_path_python3_plibs="${vi_cv_path_python3_plibs} ${python3_BASEMODLIBS} ${python3_LIBS} ${python3_SYSLIBS}" 1426 vi_cv_path_python3_plibs="${vi_cv_path_python3_plibs} ${python3_BASEMODLIBS} ${python3_LIBS} ${python3_SYSLIBS}"
1427 dnl remove -ltermcap, it can conflict with an earlier -lncurses 1427 dnl remove -ltermcap, it can conflict with an earlier -lncurses
1428 vi_cv_path_python3_plibs=`echo $vi_cv_path_python3_plibs | sed s/-ltermcap//` 1428 vi_cv_path_python3_plibs=`echo $vi_cv_path_python3_plibs | sed s/-ltermcap//`
1429 vi_cv_path_python3_plibs=`echo $vi_cv_path_python3_plibs | sed s/-lffi//` 1429 vi_cv_path_python3_plibs=`echo $vi_cv_path_python3_plibs | sed s/-lffi//`
1430 ]) 1430 ])
1431 AC_CACHE_VAL(vi_cv_dll_name_python3, 1431 AC_CACHE_CHECK(Python3's dll name,vi_cv_dll_name_python3,
1432 [ 1432 [
1433 if test "X$python3_DLLLIBRARY" != "X"; then 1433 if test "X$python3_DLLLIBRARY" != "X"; then
1434 vi_cv_dll_name_python3="$python3_DLLLIBRARY" 1434 vi_cv_dll_name_python3="$python3_DLLLIBRARY"
1435 else 1435 else
1436 vi_cv_dll_name_python3="$python3_INSTSONAME" 1436 vi_cv_dll_name_python3="$python3_INSTSONAME"
1538 */ 1538 */
1539 1539
1540 int no_rtl_global_needed_for(char *python_instsoname, char *prefix) 1540 int no_rtl_global_needed_for(char *python_instsoname, char *prefix)
1541 { 1541 {
1542 int needed = 0; 1542 int needed = 0;
1543 void* pylib = dlopen(python_instsoname, RTLD_LAZY); 1543 void* pylib = dlopen(python_instsoname, RTLD_LAZY|RTLD_LOCAL);
1544 if (pylib != 0) 1544 if (pylib != 0)
1545 { 1545 {
1546 void (*pfx)(char *home) = dlsym(pylib, "Py_SetPythonHome"); 1546 void (*pfx)(char *home) = dlsym(pylib, "Py_SetPythonHome");
1547 void (*init)(void) = dlsym(pylib, "Py_Initialize"); 1547 void (*init)(void) = dlsym(pylib, "Py_Initialize");
1548 int (*simple)(char*) = dlsym(pylib, "PyRun_SimpleString"); 1548 int (*simple)(char*) = dlsym(pylib, "PyRun_SimpleString");
1584 */ 1584 */
1585 1585
1586 int no_rtl_global_needed_for(char *python_instsoname, wchar_t *prefix) 1586 int no_rtl_global_needed_for(char *python_instsoname, wchar_t *prefix)
1587 { 1587 {
1588 int needed = 0; 1588 int needed = 0;
1589 void* pylib = dlopen(python_instsoname, RTLD_LAZY); 1589 void* pylib = dlopen(python_instsoname, RTLD_LAZY|RTLD_LOCAL);
1590 if (pylib != 0) 1590 if (pylib != 0)
1591 { 1591 {
1592 void (*pfx)(wchar_t *home) = dlsym(pylib, "Py_SetPythonHome"); 1592 void (*pfx)(wchar_t *home) = dlsym(pylib, "Py_SetPythonHome");
1593 void (*init)(void) = dlsym(pylib, "Py_Initialize"); 1593 void (*init)(void) = dlsym(pylib, "Py_Initialize");
1594 int (*simple)(char*) = dlsym(pylib, "PyRun_SimpleString"); 1594 int (*simple)(char*) = dlsym(pylib, "PyRun_SimpleString");