To: vim_dev@googlegroups.com
Subject: Patch 7.3.815
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------

Patch 7.3.815
Problem:    Building with Cygwin and Ruby doesn't work.
Solution:   Copy some things from the MingW build file. (Ken Takata)
Files:	    src/Make_cyg.mak


*** ../vim-7.3.814/src/Make_cyg.mak	2013-01-23 13:55:16.000000000 +0100
--- src/Make_cyg.mak	2013-02-13 17:03:23.000000000 +0100
***************
*** 47,54 ****
  #               (i386)
  # USEDLL	no or yes: set to yes to use the Runtime library DLL (no)
  #		For USEDLL=yes the cygwin1.dll is required to run Vim.
! #		"no" does not work with latest version of Cygwin, use
! #		Make_ming.mak instead.  Or set CC to gcc-3 and add
  #		-L/lib/w32api to EXTRA_LIBS.
  # POSTSCRIPT	no or yes: set to yes for PostScript printing (no)
  # FEATURES	TINY, SMALL, NORMAL, BIG or HUGE (BIG)
--- 47,54 ----
  #               (i386)
  # USEDLL	no or yes: set to yes to use the Runtime library DLL (no)
  #		For USEDLL=yes the cygwin1.dll is required to run Vim.
! #		For "no" the mingw-gcc-g++ package or the mingw64-i686-gcc-g++
! #		package is required to complie Vim.  Or set CC to gcc-3 and add
  #		-L/lib/w32api to EXTRA_LIBS.
  # POSTSCRIPT	no or yes: set to yes for PostScript printing (no)
  # FEATURES	TINY, SMALL, NORMAL, BIG or HUGE (BIG)
***************
*** 114,122 ****
  INCLUDES = -march=$(ARCH) -Iproto
  
  #>>>>> name of the compiler and linker, name of lib directory
! CROSS_COMPILE =
  CC = gcc
  RC = windres
  
  ##############################
  # DYNAMIC_PERL=yes and no both work
--- 114,130 ----
  INCLUDES = -march=$(ARCH) -Iproto
  
  #>>>>> name of the compiler and linker, name of lib directory
! ifeq (yes, $(USEDLL))
! # CROSS_COMPILE is used for the gvimext DLL.
! CROSS_COMPILE = i686-pc-mingw32-
  CC = gcc
  RC = windres
+ else
+ # i686-pc-mingw32-gcc, i686-w64-mingw32-gcc or gcc-3 can be used.
+ CROSS_COMPILE = i686-pc-mingw32-
+ CC = $(CROSS_COMPILE)gcc
+ RC = $(CROSS_COMPILE)windres
+ endif
  
  ##############################
  # DYNAMIC_PERL=yes and no both work
***************
*** 193,223 ****
  ##############################
  ifdef RUBY
  
  ifndef RUBY_VER
! RUBY_VER=16
  endif
- 
  ifndef RUBY_VER_LONG
! RUBY_VER_LONG=1.6
  endif
! 
! ifndef DYNAMIC_RUBY
! DYNAMIC_RUBY = yes
  endif
  
- ifeq ($(RUBY_VER), 16)
  ifndef RUBY_PLATFORM
  RUBY_PLATFORM = i586-mswin32
- endif
- ifndef RUBY_INSTALL_NAME
- RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_VER)
- endif
  else
! ifndef RUBY_PLATFORM
  RUBY_PLATFORM = i386-mswin32
  endif
  ifndef RUBY_INSTALL_NAME
! RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_VER)
  endif
  endif
  
--- 201,237 ----
  ##############################
  ifdef RUBY
  
+ ifndef DYNAMIC_RUBY
+ DYNAMIC_RUBY=yes
+ endif
+ #  Set default value
  ifndef RUBY_VER
! RUBY_VER = 16
  endif
  ifndef RUBY_VER_LONG
! RUBY_VER_LONG = 1.6
  endif
! ifndef RUBY_API_VER
! RUBY_API_VER = $(subst .,,$(RUBY_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),)
! RUBY_PLATFORM = i386-mingw32
! else
  RUBY_PLATFORM = i386-mswin32
  endif
+ endif
+ endif
+ 
  ifndef RUBY_INSTALL_NAME
! ifeq ($(RUBY_VER), 16)
! RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
! else
! RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
  endif
  endif
  
***************
*** 226,231 ****
--- 240,249 ----
  endif
  
  DEFINES += -DFEAT_RUBY
+ ifneq ($(findstring w64-mingw32,$(CC)),)
+ # A workaround for mingw-w64
+ DEFINES += -DHAVE_STRUCT_TIMESPEC -DHAVE_STRUCT_TIMEZONE
+ endif
  INCLUDES += -I$(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
  ifdef RUBY_19_OR_LATER
  INCLUDES += -I$(RUBY)/include/ruby-$(RUBY_VER_LONG) -I$(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
*** ../vim-7.3.814/src/version.c	2013-02-13 16:49:54.000000000 +0100
--- src/version.c	2013-02-13 17:03:36.000000000 +0100
***************
*** 727,728 ****
--- 727,730 ----
  {   /* Add new patch number below this line */
+ /**/
+     815,
  /**/

-- 
ARTHUR: If you do not open these doors, we will take this castle by force ...
   [A bucket of slops land on ARTHUR.  He tries to retain his dignity.]
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
