]> granicus.if.org Git - vim/commitdiff
updated for version 7.3.848 v7.3.848
authorBram Moolenaar <Bram@vim.org>
Thu, 7 Mar 2013 14:16:21 +0000 (15:16 +0100)
committerBram Moolenaar <Bram@vim.org>
Thu, 7 Mar 2013 14:16:21 +0000 (15:16 +0100)
Problem:    Can't build with Ruby 2.0 when using MinGW x64 or MSVC10.
Solution:   Fix it. Also detect RUBY_PLATFORM and RUBY_INSTALL_NAME for x64.
            (Ken Takata)

src/Make_cyg.mak
src/Make_ming.mak
src/if_ruby.c
src/version.c

index 2b7fce9a4bf3c3f0e1278d3d26989d07ae4c02c1..e35e2e358efb45860f0bcfb4b08b89a0783c2d30 100644 (file)
@@ -229,18 +229,26 @@ else
 ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/i386-mingw32),)
 RUBY_PLATFORM = i386-mingw32
 else
+ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/x64-mingw32),)
+RUBY_PLATFORM = x64-mingw32
+else
 RUBY_PLATFORM = i386-mswin32
 endif
 endif
 endif
+endif
 
 ifndef RUBY_INSTALL_NAME
 ifeq ($(RUBY_VER), 16)
 RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
 else
+ifeq ($(ARCH),x86-64)
+RUBY_INSTALL_NAME = x64-msvcrt-ruby$(RUBY_API_VER)
+else
 RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
 endif
 endif
+endif
 
 ifeq (19, $(word 1,$(sort 19 $(RUBY_VER))))
 RUBY_19_OR_LATER = 1
index 695b7e7128daea8956a2ce5382b668f70e550992..b8d7b200e8fd000c6a55a22e3627560dc636d166 100644 (file)
@@ -288,18 +288,26 @@ else
 ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/i386-mingw32),)
 RUBY_PLATFORM = i386-mingw32
 else
+ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/x64-mingw32),)
+RUBY_PLATFORM = x64-mingw32
+else
 RUBY_PLATFORM = i386-mswin32
 endif
 endif
 endif
+endif
 
 ifndef RUBY_INSTALL_NAME
 ifeq ($(RUBY_VER), 16)
 RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
 else
+ifeq ($(ARCH),x86-64)
+RUBY_INSTALL_NAME = x64-msvcrt-ruby$(RUBY_API_VER)
+else
 RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
 endif
 endif
+endif
 
 ifeq (19, $(word 1,$(sort 19 $(RUBY_VER))))
 RUBY_19_OR_LATER = 1
index 818aacbfc773845f2f925cea6c56a05962c2536b..d810d3770bb211d32f36dff0be48691f99d8596b 100644 (file)
@@ -39,6 +39,9 @@
  */
 # define rb_cFalseClass                (*dll_rb_cFalseClass)
 # define rb_cFixnum            (*dll_rb_cFixnum)
+# if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20
+#  define rb_cFloat            (*dll_rb_cFloat)
+# endif
 # define rb_cNilClass          (*dll_rb_cNilClass)
 # define rb_cSymbol            (*dll_rb_cSymbol)
 # define rb_cTrueClass         (*dll_rb_cTrueClass)
@@ -249,6 +252,9 @@ static void ruby_vim_init(void);
 static VALUE (*dll_rb_assoc_new) (VALUE, VALUE);
 VALUE *dll_rb_cFalseClass;
 VALUE *dll_rb_cFixnum;
+#if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20
+VALUE *dll_rb_cFloat;
+#endif
 VALUE *dll_rb_cNilClass;
 static VALUE *dll_rb_cObject;
 VALUE *dll_rb_cSymbol;
@@ -352,7 +358,7 @@ rb_float_new_in_heap(double d)
 {
     return dll_rb_float_new(d);
 }
-unsigned long rb_num2ulong(VALUE x)
+VALUE rb_num2ulong(VALUE x)
 {
     return (long)RSHIFT((SIGNED_VALUE)(x),1);
 }
@@ -373,6 +379,9 @@ static struct
     {"rb_assoc_new", (RUBY_PROC*)&dll_rb_assoc_new},
     {"rb_cFalseClass", (RUBY_PROC*)&dll_rb_cFalseClass},
     {"rb_cFixnum", (RUBY_PROC*)&dll_rb_cFixnum},
+#if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20
+    {"rb_cFloat", (RUBY_PROC*)&dll_rb_cFloat},
+#endif
     {"rb_cNilClass", (RUBY_PROC*)&dll_rb_cNilClass},
     {"rb_cObject", (RUBY_PROC*)&dll_rb_cObject},
     {"rb_cSymbol", (RUBY_PROC*)&dll_rb_cSymbol},
index 309f656c6b73083ed9f011c3064a2f27d0d92afa..c6ce9c2a98c561a81cd6b4d4a7a3daf65ea7e61e 100644 (file)
@@ -728,6 +728,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    848,
 /**/
     847,
 /**/