summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-10-08 17:41:37 +0200
committerBram Moolenaar <Bram@vim.org>2017-10-08 17:41:37 +0200
commit0ab35b279f9d64f32e99424166b047f90cb042d8 (patch)
tree8e076a67634c9afc9a3e74393c79b85df7f37222
parent4635e11c6bd63d8be90a2d9455802c6e7bde28f5 (diff)
patch 8.0.1182: cannot see or change mzscheme dll namev8.0.1182
Problem: Cannot see or change mzscheme dll name. Solution: Add 'mzschemedll' and 'mzschemegcdll'.
-rw-r--r--runtime/doc/if_mzsch.txt9
-rw-r--r--runtime/doc/options.txt25
-rw-r--r--src/if_mzsch.c2
-rw-r--r--src/option.c18
-rw-r--r--src/option.h4
-rw-r--r--src/version.c2
6 files changed, 56 insertions, 4 deletions
diff --git a/runtime/doc/if_mzsch.txt b/runtime/doc/if_mzsch.txt
index 7e206f5190..a9a03139f4 100644
--- a/runtime/doc/if_mzsch.txt
+++ b/runtime/doc/if_mzsch.txt
@@ -1,4 +1,4 @@
-*if_mzsch.txt* For Vim version 8.0. Last change: 2016 Jan 24
+*if_mzsch.txt* For Vim version 8.0. Last change: 2017 Oct 08
VIM REFERENCE MANUAL by Sergey Khorev
@@ -278,12 +278,15 @@ When you don't use the MzScheme interface you don't need them, thus you can
use Vim without these DLL files.
NOTE: Newer version of MzScheme (Racket) require earlier (trampolined)
initialisation via scheme_main_setup. So Vim always loads the MzScheme DLL at
-startup if possible.
+startup if possible. This may make Vim startup slower.
To use the MzScheme interface the MzScheme DLLs must be in your search path.
In a console window type "path" to see what directories are used.
-The names of the DLLs must match the MzScheme version Vim was compiled with.
+On MS-Windows the options 'mzschemedll' and 'mzschemegcdll' are used for the
+name of the library to load. The initial value is specified at build time.
+
+The version of the DLL must match the MzScheme version Vim was compiled with.
For MzScheme version 209 they will be "libmzsch209_000.dll" and
"libmzgc209_000.dll". To know for sure look at the output of the ":version"
command, look for -DDYNAMIC_MZSCH_DLL="something" and
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 56697d51de..ebe9c92620 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -5468,6 +5468,31 @@ A jump table for the options with a short description can be found at |Q_op|.
time in msec between two mouse clicks for the second click to be
recognized as a multi click.
+ *'mzschemedll'*
+'mzschemedll' string (default depends on the build)
+ global
+ {not in Vi}
+ {only available when compiled with the |+mzscheme/dyn|
+ feature}
+ Specifies the name of the MzScheme shared library. The default is
+ DYNAMIC_MZSCH_DLL which was specified at compile time.
+ Environment variables are expanded |:set_env|.
+ This option cannot be set from a |modeline| or in the |sandbox|, for
+ security reasons.
+
+ *'mzschemegcdll'*
+'mzschemegcdll' string (default depends on the build)
+ global
+ {not in Vi}
+ {only available when compiled with the |+mzscheme/dyn|
+ feature}
+ Specifies the name of the MzScheme GC shared library. The default is
+ DYNAMIC_MZGC_DLL which was specified at compile time.
+ The value can be equal to 'mzschemedll' if it includes the GC code.
+ Environment variables are expanded |:set_env|.
+ This option cannot be set from a |modeline| or in the |sandbox|, for
+ security reasons.
+
*'mzquantum'* *'mzq'*
'mzquantum' 'mzq' number (default 100)
global
diff --git a/src/if_mzsch.c b/src/if_mzsch.c
index c9c5969483..54474bd807 100644
--- a/src/if_mzsch.c
+++ b/src/if_mzsch.c
@@ -757,7 +757,7 @@ mzscheme_runtime_link_init(char *sch_dll, char *gc_dll, int verbose)
mzscheme_enabled(int verbose)
{
return mzscheme_runtime_link_init(
- DYNAMIC_MZSCH_DLL, DYNAMIC_MZGC_DLL, verbose) == OK;
+ (char *)p_mzschemedll, (char *)p_mzschemegcdll, verbose) == OK;
}
static void
diff --git a/src/option.c b/src/option.c
index 4e2b929693..2743f16071 100644
--- a/src/option.c
+++ b/src/option.c
@@ -2008,6 +2008,24 @@ static struct vimoption options[] =
{"mousetime", "mouset", P_NUM|P_VI_DEF,
(char_u *)&p_mouset, PV_NONE,
{(char_u *)500L, (char_u *)0L} SCRIPTID_INIT},
+ {"mzschemedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
+#if defined(DYNAMIC_MZSCHEME)
+ (char_u *)&p_mzschemedll, PV_NONE,
+ {(char_u *)DYNAMIC_MZSCH_DLL, (char_u *)0L}
+#else
+ (char_u *)NULL, PV_NONE,
+ {(char_u *)"", (char_u *)0L}
+#endif
+ SCRIPTID_INIT},
+ {"mzschemegcdll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
+#if defined(DYNAMIC_MZSCHEME)
+ (char_u *)&p_mzschemegcdll, PV_NONE,
+ {(char_u *)DYNAMIC_MZGC_DLL, (char_u *)0L}
+#else
+ (char_u *)NULL, PV_NONE,
+ {(char_u *)"", (char_u *)0L}
+#endif
+ SCRIPTID_INIT},
{"mzquantum", "mzq", P_NUM,
#ifdef FEAT_MZSCHEME
(char_u *)&p_mzq, PV_NONE,
diff --git a/src/option.h b/src/option.h
index ecd70dced9..88eadae4c8 100644
--- a/src/option.h
+++ b/src/option.h
@@ -662,6 +662,10 @@ EXTERN long p_mouset; /* 'mousetime' */
EXTERN int p_more; /* 'more' */
#ifdef FEAT_MZSCHEME
EXTERN long p_mzq; /* 'mzquantum */
+# if defined(DYNAMIC_MZSCHEME)
+EXTERN char_u *p_mzschemedll; /* 'mzschemedll' */
+EXTERN char_u *p_mzschemegcdll; /* 'mzschemegcdll' */
+# endif
#endif
#if defined(MSWIN)
EXTERN int p_odev; /* 'opendevice' */
diff --git a/src/version.c b/src/version.c
index 0ca3f055a5..ce9fda8fcf 100644
--- a/src/version.c
+++ b/src/version.c
@@ -762,6 +762,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1182,
+/**/
1181,
/**/
1180,