changeset 10138:8bfcb960e6bd v7.4.2340

commit https://github.com/vim/vim/commit/6384c5db8dda70076c878d393ba19a1510695228 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Sep 6 22:06:35 2016 +0200 patch 7.4.2340 Problem: MS-Windows: Building with Ruby uses old version. Solution: Update to 2.2.X. Use clearer name for the API version. (Ken Takata)
author Christian Brabandt <cb@256bit.org>
date Tue, 06 Sep 2016 22:15:07 +0200
parents 8e6070686e81
children e9dbe4cc7bc0
files Makefile src/INSTALLpc.txt src/Make_cyg_ming.mak src/Make_mvc.mak src/bigvim.bat src/version.c
diffstat 6 files changed, 39 insertions(+), 31 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile
+++ b/Makefile
@@ -158,7 +158,7 @@ MINOR = 4
 # - Move gvim.pdb to here.
 # - Copy "GvimExt/gvimext.dll" to here.
 # - Delete vimrun.exe, install.exe and uninstal.exe.
-# Win32 GUI version with OLE, PERL, TCL, PYTHON and dynamic IME:
+# Win32 GUI version with OLE, PERL, Ruby, TCL, PYTHON and dynamic IME:
 # - Install the interfaces you want, see src/INSTALLpc.txt
 # - Build:
 #   > cd src
--- a/src/INSTALLpc.txt
+++ b/src/INSTALLpc.txt
@@ -598,11 +598,11 @@ you need some tricks described below.
 
 When building, you need to set the following variables at least:
 
-    RUBY:          Where ruby is installed. E.g. C:\Ruby22
-    DYNAMIC_RUBY:  Whether dynamic linking is used. Usually, set to yes.
-    RUBY_VER:      Ruby version. E.g. 22 for Ruby 2.2.X.
-    RUBY_VER_LONG: Ruby API version in a long format.
-                   E.g. 2.2.0 for Ruby 2.2.X.
+    RUBY:              Where ruby is installed. E.g. C:\Ruby22
+    DYNAMIC_RUBY:      Whether dynamic linking is used. Usually, set to yes.
+    RUBY_VER:          Ruby version. E.g. 22 for Ruby 2.2.X.
+    RUBY_API_VER_LONG: Ruby API version in a long format.
+                       E.g. 2.2.0 for Ruby 2.2.X.
 
 Ruby version vs. Ruby API version:
 
@@ -653,7 +653,7 @@ config.h and Ruby's DLL name. Here are t
   4) Build Vim. Note that you need to adjust some variables (as one line):
 
       nmake -f Make_mvc.mak
-          RUBY=C:\Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_VER_LONG=2.2.0
+          RUBY=C:\Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_API_VER_LONG=2.2.0
           RUBY_MSVCRT_NAME=msvcrt
           WINVER=0x501
 
@@ -668,7 +668,7 @@ Using MinGW is easier than using MSVC wh
 After you install RubyInstaller, just type this (as one line):
 
     mingw32-make -f Make_ming.mak
-        RUBY=C:/Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_VER_LONG=2.2.0
+        RUBY=C:/Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_API_VER_LONG=2.2.0
         WINVER=0x501
 
 If you set WINVER explicitly, it must be set to >=0x500, when building with
--- a/src/Make_cyg_ming.mak
+++ b/src/Make_cyg_ming.mak
@@ -348,36 +348,39 @@ endif
 #	Ruby interface:
 #	  RUBY=[Path to Ruby directory] (Set inside Make_cyg.mak or Make_ming.mak)
 #	  DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically)
-#	  RUBY_VER=[Ruby version, eg 18, 19, 20] (default is 18)
-#	  RUBY_VER_LONG=[Ruby version, eg 1.8, 1.9.1, 2.0.0] (default is 1.8)
-#	    You must set RUBY_VER_LONG when changing RUBY_VER.
-#	    RUBY_API_VER is derived from RUBY_VER_LONG.
+#	  RUBY_VER=[Ruby version, eg 19, 22] (default is 22)
+#	  RUBY_API_VER_LONG=[Ruby API version, eg 1.8, 1.9.1, 2.2.0]
+#			    (default is 2.2.0)
+#	    You must set RUBY_API_VER_LONG when changing RUBY_VER.
 #	    Note: If you use Ruby 1.9.3, set as follows:
 #	      RUBY_VER=19
-#	      RUBY_VER_LONG=1.9.1 (not 1.9.3, because the API version is 1.9.1.)
+#	      RUBY_API_VER_LONG=1.9.1 (not 1.9.3, because the API version is 1.9.1.)
 ifdef RUBY
 ifndef DYNAMIC_RUBY
 DYNAMIC_RUBY=yes
 endif
 #  Set default value
 ifndef RUBY_VER
-RUBY_VER = 18
+RUBY_VER = 22
 endif
 ifndef RUBY_VER_LONG
-RUBY_VER_LONG = 1.8
+RUBY_VER_LONG = 2.2.0
+endif
+ifndef RUBY_API_VER_LONG
+RUBY_API_VER_LONG = $(RUBY_API_VER_LONG)
 endif
 ifndef RUBY_API_VER
-RUBY_API_VER = $(subst .,,$(RUBY_VER_LONG))
+RUBY_API_VER = $(subst .,,$(RUBY_API_VER_LONG))
 endif
 
 ifndef RUBY_PLATFORM
 ifeq ($(RUBY_VER), 16)
 RUBY_PLATFORM = i586-mswin32
 else
-ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/i386-mingw32),)
+ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/i386-mingw32),)
 RUBY_PLATFORM = i386-mingw32
 else
-ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/x64-mingw32),)
+ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/x64-mingw32),)
 RUBY_PLATFORM = x64-mingw32
 else
 RUBY_PLATFORM = i386-mswin32
