patch 7.4.1190
Problem: On OSX the default flag for dlopen() is different.
Solution: Add RTLD_LOCAL in the configure check. (sv99, closes #604)
diff --git a/src/auto/configure b/src/auto/configure
index dfe46ca..8dfecaf 100755
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -5991,7 +5991,9 @@
fi
- if ${vi_cv_dll_name_python+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking Python's dll name" >&5
+$as_echo_n "checking Python's dll name... " >&6; }
+if ${vi_cv_dll_name_python+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -6002,7 +6004,8 @@
fi
fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $vi_cv_dll_name_python" >&5
+$as_echo "$vi_cv_dll_name_python" >&6; }
PYTHON_LIBS="${vi_cv_path_python_plibs}"
if test "${vi_cv_path_python_pfx}" = "${vi_cv_path_python_epfx}"; then
@@ -6320,7 +6323,9 @@
fi
- if ${vi_cv_dll_name_python3+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking Python3's dll name" >&5
+$as_echo_n "checking Python3's dll name... " >&6; }
+if ${vi_cv_dll_name_python3+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -6331,7 +6336,8 @@
fi
fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $vi_cv_dll_name_python3" >&5
+$as_echo "$vi_cv_dll_name_python3" >&6; }
PYTHON3_LIBS="${vi_cv_path_python3_plibs}"
if test "${vi_cv_path_python3_pfx}" = "${vi_cv_path_python3_epfx}"; then
@@ -6473,7 +6479,7 @@
int no_rtl_global_needed_for(char *python_instsoname, char *prefix)
{
int needed = 0;
- void* pylib = dlopen(python_instsoname, RTLD_LAZY);
+ void* pylib = dlopen(python_instsoname, RTLD_LAZY|RTLD_LOCAL);
if (pylib != 0)
{
void (*pfx)(char *home) = dlsym(pylib, "Py_SetPythonHome");
@@ -6539,7 +6545,7 @@
int no_rtl_global_needed_for(char *python_instsoname, wchar_t *prefix)
{
int needed = 0;
- void* pylib = dlopen(python_instsoname, RTLD_LAZY);
+ void* pylib = dlopen(python_instsoname, RTLD_LAZY|RTLD_LOCAL);
if (pylib != 0)
{
void (*pfx)(wchar_t *home) = dlsym(pylib, "Py_SetPythonHome");