]> granicus.if.org Git - vim/commitdiff
patch 7.4.772 v7.4.772
authorBram Moolenaar <Bram@vim.org>
Fri, 10 Jul 2015 14:12:48 +0000 (16:12 +0200)
committerBram Moolenaar <Bram@vim.org>
Fri, 10 Jul 2015 14:12:48 +0000 (16:12 +0200)
Problem:    Racket 6.2 is not supported on MS-Windows.
Solution:   Check for the "racket" subdirectory. (Weiyong Mao)

src/Make_mvc.mak
src/if_mzsch.c
src/version.c

index a6534c8bb9c14b974a84d8d2fbf048265f3870f4..722127deb6c04f40d2762511dd79214baa520e45 100644 (file)
@@ -797,7 +797,8 @@ MZSCHEME_VER = 205_000
 !endif
 CFLAGS = $(CFLAGS) -DFEAT_MZSCHEME -I $(MZSCHEME)\include
 !if EXIST("$(MZSCHEME)\collects\scheme\base.ss") \
-       || EXIST("$(MZSCHEME)\collects\scheme\base.rkt") 
+       || EXIST("$(MZSCHEME)\collects\scheme\base.rkt") \
+       || EXIST("$(MZSCHEME)\collects\racket\base.rkt")
 # for MzScheme >= 4 we need to include byte code for basic Scheme stuff
 MZSCHEME_EXTRA_DEP = mzscheme_base.c
 CFLAGS = $(CFLAGS) -DINCLUDE_MZSCHEME_BASE
@@ -1170,7 +1171,11 @@ $(OUTDIR)/if_mzsch.obj: $(OUTDIR) if_mzsch.c if_mzsch.h $(INCL) $(MZSCHEME_EXTRA
        $(CC) $(CFLAGS) if_mzsch.c \
                -DMZSCHEME_COLLECTS=\"$(MZSCHEME:\=\\)\\collects\"
 mzscheme_base.c:
+!IF "$(MZSCHEME_MAIN_LIB)" == "racket"
+       $(MZSCHEME)\raco ctool --c-mods mzscheme_base.c ++lib scheme/base
+!ELSE
        $(MZSCHEME)\mzc --c-mods mzscheme_base.c ++lib scheme/base
+!ENDIF
 
 $(OUTDIR)/if_python.obj: $(OUTDIR) if_python.c if_py_both.h $(INCL)
        $(CC) $(CFLAGS) $(PYTHON_INC) if_python.c
index 8dd2134313db175e03bb97ddac97bf394f572804..2135446edaffdb774c7213a2a36ddabbec527c36 100644 (file)
@@ -851,7 +851,13 @@ mzscheme_end(void)
 #endif
 }
 
-#if MZSCHEME_VERSION_MAJOR >= 500 && defined(WIN32) && defined(USE_THREAD_LOCAL)
+/*
+ * scheme_register_tls_space is only available on 32-bit Windows.
+ * See http://docs.racket-lang.org/inside/im_memoryalloc.html?q=scheme_register_tls_space
+ */
+#if MZSCHEME_VERSION_MAJOR >= 500 && defined(WIN32) \
+       && defined(USE_THREAD_LOCAL) && !defined(_WIN64)
+# define HAVE_TLS_SPACE 1
 static __declspec(thread) void *tls_space;
 #endif
 
@@ -870,7 +876,7 @@ static __declspec(thread) void *tls_space;
     int
 mzscheme_main(int argc, char** argv)
 {
-#if MZSCHEME_VERSION_MAJOR >= 500 && defined(WIN32) && defined(USE_THREAD_LOCAL)
+#ifdef HAVE_TLS_SPACE
     scheme_register_tls_space(&tls_space, 0);
 #endif
 #ifdef TRAMPOLINED_MZVIM_STARTUP
index 57740cf379b21c3a82d206fe6740aaa84cbb1588..a43046e9eaa89e4e7b16c0db18b1d3e772d8a65f 100644 (file)
@@ -741,6 +741,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    772,
 /**/
     771,
 /**/