@@ -406,9 +409,9 @@ ifeq (19, $(word 1,$(sort 19 $(RUBY_VER)
 RUBY_19_OR_LATER = 1
 endif
 
-RUBYINC = -I $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
+RUBYINC = -I $(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/$(RUBY_PLATFORM)
 ifdef RUBY_19_OR_LATER
-RUBYINC += -I $(RUBY)/include/ruby-$(RUBY_VER_LONG) -I $(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
+RUBYINC += -I $(RUBY)/include/ruby-$(RUBY_API_VER_LONG) -I $(RUBY)/include/ruby-$(RUBY_API_VER_LONG)/$(RUBY_PLATFORM)
 endif
 ifeq (no, $(DYNAMIC_RUBY))
 RUBYLIB = -L$(RUBY)/lib -l$(RUBY_INSTALL_NAME)
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -67,13 +67,13 @@
 #	Ruby interface:
 #	  RUBY=[Path to Ruby directory]
 #	  DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically)
-#	  RUBY_VER=[Ruby version, eg 18, 19, 20] (default is 18)
-#	  RUBY_VER_LONG=[Ruby version, eg 1.8, 1.9.1, 2.0.0] (default is 1.8)
-#	    You must set RUBY_VER_LONG when change RUBY_VER.
-#	    RUBY_API_VER is derived from RUBY_VER_LONG.
+#	  RUBY_VER=[Ruby version, eg 19, 22] (default is 22)
+#	  RUBY_API_VER_LONG=[Ruby API version, eg 1.8, 1.9.1, 2.2.0]
+#	  		    (default is 2.2.0)
+#	    You must set RUBY_API_VER_LONG when change RUBY_VER.
 #	    Note: If you use Ruby 1.9.3, set as follows:
 #	      RUBY_VER=19
-#	      RUBY_VER_LONG=1.9.1 (not 1.9.3, because the API version is 1.9.1.)
+#	      RUBY_API_VER_LONG=1.9.1 (not 1.9.3, because the API version is 1.9.1.)
 #
 #	Tcl interface:
 #	  TCL=[Path to Tcl directory]
@@ -917,13 +917,16 @@ XSUBPP_TYPEMAP = $(PERL)\lib\ExtUtils\ty
 !ifdef RUBY
 #  Set default value
 !ifndef RUBY_VER
-RUBY_VER = 18
+RUBY_VER = 22
 !endif
 !ifndef RUBY_VER_LONG
-RUBY_VER_LONG = 1.8
+RUBY_VER_LONG = 2.2.0
+!endif
+!ifndef RUBY_API_VER_LONG
+RUBY_API_VER_LONG = $(RUBY_VER_LONG)
 !endif
 !ifndef RUBY_API_VER
-RUBY_API_VER = $(RUBY_VER_LONG:.=)
+RUBY_API_VER = $(RUBY_API_VER_LONG:.=)
 !endif
 
 !if $(RUBY_VER) >= 18
@@ -966,9 +969,9 @@ RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_A
 CFLAGS = $(CFLAGS) -DFEAT_RUBY
 RUBY_OBJ = $(OUTDIR)\if_ruby.obj
 !if $(RUBY_VER) >= 19
-RUBY_INC = /I "$(RUBY)\lib\ruby\$(RUBY_VER_LONG)\$(RUBY_PLATFORM)" /I "$(RUBY)\include\ruby-$(RUBY_VER_LONG)" /I "$(RUBY)\include\ruby-$(RUBY_VER_LONG)\$(RUBY_PLATFORM)"
+RUBY_INC = /I "$(RUBY)\lib\ruby\$(RUBY_API_VER_LONG)\$(RUBY_PLATFORM)" /I "$(RUBY)\include\ruby-$(RUBY_API_VER_LONG)" /I "$(RUBY)\include\ruby-$(RUBY_API_VER_LONG)\$(RUBY_PLATFORM)"
 !else
-RUBY_INC = /I "$(RUBY)\lib\ruby\$(RUBY_VER_LONG)\$(RUBY_PLATFORM)"
+RUBY_INC = /I "$(RUBY)\lib\ruby\$(RUBY_API_VER_LONG)\$(RUBY_PLATFORM)"
 !endif
 RUBY_LIB = $(RUBY)\lib\$(RUBY_INSTALL_NAME).lib
 # Do we want to load Ruby dynamically?
--- a/src/bigvim.bat
+++ b/src/bigvim.bat
@@ -1,5 +1,5 @@
 :: command to build big Vim with OLE, Perl, Python, Ruby and Tcl
 SET VCDIR="C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\"
 SET TOOLDIR=E:\
-%VCDIR%nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=%TOOLDIR%perl524 DYNAMIC_PERL=yes PERL_VER=524 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python35 DYNAMIC_PYTHON3=yes PYTHON3_VER=35 RUBY=%TOOLDIR%ruby192 DYNAMIC_RUBY=yes RUBY_VER=19 RUBY_VER_LONG=1.9.2 RUBY_MSVCRT_NAME=msvcrt TCL=%TOOLDIR%tcl TCL_VER=86 TCL_VER_LONG=8.6 DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
+%VCDIR%nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=%TOOLDIR%perl524 DYNAMIC_PERL=yes PERL_VER=524 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python35 DYNAMIC_PYTHON3=yes PYTHON3_VER=35 RUBY=%TOOLDIR%rubyw2 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_API_VER_LONG=2.2.0 RUBY_MSVCRT_NAME=msvcrt TCL=%TOOLDIR%tcl TCL_VER=86 TCL_VER_LONG=8.6 DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
 
--- a/src/version.c
+++ b/src/version.c
@@ -764,6 +764,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2340,
+/**/
     2339,
 /**/
     2338,