summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.1306
diff options
context:
space:
mode:
authorSam Bingner <sam@bingner.com>2019-06-05 22:02:50 -1000
committerSam Bingner <sam@bingner.com>2019-06-05 22:02:50 -1000
commita255618e22152ca2e5fd361a3d0762e9db20dd80 (patch)
tree5c98f76c0de0785b8d5b58ac622da34f0d024a8f /data/vim/patches/8.1.1306
parent1b1fa61507a809a66f053a8523f883b2b6a2f487 (diff)
Update vim to 8.1.1471
Diffstat (limited to 'data/vim/patches/8.1.1306')
-rw-r--r--data/vim/patches/8.1.13062891
1 files changed, 2891 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.1306 b/data/vim/patches/8.1.1306
new file mode 100644
index 000000000..60f52f630
--- /dev/null
+++ b/data/vim/patches/8.1.1306
@@ -0,0 +1,2891 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 8.1.1306
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 8.1.1306
+Problem: Borland support is outdated and doesn't work.
+Solution: Remove Borland support, there are other (free) compilers
+ available. (Thomas Dziedzic, Ken Takata, closes #4364)
+Files: .gitignore, .hgignore, Filelist, runtime/doc/debug.txt,
+ runtime/doc/develop.txt, runtime/doc/usr_90.txt,
+ src/GvimExt/Make_bc5.mak, src/GvimExt/gvimext.cpp,
+ src/GvimExt/gvimext.rc, src/INSTALLpc.txt, src/Make_bc5.mak,
+ src/dosinst.c, src/dosinst.h, src/evalfunc.c, src/ex_cmds.c,
+ src/ex_getln.c, src/gui_w32.c, src/if_ole.cpp, src/if_py_both.h,
+ src/main.c, src/mark.c, src/message.c, src/misc1.c, src/misc2.c,
+ src/normal.c, src/option.c, src/os_mswin.c, src/os_w32exe.c,
+ src/os_win32.c, src/os_win32.h, src/proto.h, src/screen.c,
+ src/spell.c, src/spellfile.c, src/syntax.c, src/userfunc.c,
+ src/vim.h, src/vim.rc, src/vimrun.c, src/xxd/Make_bc5.mak,
+ src/xxd/xxd.c
+
+
+*** ../vim-8.1.1305/.gitignore 2019-05-07 21:48:15.625291418 +0200
+--- .gitignore 2019-05-09 15:08:50.086239830 +0200
+***************
+*** 43,56 ****
+ runtime/doc/uganda.nsis.txt
+ nsis/icons/*
+
+- # Borland C++
+- bcc.cfg
+- *.ilc
+- *.ild
+- *.ilf
+- *.ils
+- *.tds
+-
+ # NetBeans
+ nbproject/*
+
+--- 43,48 ----
+*** ../vim-8.1.1305/.hgignore 2019-05-07 21:48:15.625291418 +0200
+--- .hgignore 2019-05-09 15:08:50.086239830 +0200
+***************
+*** 45,58 ****
+ runtime/doc/uganda.nsis.txt
+ nsis/icons/*
+
+- # Borland C++
+- bcc.cfg
+- *.ilc
+- *.ild
+- *.ilf
+- *.ils
+- *.tds
+-
+ # NetBeans
+ nbproject/*
+
+--- 45,50 ----
+*** ../vim-8.1.1305/Filelist 2019-05-07 22:25:23.486167275 +0200
+--- Filelist 2019-05-09 15:08:50.086239830 +0200
+***************
+*** 421,427 ****
+ src/GvimExt/uninst.bat \
+ README_srcdos.txt \
+ src/INSTALLpc.txt \
+- src/Make_bc5.mak \
+ src/Make_cyg.mak \
+ src/Make_cyg_ming.mak \
+ src/Make_ming.mak \
+--- 421,426 ----
+***************
+*** 474,480 ****
+ src/xpm_w32.c \
+ src/xpm_w32.h \
+ src/tee/Make_mvc.mak \
+- src/xxd/Make_bc5.mak \
+ src/xxd/Make_ming.mak \
+ src/xxd/Make_mvc.mak \
+ nsis/gvim.nsi \
+--- 473,478 ----
+*** ../vim-8.1.1305/runtime/doc/debug.txt 2019-05-07 22:25:23.486167275 +0200
+--- runtime/doc/debug.txt 2019-05-09 15:08:50.086239830 +0200
+***************
+*** 80,88 ****
+
+ If you have Visual Studio, use that instead of the VC Toolkit and WinDbg.
+
+! For other compilers, you should always use the corresponding debugger: TD for
+! a Vim executable compiled with the Borland compiler; gdb (see above
+! |debug-gcc|) for the Cygwin and MinGW compilers.
+
+
+ *debug-vs2005*
+--- 80,87 ----
+
+ If you have Visual Studio, use that instead of the VC Toolkit and WinDbg.
+
+! For other compilers, you should always use the corresponding debugger: gdb
+! (see above |debug-gcc|) for the Cygwin and MinGW compilers.
+
+
+ *debug-vs2005*
+*** ../vim-8.1.1305/runtime/doc/develop.txt 2019-05-05 18:11:46.308590707 +0200
+--- runtime/doc/develop.txt 2019-05-09 15:08:50.086239830 +0200
+***************
+*** 278,284 ****
+ index shadows global declaration
+ time shadows global declaration
+ new C++ reserved keyword
+- try Borland C++ doesn't like it to be used as a variable.
+
+ clear Mac curses.h
+ echo Mac curses.h
+--- 278,283 ----
+*** ../vim-8.1.1305/runtime/doc/usr_90.txt 2019-05-05 18:11:46.328590595 +0200
+--- runtime/doc/usr_90.txt 2019-05-09 15:08:50.086239830 +0200
+***************
+*** 281,289 ****
+ In case you are not satisfied with the features included in the supplied
+ binaries, you could try compiling Vim yourself. Get the source archive from
+ the same location as where the binaries are. You need a compiler for which a
+! makefile exists. Microsoft Visual C works, but is expensive. The Free
+! Borland command-line compiler 5.5 can be used, as well as the free MingW and
+! Cygwin compilers. Check the file src/INSTALLpc.txt for hints.
+
+ ==============================================================================
+ *90.3* Upgrading
+--- 281,288 ----
+ In case you are not satisfied with the features included in the supplied
+ binaries, you could try compiling Vim yourself. Get the source archive from
+ the same location as where the binaries are. You need a compiler for which a
+! makefile exists. Microsoft Visual C works, but is expensive. The free MinGW
+! and Cygwin compilers can be used. Check the file src/INSTALLpc.txt for hints.
+
+ ==============================================================================
+ *90.3* Upgrading
+*** ../vim-8.1.1305/src/GvimExt/Make_bc5.mak 2010-05-15 13:04:10.000000000 +0200
+--- src/GvimExt/Make_bc5.mak 1970-01-01 01:00:00.000000000 +0100
+***************
+*** 1,43 ****
+- ### USEDLL no for statically linked version of run-time, yes for DLL runtime
+- ### BOR path to root of Borland C install (c:\bc5)
+-
+- ### (requires cc3250.dll be available in %PATH%)
+- !if ("$(USEDLL)"=="")
+- USEDLL = no
+- !endif
+-
+- ### BOR: root of the BC installation
+- !if ("$(BOR)"=="")
+- BOR = c:\bc5
+- !endif
+-
+- CC = $(BOR)\bin\Bcc32
+- BRC = $(BOR)\bin\brc32
+- LINK = $(BOR)\BIN\ILink32
+- INCLUDE = $(BOR)\include;.
+- LIB = $(BOR)\lib
+-
+- !if ("$(USEDLL)"=="yes")
+- RT_DEF = -D_RTLDLL
+- RT_LIB = cw32i.lib
+- !else
+- RT_DEF =
+- RT_LIB = cw32.lib
+- !endif
+-
+-
+- all : gvimext.dll
+-
+- gvimext.obj : gvimext.cpp gvimext.h
+- $(CC) -tWD -I$(INCLUDE) -c -DFEAT_GETTEXT $(RT_DEF) -w- gvimext.cpp
+-
+- gvimext.res : gvimext.rc
+- $(BRC) -r gvimext.rc
+-
+- gvimext.dll : gvimext.obj gvimext.res
+- $(LINK) -L$(LIB) -aa gvimext.obj, gvimext.dll, , c0d32.obj $(RT_LIB) import32.lib, gvimext.def, gvimext.res
+-
+- clean :
+- -@del gvimext.obj
+- -@del gvimext.res
+- -@del gvimext.dll
+--- 0 ----
+*** ../vim-8.1.1305/src/GvimExt/gvimext.cpp 2018-12-16 14:37:35.845271247 +0100
+--- src/GvimExt/gvimext.cpp 2019-05-09 15:08:50.090239809 +0200
+***************
+*** 16,29 ****
+
+ #include "gvimext.h"
+
+- #ifdef __BORLANDC__
+- # include <dir.h>
+- # ifndef _strnicmp
+- # define _strnicmp(a, b, c) strnicmp((a), (b), (c))
+- # endif
+- #else
+ static char *searchpath(char *name);
+- #endif
+
+ // Always get an error while putting the following stuff to the
+ // gvimext.h file as class protected variables, give up and
+--- 16,22 ----
+***************
+*** 917,923 ****
+ return TRUE;
+ }
+
+- #ifndef __BORLANDC__
+ static char *
+ searchpath(char *name)
+ {
+--- 910,915 ----
+***************
+*** 937,943 ****
+ }
+ return (char *)"";
+ }
+- #endif
+
+ STDMETHODIMP CShellExt::InvokeGvim(HWND hParent,
+ LPCSTR /* pszWorkingDir */,
+--- 929,934 ----
+*** ../vim-8.1.1305/src/GvimExt/gvimext.rc 2010-05-15 13:04:10.000000000 +0200
+--- src/GvimExt/gvimext.rc 2019-05-09 15:08:50.090239809 +0200
+***************
+*** 7,15 ****
+ //
+ // Generated from the TEXTINCLUDE 2 resource.
+ //
+! #ifndef __BORLANDC__
+! # include "winresrc.h"
+! #endif
+
+ /////////////////////////////////////////////////////////////////////////////
+ #undef APSTUDIO_READONLY_SYMBOLS
+--- 7,13 ----
+ //
+ // Generated from the TEXTINCLUDE 2 resource.
+ //
+! #include "winresrc.h"
+
+ /////////////////////////////////////////////////////////////////////////////
+ #undef APSTUDIO_READONLY_SYMBOLS
+*** ../vim-8.1.1305/src/INSTALLpc.txt 2019-05-07 22:25:23.486167275 +0200
+--- src/INSTALLpc.txt 2019-05-09 15:08:50.090239809 +0200
+***************
+*** 25,45 ****
+ 2. Using MSYS2 with MinGW
+ 3. Using MinGW
+ 4. Cygwin
+! 5. Borland
+! 6. Cross compiling for Win32 from a Linux machine
+! 7. Building with Python support
+! 8. Building with Python3 support
+! 9. Building with Racket or MzScheme support
+! 10. Building with Lua support
+! 11. Building with Perl support
+! 12. Building with Ruby support
+! 13. Building with Tcl support
+! 14. Building with Terminal support
+! 15. Building with DirectX (DirectWrite) support
+! 16. Windows 3.1
+! 17. MS-DOS
+
+! 18. Installing after building from sources
+
+
+ The currently recommended way (that means it has been verified to work) is
+--- 25,44 ----
+ 2. Using MSYS2 with MinGW
+ 3. Using MinGW
+ 4. Cygwin
+! 5. Cross compiling for Win32 from a Linux machine
+! 6. Building with Python support
+! 7. Building with Python3 support
+! 8. Building with Racket or MzScheme support
+! 9. Building with Lua support
+! 10. Building with Perl support
+! 11. Building with Ruby support
+! 12. Building with Tcl support
+! 13. Building with Terminal support
+! 14. Building with DirectX (DirectWrite) support
+! 15. Windows 3.1
+! 16. MS-DOS
+
+! 17. Installing after building from sources
+
+
+ The currently recommended way (that means it has been verified to work) is
+***************
+*** 451,464 ****
+ with the other makefiles).
+
+
+! 5. Borland
+! ===========
+!
+! Use Make_bc5.mak with Borland C++ 5.x. See
+! http://users.skynet.be/antoine.mechelynck/vim/compile.htm
+!
+!
+! 6. Cross compiling for Win32 from a Linux machine
+ =================================================
+
+ [Update of 1) needs to be verified]
+--- 450,456 ----
+ with the other makefiles).
+
+
+! 5. Cross compiling for Win32 from a Linux machine
+ =================================================
+
+ [Update of 1) needs to be verified]
+***************
+*** 478,484 ****
+ Now you have created the Windows binary from your Linux box! Have fun...
+
+
+! 7. Building with Python support
+ ===============================
+
+ For building with MSVC 2008 the "Windows Installer" from www.python.org
+--- 470,476 ----
+ Now you have created the Windows binary from your Linux box! Have fun...
+
+
+! 6. Building with Python support
+ ===============================
+
+ For building with MSVC 2008 the "Windows Installer" from www.python.org
+***************
+*** 539,545 ****
+ You will end up with a Python-enabled, Win32 version. Enjoy!
+
+
+! 8. Building with Python3 support
+ ================================
+
+ For building with MSVC 2008 the "Windows Installer" from www.python.org
+--- 531,537 ----
+ You will end up with a Python-enabled, Win32 version. Enjoy!
+
+
+! 7. Building with Python3 support
+ ================================
+
+ For building with MSVC 2008 the "Windows Installer" from www.python.org
+***************
+*** 576,582 ****
+ libstdc++-6.dll.)
+
+
+! 9. Building with Racket or MzScheme support
+ ========================================
+
+ 1) Building with Racket support (newest)
+--- 568,574 ----
+ libstdc++-6.dll.)
+
+
+! 8. Building with Racket or MzScheme support
+ ========================================
+
+ 1) Building with Racket support (newest)
+***************
+*** 666,672 ****
+
+
+
+! 10. Building with Lua support
+ ============================
+
+ Vim with Lua support can be built with either MSVC or MinGW (or maybe Cygwin).
+--- 658,664 ----
+
+
+
+! 9. Building with Lua support
+ ============================
+
+ Vim with Lua support can be built with either MSVC or MinGW (or maybe Cygwin).
+***************
+*** 721,727 ****
+ LUA=/cygdrive/c/projects/lua53 DYNAMIC_LUA=yes LUA_VER=53
+
+
+! 11. Building with Perl support
+ ==============================
+
+ Vim with Perl support can be built with either MSVC or MinGW (or Cygwin).
+--- 713,719 ----
+ LUA=/cygdrive/c/projects/lua53 DYNAMIC_LUA=yes LUA_VER=53
+
+
+! 10. Building with Perl support
+ ==============================
+
+ Vim with Perl support can be built with either MSVC or MinGW (or Cygwin).
+***************
+*** 747,753 ****
+ PERL=C:/Perl DYNAMIC_PERL=yes PERL_VER=522
+
+
+! 12. Building with Ruby support
+ ==============================
+
+ Vim with Ruby support can be built with either MSVC or MinGW (or Cygwin).
+--- 739,745 ----
+ PERL=C:/Perl DYNAMIC_PERL=yes PERL_VER=522
+
+
+! 11. Building with Ruby support
+ ==============================
+
+ Vim with Ruby support can be built with either MSVC or MinGW (or Cygwin).
+***************
+*** 855,861 ****
+
+
+
+! 13. Building with Tcl support
+ =============================
+
+ Vim with Tcl support can be built with either MSVC or MinGW (or Cygwin).
+--- 847,853 ----
+
+
+
+! 12. Building with Tcl support
+ =============================
+
+ Vim with Tcl support can be built with either MSVC or MinGW (or Cygwin).
+***************
+*** 894,900 ****
+ TCL=C:/Tcl86 DYNAMIC_TCL=yes TCL_VER=86 TCL_VER_LONG=8.6
+
+
+! 14. Building with Terminal support
+ ==================================
+
+ Vim with Terminal support can be built with either MSVC, MinGW or Cygwin.
+--- 886,892 ----
+ TCL=C:/Tcl86 DYNAMIC_TCL=yes TCL_VER=86 TCL_VER_LONG=8.6
+
+
+! 13. Building with Terminal support
+ ==================================
+
+ Vim with Terminal support can be built with either MSVC, MinGW or Cygwin.
+***************
+*** 910,916 ****
+ mingw32-make -f Make_ming.mak TERMINAL=yes
+
+
+! 15. Building with DirectX (DirectWrite) support
+ ===============================================
+
+ Vim with DirectX (DirectWrite) support can be built with either MSVC or MinGW.
+--- 902,908 ----
+ mingw32-make -f Make_ming.mak TERMINAL=yes
+
+
+! 14. Building with DirectX (DirectWrite) support
+ ===============================================
+
+ Vim with DirectX (DirectWrite) support can be built with either MSVC or MinGW.
+***************
+*** 944,963 ****
+ mingw32-make -f Make_ming.mak DIRECTX=yes
+
+
+! 16. Windows 3.1x
+ ================
+
+ The Windows 3.1x support was removed in patch 7.4.1364.
+
+
+! 17. MS-DOS
+ ==========
+
+ The MS-DOS support was removed in patch 7.4.1399. Only very old Vim versions
+ work on MS-DOS because of the limited amount of memory available.
+
+
+! 18. Installing after building from sources
+ ==========================================
+
+ [provided by Michael Soyka, updated by Ken Takata]
+--- 936,955 ----
+ mingw32-make -f Make_ming.mak DIRECTX=yes
+
+
+! 15. Windows 3.1x
+ ================
+
+ The Windows 3.1x support was removed in patch 7.4.1364.
+
+
+! 16. MS-DOS
+ ==========
+
+ The MS-DOS support was removed in patch 7.4.1399. Only very old Vim versions
+ work on MS-DOS because of the limited amount of memory available.
+
+
+! 17. Installing after building from sources
+ ==========================================
+
+ [provided by Michael Soyka, updated by Ken Takata]
+*** ../vim-8.1.1305/src/Make_bc5.mak 2019-04-27 13:03:20.000715982 +0200
+--- src/Make_bc5.mak 1970-01-01 01:00:00.000000000 +0100
+***************
+*** 1,983 ****
+- #
+- # Makefile for Vim.
+- # Compiler: Borland C++ 5.0 and later 32-bit compiler
+- # Targets: Win32 (Windows NT and Windows 95) (with/without GUI)
+- #
+- # NOTE: THIS IS OLD AND PROBABLY NO LONGER WORKS.
+- #
+- # Contributed by Ben Singer.
+- # Updated 4/1997 by Ron Aaron
+- # 2016: removed support for 16 bit DOS
+- # 6/1997 - added support for 16 bit DOS
+- # Note: this has been tested, and works, for BC5. Your mileage may vary.
+- # Has been reported NOT to work with BC 4.52. Maybe it can be fixed?
+- # 10/1997 - ron - fixed bugs w/ BC 5.02
+- # 8/1998 - ron - updated with new targets, fixed some stuff
+- # 3/2000 - Bram: Made it work with BC 5.5 free command line compiler,
+- # cleaned up variables.
+- # 6/2001 - Dan - Added support for compiling Python and TCL
+- # 7/2001 - Dan - Added support for compiling Ruby
+- #
+- # It builds on Windows 95 and NT-Intel, producing the same binary in either
+- # case. To build using Microsoft Visual C++, use Make_mvc.mak.
+- #
+- # This should work with the free Borland command line compiler, version 5.5.
+- # You need at least sp1 (service pack 1). With sp2 it compiles faster.
+- # Use a command like this:
+- # <path>\bin\make /f Make_bc5.mak BOR=<path>
+- #
+-
+- # let the make utility do the hard work:
+- .AUTODEPEND
+- .CACHEAUTODEPEND
+-
+- # VARIABLES:
+- # name value (default)
+- #
+- # BOR path to root of Borland C install (c:\bc5)
+- # LINK name of the linker ($(BOR)\bin\ilink32)
+- # GUI no or yes: set to yes if you want the GUI version (yes)
+- # LUA define to path to Lua dir to get Lua support (not defined)
+- # LUA_VER define to version of Lua being used (51)
+- # DYNAMIC_LUA no or yes: set to yes to load the Lua DLL dynamically (no)
+- # PERL define to path to Perl dir to get Perl support (not defined)
+- # PERL_VER define to version of Perl being used (56)
+- # DYNAMIC_PERL no or yes: set to yes to load the Perl DLL dynamically (no)
+- # PYTHON define to path to Python dir to get PYTHON support (not defined)
+- # PYTHON_VER define to version of Python being used (22)
+- # DYNAMIC_PYTHON no or yes: use yes to load the Python DLL dynamically (no)
+- # PYTHON3 define to path to Python3 dir to get PYTHON3 support (not defined)
+- # PYTHON3_VER define to version of Python3 being used (31)
+- # DYNAMIC_PYTHON3 no or yes: use yes to load the Python3 DLL dynamically (no)
+- # TCL define to path to TCL dir to get TCL support (not defined)
+- # TCL_VER define to version of TCL being used (83)
+- # DYNAMIC_TCL no or yes: use yes to load the TCL DLL dynamically (no)
+- # RUBY define to path to Ruby dir to get Ruby support (not defined)
+- # NOTE: You may have to remove the defines for uid_t and gid_t
+- # from the Ruby config.h header file.
+- # RUBY_VER define to version of Ruby being used (16)
+- # NOTE: compilation on WinNT/2K/XP requires
+- # at least version 1.6.5 of Ruby. Earlier versions
+- # of Ruby will cause a compile error on these systems.
+- # RUBY_VER_LONG same, but in format with dot. (1.6)
+- # DYNAMIC_RUBY no or yes: use yes to load the Ruby DLL dynamically (no)
+- # IME no or yes: set to yes for multi-byte IME support (yes)
+- # DYNAMIC_IME no or yes: set to yes to load imm32.dll dynamically (yes)
+- # GETTEXT no or yes: set to yes for multi-language support (yes)
+- # ICONV no or yes: set to yes for dynamic iconv support (yes)
+- # OLE no or yes: set to yes to make OLE gvim (no)
+- # DEBUG no or yes: set to yes if you wish a DEBUGging build (no)
+- # CODEGUARD no or yes: set to yes if you want to use CODEGUARD (no)
+- # CPUNR 1 through 6: select -CPU argument to compile with (3)
+- # 3 for 386, 4 for 486, 5 for pentium, 6 for pentium pro.
+- # USEDLL no or yes: set to yes to use the Runtime library DLL (no)
+- # For USEDLL=yes the cc3250.dll is required to run Vim.
+- # ALIGN 1, 2 or 4: Alignment to use (4 for Win32)
+- # FASTCALL no or yes: set to yes to use register-based function protocol (yes)
+- # OPTIMIZE SPACE, SPEED, or MAXSPEED: type of optimization (MAXSPEED)
+- # POSTSCRIPT no or yes: set to yes for PostScript printing
+- # FEATURES TINY, SMALL, NORMAL, BIG or HUGE (BIG for WIN32)
+- # WINVER 0x0400 or 0x0500: minimum Win32 version to support (0x0400)
+- # CSCOPE no or yes: include support for Cscope interface (yes)
+- # NETBEANS no or yes: include support for Netbeans interface; also
+- # requires CHANNEL (yes if GUI
+- # is yes)
+- # NBDEBUG no or yes: include support for debugging Netbeans interface (no)
+- # CHANNEL no or yes: include support for inter process communication (yes
+- # if GUI is yes)
+- # XPM define to path to XPM dir to get support for loading XPM images.
+-
+- ### BOR: root of the BC installation
+- !if ("$(BOR)"=="")
+- BOR = c:\bc5
+- !endif
+-
+- ### LINK: Name of the linker: ilink32 (this is below)
+-
+- ### GUI: yes for GUI version, no for console version
+- !if ("$(GUI)"=="")
+- GUI = yes
+- !endif
+-
+- ### IME: yes for multibyte support, no to disable it.
+- !if ("$(IME)"=="")
+- IME = yes
+- !endif
+- !if ("$(DYNAMIC_IME)"=="")
+- DYNAMIC_IME = yes
+- !endif
+-
+- ### GETTEXT: yes for multilanguage support, no to disable it.
+- !if ("$(GETTEXT)"=="")
+- GETTEXT = yes
+- !endif
+-
+- ### ICONV: yes to enable dynamic-iconv support, no to disable it
+- !if ("$(ICONV)"=="")
+- ICONV = yes
+- !endif
+-
+- ### CSCOPE: yes to enable Cscope support, no to disable it
+- !if ("$(CSCOPE)"=="")
+- CSCOPE = yes
+- !endif
+-
+- ### NETBEANS: yes to enable NetBeans interface support, no to disable it
+- !if ("$(NETBEANS)"=="") && ("$(GUI)"=="yes")
+- NETBEANS = yes
+- !endif
+-
+- ### CHANNEL: yes to enable inter process communication, no to disable it
+- !if ("$(CHANNEL)"=="") && ("$(GUI)"=="yes")
+- CHANNEL = yes
+- !endif
+-
+- ### LUA: uncomment this line if you want lua support in vim
+- # LUA=c:\lua
+-
+- ### PERL: uncomment this line if you want perl support in vim
+- # PERL=c:\perl
+-
+- ### PYTHON: uncomment this line if you want python support in vim
+- # PYTHON=c:\python22
+-
+- ### PYTHON3: uncomment this line if you want python3 support in vim
+- # PYTHON3=c:\python31
+-
+- ### RUBY: uncomment this line if you want ruby support in vim
+- # RUBY=c:\ruby
+-
+- ### TCL: uncomment this line if you want tcl support in vim
+- # TCL=c:\tcl
+-
+- ### OLE: no for normal gvim, yes for OLE-capable gvim (only works with GUI)
+- #OLE = yes
+-
+- ### DEBUG: Uncomment to make an executable for debugging
+- # DEBUG = yes
+- !if ("$(DEBUG)"=="yes")
+- DEBUG_FLAG = -v
+- !endif
+-
+- ### CODEGUARD: Uncomment to use the CODEGUARD stuff (BC 5.0 or later):
+- # CODEGUARD = yes
+- !if ("$(CODEGUARD)"=="yes")
+- CODEGUARD_FLAG = -vG
+- !endif
+-
+- ### CPUNR: set your target processor (3 to 6)
+- !if ("$(CPUNR)" == "i386") || ("$(CPUNR)" == "3")
+- CPUNR = 3
+- !elif ("$(CPUNR)" == "i486") || ("$(CPUNR)" == "4")
+- CPUNR = 4
+- !elif ("$(CPUNR)" == "i586") || ("$(CPUNR)" == "5")
+- CPUNR = 5
+- !elif ("$(CPUNR)" == "i686") || ("$(CPUNR)" == "6")
+- CPUNR = 6
+- !else
+- CPUNR = 3
+- !endif
+-
+- ### Comment out to use precompiled headers (faster, but uses lots of disk!)
+- HEADERS = -H -H=vim.csm -Hc
+-
+- ### USEDLL: no for statically linked version of run-time, yes for DLL runtime
+- !if ("$(USEDLL)"=="")
+- USEDLL = no
+- !endif
+-
+- ### ALIGN: alignment you desire: (1,2 or 4: s/b 4 for Win32)
+- !if ("$(ALIGN)"=="")
+- ALIGN = 4
+- !endif
+-
+- ### FASTCALL: yes to use FASTCALL calling convention (RECOMMENDED!), no otherwise
+- # Incompatible when calling external functions (like MSVC-compiled DLLs), so
+- # don't use FASTCALL when linking with external libs.
+- !if ("$(FASTCALL)"=="") && \
+- ("$(LUA)"=="") && \
+- ("$(PYTHON)"=="") && \
+- ("$(PYTHON3)"=="") && \
+- ("$(PERL)"=="") && \
+- ("$(TCL)"=="") && \
+- ("$(RUBY)"=="") && \
+- ("$(ICONV)"!="yes") && \
+- ("$(IME)"!="yes") && \
+- ("$(XPM)"=="")
+- FASTCALL = yes
+- !endif
+-
+- ### OPTIMIZE: SPEED to optimize for speed, SPACE otherwise (SPEED RECOMMENDED)
+- !if ("$(OPTIMIZE)"=="")
+- OPTIMIZE = MAXSPEED
+- !endif
+-
+- ### FEATURES: TINY, SMALL, NORMAL, BIG or HUGE (BIG for WIN32)
+- !if ("$(FEATURES)"=="")
+- FEATURES = BIG
+- !endif
+-
+- ### POSTSCRIPT: uncomment this line if you want PostScript printing
+- #POSTSCRIPT = yes
+-
+- ###
+- # If you have a fixed directory for $VIM or $VIMRUNTIME, other than the normal
+- # default, use these lines.
+- #VIMRCLOC = somewhere
+- #VIMRUNTIMEDIR = somewhere
+-
+- ### Set the default $(WINVER) to make it work with Bcc 5.5.
+- !ifndef WINVER
+- WINVER = 0x0400
+- !endif
+-
+- #
+- # Sanity checks for the above options:
+- #
+-
+- OSTYPE = WIN32
+-
+- #
+- # Optimizations: change as desired (RECOMMENDATION: Don't change!):
+- #
+- !if ("$(DEBUG)"=="yes")
+- OPT = -Od -N
+- !else
+- !if ("$(OPTIMIZE)"=="SPACE")
+- OPT = -O1 -f- -d
+- !elif ("$(OPTIMIZE)"=="MAXSPEED")
+- OPT = -O2 -f- -d -Ocavi -O
+- !else
+- OPT = -O2 -f- -d -Oc -O
+- !endif
+- !if ("$(FASTCALL)"=="yes")
+- OPT = $(OPT) -pr
+- !endif
+- !if ("$(CODEGUARD)"!="yes")
+- OPT = $(OPT) -vi-
+- !endif
+- !endif
+- # shouldn't have to change:
+- LIB = $(BOR)\lib
+- INCLUDE = $(BOR)\include;.;proto
+- DEFINES = -DFEAT_$(FEATURES) -DWIN32 -DHAVE_PATHDEF \
+- -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER)
+-
+- !ifdef LUA
+- INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_LUA
+- INCLUDE = $(LUA)\include;$(INCLUDE)
+- ! ifndef LUA_VER
+- LUA_VER = 51
+- ! endif
+- ! if ("$(DYNAMIC_LUA)" == "yes")
+- INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL=\"lua$(LUA_VER).dll\"
+- LUA_LIB_FLAG = /nodefaultlib:
+- ! endif
+- !endif
+-
+- !ifdef PERL
+- INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_PERL
+- INCLUDE = $(PERL)\lib\core;$(INCLUDE)
+- ! ifndef PERL_VER
+- PERL_VER = 56
+- ! endif
+- ! if ("$(DYNAMIC_PERL)" == "yes")
+- ! if ($(PERL_VER) > 55)
+- INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"perl$(PERL_VER).dll\"
+- PERL_LIB_FLAG = /nodefaultlib:
+- ! else
+- ! message "Cannot dynamically load Perl versions less than 5.6. Loading statically..."
+- ! endif
+- ! endif
+- !endif
+-
+- !ifdef PYTHON
+- !ifdef PYTHON3
+- DYNAMIC_PYTHON=yes
+- DYNAMIC_PYTHON3=yes
+- !endif
+- !endif
+-
+- !ifdef PYTHON
+- INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_PYTHON
+- !ifndef PYTHON_VER
+- PYTHON_VER = 22
+- !endif
+- !if "$(DYNAMIC_PYTHON)" == "yes"
+- INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL=\"python$(PYTHON_VER).dll\"
+- PYTHON_LIB_FLAG = /nodefaultlib:
+- !endif
+- !endif
+-
+- !ifdef PYTHON3
+- INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_PYTHON3
+- !ifndef PYTHON3_VER
+- PYTHON3_VER = 31
+- !endif
+- !if "$(DYNAMIC_PYTHON3)" == "yes"
+- INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_PYTHON3 -DDYNAMIC_PYTHON3_DLL=\"python$(PYTHON3_VER).dll\"
+- PYTHON3_LIB_FLAG = /nodefaultlib:
+- !endif
+- !endif
+-
+-
+- !ifdef RUBY
+- !ifndef RUBY_VER
+- RUBY_VER = 16
+- !endif
+- !ifndef RUBY_VER_LONG
+- RUBY_VER_LONG = 1.6
+- !endif
+-
+- !if "$(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
+-
+- INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_RUBY
+- INCLUDE = $(RUBY)\lib\ruby\$(RUBY_VER_LONG)\$(RUBY_PLATFORM);$(INCLUDE)
+-
+- !if "$(DYNAMIC_RUBY)" == "yes"
+- INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_RUBY -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\"
+- INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_RUBY_VER=$(RUBY_VER)
+- RUBY_LIB_FLAG = /nodefaultlib:
+- !endif
+- !endif
+-
+- !ifdef TCL
+- INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_TCL
+- INCLUDE = $(TCL)\include;$(INCLUDE)
+- !ifndef TCL_VER
+- TCL_VER = 83
+- !endif
+- TCL_LIB = $(TCL)\lib\tcl$(TCL_VER).lib
+- TCL_LIB_FLAG =
+- !if "$(DYNAMIC_TCL)" == "yes"
+- INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\"
+- TCL_LIB = tclstub$(TCL_VER)-bor.lib
+- TCL_LIB_FLAG =
+- !endif
+- !endif
+- #
+- # DO NOT change below:
+- #
+- CPUARG = -$(CPUNR)
+- ALIGNARG = -a$(ALIGN)
+- #
+- !if ("$(DEBUG)"=="yes")
+- DEFINES=$(DEFINES) -DDEBUG -D_DEBUG
+- !endif
+- #
+- !if ("$(OLE)"=="yes")
+- DEFINES = $(DEFINES) -DFEAT_OLE
+- !endif
+- #
+- !if ("$(IME)"=="yes")
+- MBDEFINES = $(MBDEFINES) -DFEAT_MBYTE_IME
+- !if ("$(DYNAMIC_IME)" == "yes")
+- MBDEFINES = $(MBDEFINES) -DDYNAMIC_IME
+- !endif
+- !endif
+- !if ("$(ICONV)"=="yes")
+- MBDEFINES = $(MBDEFINES) -DDYNAMIC_ICONV
+- !endif
+- !if ("$(GETTEXT)"=="yes")
+- MBDEFINES = $(MBDEFINES) -DDYNAMIC_GETTEXT
+- !endif
+-
+- !if ("$(CSCOPE)"=="yes")
+- DEFINES = $(DEFINES) -DFEAT_CSCOPE
+- !endif
+-
+- !if ("$(GUI)"=="yes")
+- DEFINES = $(DEFINES) -DFEAT_GUI_MSWIN -DFEAT_CLIPBOARD
+- !if ("$(DEBUG)"=="yes")
+- TARGET = gvimd.exe
+- !else
+- TARGET = gvim.exe
+- !endif
+- EXETYPE=-W
+- STARTUPOBJ = c0w32.obj
+- LINK2 = -aa
+- RESFILE = vim.res
+- !else
+- !undef NETBEANS
+- !undef CHANNEL
+- !undef XPM
+- !if ("$(DEBUG)"=="yes")
+- TARGET = vimd.exe
+- !else
+- # for now, anyway: VIMDLL is only for the GUI version
+- TARGET = vim.exe
+- !endif
+- EXETYPE=-WC
+- STARTUPOBJ = c0x32.obj
+- LINK2 = -ap -OS -o -P
+- RESFILE = vim.res
+- !endif
+-
+- !if ("$(NETBEANS)"=="yes")
+- !if ("$(CHANNEL)"!="yes")
+- # cannot use Netbeans without CHANNEL
+- NETBEANS = no
+- !else
+- DEFINES = $(DEFINES) -DFEAT_NETBEANS_INTG
+- !if ("$(NBDEBUG)"=="yes")
+- DEFINES = $(DEFINES) -DNBDEBUG
+- NBDEBUG_DEP = nbdebug.h nbdebug.c
+- !endif
+- !endif
+- !endif
+-
+- !if ("$(CHANNEL)"=="yes")
+- DEFINES = $(DEFINES) -DFEAT_JOB_CHANNEL
+- !endif
+-
+- !ifdef XPM
+- !if ("$(GUI)"=="yes")
+- DEFINES = $(DEFINES) -DFEAT_XPM_W32
+- INCLUDE = $(XPM)\include;$(INCLUDE)
+- !endif
+- !endif
+-
+- !if ("$(USEDLL)"=="yes")
+- DEFINES = $(DEFINES) -D_RTLDLL
+- !endif
+-
+- !if ("$(DEBUG)"=="yes")
+- OBJDIR = $(OSTYPE)\objdbg
+- !else
+- !if ("$(GUI)"=="yes")
+- !if ("$(OLE)"=="yes")
+- OBJDIR = $(OSTYPE)\oleobj
+- !else
+- OBJDIR = $(OSTYPE)\gobj
+- !endif
+- !else
+- OBJDIR = $(OSTYPE)\obj
+- !endif
+- !endif
+-
+- !if ("$(POSTSCRIPT)"=="yes")
+- DEFINES = $(DEFINES) -DMSWINPS
+- !endif
+-
+- ##### BASE COMPILER/TOOLS RULES #####
+- MAKE = $(BOR)\bin\make
+- CFLAGS = -w-aus -w-par -w-pch -w-ngu -w-csu -I$(INCLUDE)
+- BRC = $(BOR)\BIN\brc32
+- !if ("$(LINK)"=="")
+- LINK = $(BOR)\BIN\ILink32
+- !endif
+- CC = $(BOR)\BIN\Bcc32
+- LFLAGS = -OS -Tpe -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
+- LFLAGSDLL = -Tpd -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
+- CFLAGS = $(CFLAGS) -d -RT- -k- -Oi $(HEADERS) -f-
+-
+- CC1 = -c
+- CC2 = -o
+- CCARG = +$(OBJDIR)\bcc.cfg
+-
+- # implicit rules:
+-
+- # Without the following, the implicit rule in BUILTINS.MAK is picked up
+- # for a rule for .c.obj rather than the local implicit rule
+- .SUFFIXES
+- .SUFFIXES .c .obj
+- .path.c = .
+-
+- {.}.c{$(OBJDIR)}.obj:
+- $(CC) $(CCARG) $(CC1) -n$(OBJDIR)\ {$< }
+-
+- .cpp.obj:
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ $*.cpp
+-
+- vimmain = \
+- $(OBJDIR)\os_w32exe.obj
+- vimwinmain = \
+- $(OBJDIR)\os_w32exe.obj
+-
+- vimobj = \
+- $(OBJDIR)\arabic.obj \
+- $(OBJDIR)\autocmd.obj \
+- $(OBJDIR)\blowfish.obj \
+- $(OBJDIR)\buffer.obj \
+- $(OBJDIR)\charset.obj \
+- $(OBJDIR)\crypt.obj \
+- $(OBJDIR)\crypt_zip.obj \
+- $(OBJDIR)\debugger.obj \
+- $(OBJDIR)\dict.obj \
+- $(OBJDIR)\diff.obj \
+- $(OBJDIR)\digraph.obj \
+- $(OBJDIR)\edit.obj \
+- $(OBJDIR)\eval.obj \
+- $(OBJDIR)\evalfunc.obj \
+- $(OBJDIR)\ex_cmds.obj \
+- $(OBJDIR)\ex_cmds2.obj \
+- $(OBJDIR)\ex_docmd.obj \
+- $(OBJDIR)\ex_eval.obj \
+- $(OBJDIR)\ex_getln.obj \
+- $(OBJDIR)\fileio.obj \
+- $(OBJDIR)\findfile.obj \
+- $(OBJDIR)\fold.obj \
+- $(OBJDIR)\getchar.obj \
+- $(OBJDIR)\hardcopy.obj \
+- $(OBJDIR)\hashtab.obj \
+- $(OBJDIR)\indent.obj \
+- $(OBJDIR)\insexpand.obj \
+- $(OBJDIR)\json.obj \
+- $(OBJDIR)\list.obj \
+- $(OBJDIR)\main.obj \
+- $(OBJDIR)\mark.obj \
+- $(OBJDIR)\memfile.obj \
+- $(OBJDIR)\memline.obj \
+- $(OBJDIR)\menu.obj \
+- $(OBJDIR)\message.obj \
+- $(OBJDIR)\misc1.obj \
+- $(OBJDIR)\misc2.obj \
+- $(OBJDIR)\move.obj \
+- $(OBJDIR)\mbyte.obj \
+- $(OBJDIR)\normal.obj \
+- $(OBJDIR)\ops.obj \
+- $(OBJDIR)\option.obj \
+- $(OBJDIR)\popupmnu.obj \
+- $(OBJDIR)\quickfix.obj \
+- $(OBJDIR)\regexp.obj \
+- $(OBJDIR)\screen.obj \
+- $(OBJDIR)\search.obj \
+- $(OBJDIR)\sha256.obj \
+- $(OBJDIR)\sign.obj \
+- $(OBJDIR)\spell.obj \
+- $(OBJDIR)\spellfile.obj \
+- $(OBJDIR)\syntax.obj \
+- $(OBJDIR)\tag.obj \
+- $(OBJDIR)\term.obj \
+- $(OBJDIR)\ui.obj \
+- $(OBJDIR)\undo.obj \
+- $(OBJDIR)\usercmd.obj \
+- $(OBJDIR)\userfunc.obj \
+- $(OBJDIR)\version.obj \
+- $(OBJDIR)\window.obj \
+- $(OBJDIR)\pathdef.obj
+-
+- !if ("$(OLE)"=="yes")
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_ole.obj
+- !endif
+-
+- !ifdef LUA
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_lua.obj
+- !endif
+-
+- !ifdef PERL
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_perl.obj
+- !endif
+-
+- !ifdef PYTHON
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_python.obj
+- !endif
+-
+- !ifdef PYTHON3
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_python3.obj
+- !endif
+-
+- !ifdef RUBY
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_ruby.obj
+- !endif
+-
+- !ifdef TCL
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_tcl.obj
+- !endif
+-
+- !if ("$(CSCOPE)"=="yes")
+- vimobj = $(vimobj) \
+- $(OBJDIR)\if_cscope.obj
+- !endif
+-
+- !if ("$(NETBEANS)"=="yes")
+- vimobj = $(vimobj) \
+- $(OBJDIR)\netbeans.obj
+- !endif
+-
+- !if ("$(CHANNEL)"=="yes")
+- vimobj = $(vimobj) \
+- $(OBJDIR)\channel.obj
+- !endif
+-
+- !ifdef XPM
+- vimobj = $(vimobj) \
+- $(OBJDIR)\xpm_w32.obj
+- !endif
+-
+- !if ("$(GUI)"=="yes")
+- vimobj = $(vimobj) \
+- $(vimwinmain) \
+- $(OBJDIR)\gui.obj \
+- $(OBJDIR)\gui_beval.obj \
+- $(OBJDIR)\gui_w32.obj
+- !endif
+-
+- vimobj = $(vimobj) \
+- $(OBJDIR)\os_win32.obj $(OBJDIR)\os_mswin.obj $(OBJDIR)\winclip.obj
+- # Blab what we are going to do:
+- MSG = Compiling $(OSTYPE) $(TARGET) $(OLETARGET), with:
+- !if ("$(GUI)"=="yes")
+- MSG = $(MSG) GUI
+- !endif
+- !if ("$(OLE)"=="yes")
+- MSG = $(MSG) OLE
+- !endif
+- !if ("$(USEDLL)"=="yes")
+- MSG = $(MSG) USEDLL
+- !endif
+- !if ("$(FASTCALL)"=="yes")
+- MSG = $(MSG) FASTCALL
+- !endif
+- !if ("$(IME)"=="yes")
+- MSG = $(MSG) IME
+- ! if "$(DYNAMIC_IME)" == "yes"
+- MSG = $(MSG)(dynamic)
+- ! endif
+- !endif
+- !if ("$(GETTEXT)"=="yes")
+- MSG = $(MSG) GETTEXT
+- !endif
+- !if ("$(ICONV)"=="yes")
+- MSG = $(MSG) ICONV
+- !endif
+- !if ("$(DEBUG)"=="yes")
+- MSG = $(MSG) DEBUG
+- !endif
+- !if ("$(CODEGUARD)"=="yes")
+- MSG = $(MSG) CODEGUARD
+- !endif
+- !if ("$(CSCOPE)"=="yes")
+- MSG = $(MSG) CSCOPE
+- !endif
+- !if ("$(NETBEANS)"=="yes")
+- MSG = $(MSG) NETBEANS
+- !endif
+- !if ("$(CHANNEL)"=="yes")
+- MSG = $(MSG) CHANNEL
+- !endif
+- !ifdef XPM
+- MSG = $(MSG) XPM
+- !endif
+- !ifdef LUA
+- MSG = $(MSG) LUA
+- ! if "$(DYNAMIC_LUA)" == "yes"
+- MSG = $(MSG)(dynamic)
+- ! endif
+- !endif
+- !ifdef PERL
+- MSG = $(MSG) PERL
+- ! if "$(DYNAMIC_PERL)" == "yes"
+- MSG = $(MSG)(dynamic)
+- ! endif
+- !endif
+- !ifdef PYTHON
+- MSG = $(MSG) PYTHON
+- ! if "$(DYNAMIC_PYTHON)" == "yes"
+- MSG = $(MSG)(dynamic)
+- ! endif
+- !endif
+- !ifdef PYTHON3
+- MSG = $(MSG) PYTHON3
+- ! if "$(DYNAMIC_PYTHON3)" == "yes"
+- MSG = $(MSG)(dynamic)
+- ! endif
+- !endif
+- !ifdef RUBY
+- MSG = $(MSG) RUBY
+- ! if "$(DYNAMIC_RUBY)" == "yes"
+- MSG = $(MSG)(dynamic)
+- ! endif
+- !endif
+- !ifdef TCL
+- MSG = $(MSG) TCL
+- ! if "$(DYNAMIC_TCL)" == "yes"
+- MSG = $(MSG)(dynamic)
+- ! endif
+- !endif
+- MSG = $(MSG) cpu=$(CPUARG)
+- MSG = $(MSG) Align=$(ALIGNARG)
+-
+- !message $(MSG)
+-
+- TARGETS = $(TARGETS) $(TARGET)
+-
+- # Targets:
+- all: vim vimrun.exe install.exe xxd uninstal.exe GvimExt/gvimext.dll
+-
+- vim: $(OSTYPE) $(OBJDIR) $(OBJDIR)\bcc.cfg $(TARGETS)
+- @if exist $(OBJDIR)\version.obj del $(OBJDIR)\version.obj
+- @if exist auto\pathdef.c del auto\pathdef.c
+-
+- $(OSTYPE):
+- -@md $(OSTYPE)
+-
+- $(OBJDIR):
+- -@md $(OBJDIR)
+-
+- xxd:
+- @cd xxd
+- $(MAKE) /f Make_bc5.mak BOR="$(BOR)" BCC="$(CC)"
+- @cd ..
+-
+- GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h
+- cd GvimExt
+- $(MAKE) /f Make_bc5.mak USEDLL=$(USEDLL) BOR=$(BOR)
+- cd ..
+-
+- install.exe: dosinst.c $(OBJDIR)\bcc.cfg
+- $(CC) $(CCARG) -WC -DWIN32 -einstall dosinst.c
+-
+- uninstal.exe: uninstal.c $(OBJDIR)\bcc.cfg
+- $(CC) $(CCARG) -WC -DWIN32 -O2 -euninstal uninstal.c
+-
+- clean:
+- !if "$(OS)" == "Windows_NT"
+- # For Windows NT/2000, doesn't work on Windows 95/98...
+- # $(COMSPEC) needed to ensure rmdir.exe is not run
+- -@$(COMSPEC) /C rmdir /Q /S $(OBJDIR)
+- !else
+- # For Windows 95/98, doesn't work on Windows NT/2000...
+- -@deltree /y $(OBJDIR)
+- !endif
+- -@del *.res
+- -@del vim32*.dll
+- -@del vim32*.lib
+- -@del *vim*.exe
+- -@del *install*.exe
+- -@del *.csm
+- -@del *.map
+- -@del *.ilc
+- -@del *.ild
+- -@del *.ilf
+- -@del *.ils
+- -@del *.tds
+- !ifdef LUA
+- -@del lua.lib
+- !endif
+- !ifdef PERL
+- -@del perl.lib
+- -@del if_perl.c
+- -@del auto\if_perl.c
+- !endif
+- !ifdef PYTHON
+- -@del python.lib
+- !endif
+- !ifdef PYTHON3
+- -@del python3.lib
+- !endif
+- !ifdef RUBY
+- -@del ruby.lib
+- !endif
+- !ifdef TCL
+- -@del tcl.lib
+- !endif
+- !ifdef XPM
+- -@del xpm.lib
+- !endif
+- cd xxd
+- $(MAKE) /f Make_bc5.mak BOR="$(BOR)" clean
+- cd ..
+- cd GvimExt
+- $(MAKE) /f Make_bc5.mak BOR="$(BOR)" clean
+- cd ..
+-
+-
+- $(TARGET): $(OBJDIR) $(vimobj) $(OBJDIR)\$(RESFILE)
+- $(LINK) @&&|
+- $(LFLAGS) +
+- $(STARTUPOBJ) +
+- $(vimobj)
+- $<,$*
+- !if ("$(CODEGUARD)"=="yes")
+- cg32.lib+
+- !endif
+- # $(OSTYPE)==WIN32 causes os_mswin.c compilation. FEAT_SHORTCUT in it needs OLE
+- ole2w32.lib +
+- import32.lib+
+- !ifdef LUA
+- $(LUA_LIB_FLAG)lua.lib+
+- !endif
+- !ifdef PERL
+- $(PERL_LIB_FLAG)perl.lib+
+- !endif
+- !ifdef PYTHON
+- $(PYTHON_LIB_FLAG)python.lib+
+- !endif
+- !ifdef PYTHON3
+- $(PYTHON3_LIB_FLAG)python3.lib+
+- !endif
+- !ifdef RUBY
+- $(RUBY_LIB_FLAG)ruby.lib+
+- !endif
+- !ifdef TCL
+- $(TCL_LIB_FLAG)tcl.lib+
+- !endif
+- !ifdef XPM
+- xpm.lib+
+- !endif
+- !if ("$(USEDLL)"=="yes")
+- cw32i.lib
+- !else
+- cw32.lib
+- !endif
+-
+- $(OBJDIR)\$(RESFILE)
+- |
+-
+- test:
+- cd testdir
+- $(MAKE) /NOLOGO -f Make_dos.mak win32
+- cd ..
+-
+- $(OBJDIR)\ex_docmd.obj: ex_docmd.c ex_cmds.h
+-
+- $(OBJDIR)\ex_eval.obj: ex_eval.c ex_cmds.h
+-
+- $(OBJDIR)\if_ole.obj: if_ole.cpp
+-
+- $(OBJDIR)\if_lua.obj: if_lua.c lua.lib
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_lua.c
+-
+- $(OBJDIR)\if_perl.obj: auto/if_perl.c perl.lib
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc auto/if_perl.c
+-
+- auto/if_perl.c: if_perl.xs typemap
+- $(PERL)\bin\perl.exe $(PERL)\lib\ExtUtils\xsubpp -prototypes -typemap \
+- $(PERL)\lib\ExtUtils\typemap if_perl.xs -output $@
+-
+- $(OBJDIR)\if_python.obj: if_python.c if_py_both.h python.lib
+- $(CC) -I$(PYTHON)\include $(CCARG) $(CC1) $(CC2)$@ -pc if_python.c
+-
+- $(OBJDIR)\if_python3.obj: if_python3.c if_py_both.h python3.lib
+- $(CC) -I$(PYTHON3)\include $(CCARG) $(CC1) $(CC2)$@ -pc if_python3.c
+-
+- $(OBJDIR)\if_ruby.obj: if_ruby.c ruby.lib
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_ruby.c
+-
+- $(OBJDIR)\if_tcl.obj: if_tcl.c tcl.lib
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_tcl.c
+-
+- $(OBJDIR)\xpm_w32.obj: xpm_w32.c xpm.lib
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc xpm_w32.c
+-
+- $(OBJDIR)\netbeans.obj: netbeans.c $(NBDEBUG_DEP)
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ netbeans.c
+-
+- $(OBJDIR)\channel.obj: channel.c
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ channel.c
+-
+- $(OBJDIR)\vim.res: vim.rc version.h tools.bmp tearoff.bmp \
+- vim.ico vim_error.ico vim_alert.ico vim_info.ico vim_quest.ico
+- $(BRC) -fo$(OBJDIR)\vim.res -i $(BOR)\include -w32 -r vim.rc @&&|
+- $(DEFINES)
+- |
+-
+- $(OBJDIR)\pathdef.obj: auto\pathdef.c
+- $(CC) $(CCARG) $(CC1) $(CC2)$@ auto\pathdef.c
+-
+-
+- # Need to escape both quotes and backslashes in $INTERP_DEFINES
+- INTERP_DEFINES_ESC_BKS=$(INTERP_DEFINES:\=\\)
+- INTERP_DEFINES_ESC=$(INTERP_DEFINES_ESC_BKS:"=\")
+-
+- # Note: the silly /*"*/ below are there to trick make into accepting
+- # the # character as something other than a comment without messing up
+- # the preprocessor directive.
+- auto\pathdef.c::
+- -@md auto
+- @echo creating auto/pathdef.c
+- @copy /y &&|
+- /* pathdef.c */
+- /*"*/#include "vim.h"/*"*/
+-
+- char_u *default_vim_dir = (char_u *)"$(VIMRCLOC:\=\\)";
+- char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR:\=\\)";
+- char_u *all_cflags = (char_u *)"$(CC:\=\\) $(CFLAGS:\=\\) $(DEFINES) $(MBDEFINES) $(INTERP_DEFINES_ESC) $(OPT) $(EXETYPE) $(CPUARG) $(ALIGNARG) $(DEBUG_FLAG) $(CODEGUARD_FLAG)";
+- char_u *all_lflags = (char_u *)"$(LINK:\=\\) $(LFLAGS:\=\\)";
+- char_u *compiled_user = (char_u *)"$(USERNAME)";
+- char_u *compiled_sys = (char_u *)"$(USERDOMAIN)";
+- | auto\pathdef.c
+-
+- lua.lib: $(LUA)\lib\lua$(LUA_VER).lib
+- coff2omf $(LUA)\lib\lua$(LUA_VER).lib $@
+-
+- perl.lib: $(PERL)\lib\CORE\perl$(PERL_VER).lib
+- coff2omf $(PERL)\lib\CORE\perl$(PERL_VER).lib $@
+-
+- python.lib: $(PYTHON)\libs\python$(PYTHON_VER).lib
+- coff2omf $(PYTHON)\libs\python$(PYTHON_VER).lib $@
+-
+- python3.lib: $(PYTHON3)\libs\python$(PYTHON3_VER).lib
+- coff2omf $(PYTHON3)\libs\python$(PYTHON3_VER).lib $@
+-
+- ruby.lib: $(RUBY)\lib\$(RUBY_INSTALL_NAME).lib
+- coff2omf $(RUBY)\lib\$(RUBY_INSTALL_NAME).lib $@
+-
+- # For some reason, the coff2omf method doesn't work on libXpm.lib, so
+- # we have to manually generate an import library straight from the DLL.
+- xpm.lib: $(XPM)\lib\libXpm.lib
+- implib -a $@ $(XPM)\bin\libXpm.dll
+-
+- tcl.lib: $(TCL_LIB)
+- !if ("$(DYNAMIC_TCL)" == "yes")
+- copy $(TCL_LIB) $@
+- !else
+- coff2omf $(TCL_LIB) $@
+- !endif
+-
+- !if ("$(DYNAMIC_TCL)" == "yes")
+- tclstub$(TCL_VER)-bor.lib:
+- -@IF NOT EXIST $@ ECHO You must download tclstub$(TCL_VER)-bor.lib separately and\
+- place it in the src directory in order to compile a dynamic TCL-enabled\
+- (g)vim with the Borland compiler. You can get the tclstub$(TCL_VER)-bor.lib file\
+- at http://mywebpage.netscape.com/sharppeople/vim/tclstub$(TCL_VER)-bor.lib
+- !endif
+-
+- # vimrun.exe:
+- vimrun.exe: vimrun.c
+- !if ("$(USEDLL)"=="yes")
+- $(CC) -WC -O1 -I$(INCLUDE) -L$(LIB) -D_RTLDLL vimrun.c cw32mti.lib
+- !else
+- $(CC) -WC -O1 -I$(INCLUDE) -L$(LIB) vimrun.c
+- !endif
+-
+- # The dependency on $(OBJDIR) is to have bcc.cfg generated each time.
+- $(OBJDIR)\bcc.cfg: Make_bc5.mak $(OBJDIR)
+- copy /y &&|
+- $(CFLAGS)
+- -L$(LIB)
+- $(DEFINES)
+- $(MBDEFINES)
+- $(INTERP_DEFINES)
+- $(EXETYPE)
+- $(DEBUG_FLAG)
+- $(OPT)
+- $(CODEGUARD_FLAG)
+- $(CPUARG)
+- $(ALIGNARG)
+- | $@
+-
+- # vi:set sts=4 sw=4:
+-
+--- 0 ----
+*** ../vim-8.1.1305/src/dosinst.c 2019-04-04 20:31:59.094873282 +0200
+--- src/dosinst.c 2019-05-09 15:08:50.090239809 +0200
+***************
+*** 10,16 ****
+ /*
+ * dosinst.c: Install program for Vim on MS-DOS and MS-Windows
+ *
+! * Compile with Make_mvc.mak, Make_bc3.mak, Make_bc5.mak or Make_djg.mak.
+ */
+
+ /*
+--- 10,16 ----
+ /*
+ * dosinst.c: Install program for Vim on MS-DOS and MS-Windows
+ *
+! * Compile with Make_mvc.mak, Make_cyg.mak or Make_ming.mak.
+ */
+
+ /*
+*** ../vim-8.1.1305/src/dosinst.h 2019-02-22 19:40:57.693250456 +0100
+--- src/dosinst.h 2019-05-09 15:08:50.090239809 +0200
+***************
+*** 47,57 ****
+ #if defined(UNIX_LINT)
+ # define vim_mkdir(x, y) mkdir((char *)(x), y)
+ #else
+! # ifndef __BORLANDC__
+! # define vim_mkdir(x, y) _mkdir((char *)(x))
+! # else
+! # define vim_mkdir(x, y) mkdir((char *)(x))
+! # endif
+ #endif
+
+ #define sleep(n) Sleep((n) * 1000)
+--- 47,53 ----
+ #if defined(UNIX_LINT)
+ # define vim_mkdir(x, y) mkdir((char *)(x), y)
+ #else
+! # define vim_mkdir(x, y) _mkdir((char *)(x))
+ #endif
+
+ #define sleep(n) Sleep((n) * 1000)
+***************
+*** 150,159 ****
+ #endif
+ }
+
+- #ifdef __BORLANDC__
+- /* Borland defines its own searchpath() in dir.h */
+- # include <dir.h>
+- #else
+ static char *
+ searchpath(char *name)
+ {
+--- 146,151 ----
+***************
+*** 173,179 ****
+ }
+ return NULL;
+ }
+- #endif
+
+ /*
+ * Call searchpath() and save the result in allocated memory, or return NULL.
+--- 165,170 ----
+***************
+*** 463,474 ****
+ /*
+ * Expand the executable name into a full path name.
+ */
+- #if defined(__BORLANDC__)
+-
+- /* Only Borland C++ has this. */
+- # define my_fullpath(b, n, l) _fullpath(b, n, l)
+-
+- #else
+ static char *
+ my_fullpath(char *buf, char *fname, int len)
+ {
+--- 454,459 ----
+***************
+*** 478,484 ****
+
+ return (len_read > 0 && len_read < (DWORD)len) ? buf : NULL;
+ }
+- #endif
+
+ /*
+ * Remove the tail from a file or directory name.
+--- 463,468 ----
+*** ../vim-8.1.1305/src/evalfunc.c 2019-05-09 14:52:22.079358841 +0200
+--- src/evalfunc.c 2019-05-09 15:08:50.090239809 +0200
+***************
+*** 12500,12515 ****
+ }
+ #endif
+
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! item_compare(const void *s1, const void *s2);
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! item_compare2(const void *s1, const void *s2);
+
+ /* struct used in the array that's given to qsort() */
+ typedef struct
+--- 12500,12507 ----
+ }
+ #endif
+
+! static int item_compare(const void *s1, const void *s2);
+! static int item_compare2(const void *s1, const void *s2);
+
+ /* struct used in the array that's given to qsort() */
+ typedef struct
+***************
+*** 12540,12548 ****
+ * Compare functions for f_sort() and f_uniq() below.
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ item_compare(const void *s1, const void *s2)
+ {
+ sortItem_T *si1, *si2;
+--- 12532,12537 ----
+***************
+*** 12627,12635 ****
+ }
+
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ item_compare2(const void *s1, const void *s2)
+ {
+ sortItem_T *si1, *si2;
+--- 12616,12621 ----
+*** ../vim-8.1.1305/src/ex_cmds.c 2019-05-01 18:08:38.267237229 +0200
+--- src/ex_cmds.c 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 29,39 ****
+
+ static int check_readonly(int *forceit, buf_T *buf);
+ static void delbuf_msg(char_u *name);
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! help_compare(const void *s1, const void *s2);
+ static void prepare_help_buffer(void);
+
+ /*
+--- 29,35 ----
+
+ static int check_readonly(int *forceit, buf_T *buf);
+ static void delbuf_msg(char_u *name);
+! static int help_compare(const void *s1, const void *s2);
+ static void prepare_help_buffer(void);
+
+ /*
+***************
+*** 314,329 ****
+ } st_u;
+ } sorti_T;
+
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! sort_compare(const void *s1, const void *s2);
+
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ sort_compare(const void *s1, const void *s2)
+ {
+ sorti_T l1 = *(sorti_T *)s1;
+--- 310,318 ----
+ } st_u;
+ } sorti_T;
+
+! static int sort_compare(const void *s1, const void *s2);
+
+ static int
+ sort_compare(const void *s1, const void *s2)
+ {
+ sorti_T l1 = *(sorti_T *)s1;
+***************
+*** 6580,6588 ****
+ * that has been put after the tagname by find_tags().
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ help_compare(const void *s1, const void *s2)
+ {
+ char *p1;
+--- 6569,6574 ----
+*** ../vim-8.1.1305/src/ex_getln.c 2019-04-27 13:03:20.008715938 +0200
+--- src/ex_getln.c 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 125,135 ****
+ #endif
+
+ #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! sort_func_compare(const void *s1, const void *s2);
+ #endif
+
+
+--- 125,131 ----
+ #endif
+
+ #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
+! static int sort_func_compare(const void *s1, const void *s2);
+ #endif
+
+
+***************
+*** 3803,3811 ****
+
+ #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ sort_func_compare(const void *s1, const void *s2)
+ {
+ char_u *p1 = *(char_u **)s1;
+--- 3799,3804 ----
+***************
+*** 6855,6863 ****
+
+ #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ sort_hist(const void *s1, const void *s2)
+ {
+ histentry_T *p1 = *(histentry_T **)s1;
+--- 6848,6853 ----
+*** ../vim-8.1.1305/src/gui_w32.c 2019-05-09 13:50:13.362401997 +0200
+--- src/gui_w32.c 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 1303,1311 ****
+ int
+ gui_mch_open(void)
+ {
+- #ifndef SW_SHOWDEFAULT
+- # define SW_SHOWDEFAULT 10 /* Borland 5.0 doesn't have it */
+- #endif
+ /* Actually open the window, if not already visible
+ * (may be done already in gui_mch_set_shellsize) */
+ if (!IsWindowVisible(s_hwnd))
+--- 1303,1308 ----
+***************
+*** 3799,3807 ****
+ * Add a lot of missing defines.
+ * They are not always missing, we need the #ifndef's.
+ */
+- # ifndef _cdecl
+- # define _cdecl
+- # endif
+ # ifndef IsMinimized
+ # define IsMinimized(hwnd) IsIconic(hwnd)
+ # endif
+--- 3796,3801 ----
+***************
+*** 5521,5527 ****
+ * First static functions (no prototypes generated).
+ */
+ # ifdef _MSC_VER
+! # include <ime.h> /* Apparently not needed for Cygwin, MingW or Borland. */
+ # endif
+ # include <imm.h>
+
+--- 5515,5521 ----
+ * First static functions (no prototypes generated).
+ */
+ # ifdef _MSC_VER
+! # include <ime.h> /* Apparently not needed for Cygwin or MinGW. */
+ # endif
+ # include <imm.h>
+
+***************
+*** 6272,6286 ****
+ void
+ gui_mch_flush(void)
+ {
+- # if defined(__BORLANDC__)
+- /*
+- * The GdiFlush declaration (in Borland C 5.01 <wingdi.h>) is not a
+- * prototype declaration.
+- * The compiler complains if __stdcall is not used in both declarations.
+- */
+- BOOL __stdcall GdiFlush(void);
+- # endif
+-
+ #if defined(FEAT_DIRECTX)
+ if (IS_ENABLE_DIRECTX())
+ DWriteContext_Flush(s_dwc);
+--- 6266,6271 ----
+*** ../vim-8.1.1305/src/if_ole.cpp 2019-02-18 21:41:34.477750367 +0100
+--- src/if_ole.cpp 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 12,35 ****
+ *
+ * See os_mswin.c for the client side.
+ */
+-
+- /*
+- * We have some trouble with order of includes here. For Borland it needs to
+- * be different from MSVC...
+- */
+- #ifndef __BORLANDC__
+ extern "C" {
+ # include "vim.h"
+ }
+- #endif
+
+ #include <windows.h>
+ #include <oleauto.h>
+
+ extern "C" {
+- #ifdef __BORLANDC__
+- # include "vim.h"
+- #endif
+ extern HWND s_hwnd;
+ extern HWND vim_parent_hwnd;
+ }
+--- 12,25 ----
+*** ../vim-8.1.1305/src/if_py_both.h 2019-05-07 22:06:48.679310672 +0200
+--- src/if_py_both.h 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 13,23 ****
+ * Common code for if_python.c and if_python3.c.
+ */
+
+- #ifdef __BORLANDC__
+- /* Disable Warning W8060: Possibly incorrect assignment in function ... */
+- # pragma warn -8060
+- #endif
+-
+ static char_u e_py_systemexit[] = "E880: Can't handle SystemExit of %s exception in vim";
+
+ #if PY_VERSION_HEX < 0x02050000
+--- 13,18 ----
+*** ../vim-8.1.1305/src/main.c 2019-05-08 22:28:41.677765838 +0200
+--- src/main.c 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 98,106 ****
+ # endif
+ int
+ # ifdef MSWIN
+- # ifdef __BORLANDC__
+- _cdecl
+- # endif
+ VimMain
+ # else
+ main
+--- 98,103 ----
+*** ../vim-8.1.1305/src/mark.c 2019-04-27 22:40:03.927661368 +0200
+--- src/mark.c 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 1950,1958 ****
+ * Compare functions for qsort() below, that compares b_last_used.
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ buf_compare(const void *s1, const void *s2)
+ {
+ buf_T *buf1 = *(buf_T **)s1;
+--- 1950,1955 ----
+*** ../vim-8.1.1305/src/message.c 2019-05-08 22:28:41.681765816 +0200
+--- src/message.c 2019-05-09 15:08:50.094239787 +0200
+***************
+*** 357,365 ****
+ int vim_snprintf(char *str, size_t str_m, const char *fmt, ...);
+
+ int
+- # ifdef __BORLANDC__
+- _RTLENTRYF
+- # endif
+ smsg(const char *s, ...)
+ {
+ va_list arglist;
+--- 357,362 ----
+***************
+*** 371,379 ****
+ }
+
+ int
+- # ifdef __BORLANDC__
+- _RTLENTRYF
+- # endif
+ smsg_attr(int attr, const char *s, ...)
+ {
+ va_list arglist;
+--- 368,373 ----
+***************
+*** 385,393 ****
+ }
+
+ int
+- # ifdef __BORLANDC__
+- _RTLENTRYF
+- # endif
+ smsg_attr_keep(int attr, const char *s, ...)
+ {
+ va_list arglist;
+--- 379,384 ----
+***************
+*** 3091,3097 ****
+ (isatty(2) && strcmp("/dev/console", ttyname(2)) != 0)
+ # else
+ isatty(2)
+! # endif
+ # ifdef FEAT_GUI
+ ||
+ # endif
+--- 3082,3088 ----
+ (isatty(2) && strcmp("/dev/console", ttyname(2)) != 0)
+ # else
+ isatty(2)
+! # endif
+ # ifdef FEAT_GUI
+ ||
+ # endif
+*** ../vim-8.1.1305/src/misc1.c 2019-04-10 22:15:15.809016828 +0200
+--- src/misc1.c 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 5626,5643 ****
+ * File name expansion code for MS-DOS, Win16 and Win32. It's here because
+ * it's shared between these systems.
+ */
+- # if defined(PROTO)
+- # define _cdecl
+- # else
+- # ifdef __BORLANDC__
+- # define _cdecl _RTLENTRYF
+- # endif
+- # endif
+
+ /*
+ * comparison function for qsort in dos_expandpath()
+ */
+! static int _cdecl
+ pstrcmp(const void *a, const void *b)
+ {
+ return (pathcmp(*(char **)a, *(char **)b, -1));
+--- 5626,5636 ----
+ * File name expansion code for MS-DOS, Win16 and Win32. It's here because
+ * it's shared between these systems.
+ */
+
+ /*
+ * comparison function for qsort in dos_expandpath()
+ */
+! static int
+ pstrcmp(const void *a, const void *b)
+ {
+ return (pathcmp(*(char **)a, *(char **)b, -1));
+*** ../vim-8.1.1305/src/misc2.c 2019-05-08 21:58:54.446597033 +0200
+--- src/misc2.c 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 3912,3927 ****
+ /*
+ * Sort an array of strings.
+ */
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! sort_compare(const void *s1, const void *s2);
+
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ sort_compare(const void *s1, const void *s2)
+ {
+ return STRCMP(*(char **)s1, *(char **)s2);
+--- 3912,3920 ----
+ /*
+ * Sort an array of strings.
+ */
+! static int sort_compare(const void *s1, const void *s2);
+
+ static int
+ sort_compare(const void *s1, const void *s2)
+ {
+ return STRCMP(*(char **)s1, *(char **)s2);
+*** ../vim-8.1.1305/src/normal.c 2019-05-08 22:54:26.023509040 +0200
+--- src/normal.c 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 27,37 ****
+ #ifdef FEAT_EVAL
+ static void set_vcount_ca(cmdarg_T *cap, int *set_prevcount);
+ #endif
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! nv_compare(const void *s1, const void *s2);
+ static void op_colon(oparg_T *oap);
+ static void op_function(oparg_T *oap);
+ #if defined(FEAT_MOUSE)
+--- 27,33 ----
+ #ifdef FEAT_EVAL
+ static void set_vcount_ca(cmdarg_T *cap, int *set_prevcount);
+ #endif
+! static int nv_compare(const void *s1, const void *s2);
+ static void op_colon(oparg_T *oap);
+ static void op_function(oparg_T *oap);
+ #if defined(FEAT_MOUSE)
+***************
+*** 422,430 ****
+ * through the index in nv_cmd_idx[].
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ nv_compare(const void *s1, const void *s2)
+ {
+ int c1, c2;
+--- 418,423 ----
+*** ../vim-8.1.1305/src/option.c 2019-05-05 16:54:59.505931038 +0200
+--- src/option.c 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 12561,12571 ****
+
+ #ifdef FEAT_LINEBREAK
+
+- # if defined(__BORLANDC__) && (__BORLANDC__ < 0x500)
+- /* Borland C++ screws up loop optimisation here (negri) */
+- #pragma option -O-l
+- # endif
+-
+ /*
+ * fill_breakat_flags() -- called when 'breakat' changes value.
+ */
+--- 12561,12566 ----
+***************
+*** 12582,12592 ****
+ for (p = p_breakat; *p; p++)
+ breakat_flags[*p] = TRUE;
+ }
+-
+- # if defined(__BORLANDC__) && (__BORLANDC__ < 0x500)
+- #pragma option -O.l
+- # endif
+-
+ #endif
+
+ /*
+--- 12577,12582 ----
+*** ../vim-8.1.1305/src/os_mswin.c 2019-04-28 19:46:17.034060084 +0200
+--- src/os_mswin.c 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 172,197 ****
+ return !SetCurrentDirectory(temp);
+ }
+ # endif
+- #else
+- # ifdef __BORLANDC__
+- /* being a more ANSI compliant compiler, BorlandC doesn't define _stricoll:
+- * but it does in BC 5.02! */
+- # if __BORLANDC__ < 0x502
+- int _stricoll(char *a, char *b)
+- {
+- # if 1
+- // this is fast but not correct:
+- return stricmp(a, b);
+- # else
+- // the ANSI-ish correct way is to use strxfrm():
+- char a_buff[512], b_buff[512]; // file names, so this is enough on Win32
+- strxfrm(a_buff, a, 512);
+- strxfrm(b_buff, b, 512);
+- return strcoll(a_buff, b_buff);
+- # endif
+- }
+- # endif
+- # endif
+ #endif
+
+
+--- 172,177 ----
+***************
+*** 374,403 ****
+ int force UNUSED)
+ {
+ int nResult = FAIL;
+
+! #ifdef __BORLANDC__
+! if (*fname == NUL) /* Borland behaves badly here - make it consistent */
+! nResult = mch_dirname(buf, len);
+! else
+! #endif
+ {
+! WCHAR *wname;
+! WCHAR wbuf[MAX_PATH];
+! char_u *cname = NULL;
+!
+! wname = enc_to_utf16(fname, NULL);
+! if (wname != NULL && _wfullpath(wbuf, wname, MAX_PATH) != NULL)
+ {
+! cname = utf16_to_enc((short_u *)wbuf, NULL);
+! if (cname != NULL)
+! {
+! vim_strncpy(buf, cname, len - 1);
+! nResult = OK;
+! }
+ }
+- vim_free(wname);
+- vim_free(cname);
+ }
+
+ #ifdef USE_FNAME_CASE
+ fname_case(buf, len);
+--- 354,375 ----
+ int force UNUSED)
+ {
+ int nResult = FAIL;
++ WCHAR *wname;
++ WCHAR wbuf[MAX_PATH];
++ char_u *cname = NULL;
+
+! wname = enc_to_utf16(fname, NULL);
+! if (wname != NULL && _wfullpath(wbuf, wname, MAX_PATH) != NULL)
+ {
+! cname = utf16_to_enc((short_u *)wbuf, NULL);
+! if (cname != NULL)
+ {
+! vim_strncpy(buf, cname, len - 1);
+! nResult = OK;
+ }
+ }
++ vim_free(wname);
++ vim_free(cname);
+
+ #ifdef USE_FNAME_CASE
+ fname_case(buf, len);
+***************
+*** 2044,2052 ****
+ * Clean up on exit. This destroys the hidden message window.
+ */
+ static void
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ CleanUpMessaging(void)
+ {
+ if (message_window != 0)
+--- 2016,2021 ----
+*** ../vim-8.1.1305/src/os_w32exe.c 2019-04-28 19:46:17.034060084 +0200
+--- src/os_w32exe.c 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 15,33 ****
+ */
+ #include "vim.h"
+
+- #ifdef __MINGW32__
+- # ifndef _cdecl
+- # define _cdecl
+- # endif
+- #endif
+-
+ // cproto doesn't create a prototype for VimMain()
+ #ifdef VIMDLL
+ __declspec(dllimport)
+ #endif
+! int _cdecl VimMain(int argc, char **argv);
+ #ifndef VIMDLL
+! void _cdecl SaveInst(HINSTANCE hInst);
+ #endif
+
+ #ifndef PROTO
+--- 15,27 ----
+ */
+ #include "vim.h"
+
+ // cproto doesn't create a prototype for VimMain()
+ #ifdef VIMDLL
+ __declspec(dllimport)
+ #endif
+! int VimMain(int argc, char **argv);
+ #ifndef VIMDLL
+! void SaveInst(HINSTANCE hInst);
+ #endif
+
+ #ifndef PROTO
+*** ../vim-8.1.1305/src/os_win32.c 2019-05-07 23:01:34.241209371 +0200
+--- src/os_win32.c 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 146,156 ****
+ # define __stdcall /* empty */
+ #endif
+
+- #if defined(__BORLANDC__)
+- /* Strangely Borland uses a non-standard name. */
+- # define wcsicmp(a, b) wcscmpi((a), (b))
+- #endif
+-
+ #if !defined(FEAT_GUI_MSWIN) || defined(VIMDLL)
+ /* Win32 Console handles for input and output */
+ static HANDLE g_hConIn = INVALID_HANDLE_VALUE;
+--- 146,151 ----
+***************
+*** 941,949 ****
+
+ /* The return code indicates key code size. */
+ static int
+- #ifdef __BORLANDC__
+- __stdcall
+- #endif
+ win32_kbd_patch_key(
+ KEY_EVENT_RECORD *pker)
+ {
+--- 936,941 ----
+***************
+*** 6695,6702 ****
+ int
+ mch_open(const char *name, int flags, int mode)
+ {
+- /* _wopen() does not work with Borland C 5.5: creates a read-only file. */
+- #ifndef __BORLANDC__
+ WCHAR *wn;
+ int f;
+
+--- 6687,6692 ----
+***************
+*** 6707,6722 ****
+ f = _wopen(wn, flags, mode);
+ vim_free(wn);
+ return f;
+- #else
+- /* open() can open a file which name is longer than _MAX_PATH bytes
+- * and shorter than _MAX_PATH characters successfully, but sometimes it
+- * causes unexpected error in another part. We make it an error explicitly
+- * here. */
+- if (strlen(name) >= _MAX_PATH)
+- return -1;
+-
+- return open(name, flags, mode);
+- #endif
+ }
+
+ /*
+--- 6697,6702 ----
+*** ../vim-8.1.1305/src/os_win32.h 2019-04-28 19:46:17.034060084 +0200
+--- src/os_win32.h 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 53,64 ****
+
+ #define FEAT_SHORTCUT /* resolve shortcuts */
+
+! #if (!defined(__BORLANDC__) || __BORLANDC__ >= 0x550) \
+! && (!defined(_MSC_VER) || _MSC_VER > 1020)
+ /*
+ * Access Control List (actually security info).
+! * Borland has the acl stuff only in version 5.5 and later.
+! * MSVC in 5.0, not in 4.2, don't know about 4.3.
+ */
+ # define HAVE_ACL
+ #endif
+--- 53,62 ----
+
+ #define FEAT_SHORTCUT /* resolve shortcuts */
+
+! #if (!defined(_MSC_VER) || _MSC_VER > 1020)
+ /*
+ * Access Control List (actually security info).
+! * MSVC has acl stuff only in 5.0, not in 4.2, don't know about 4.3.
+ */
+ # define HAVE_ACL
+ #endif
+***************
+*** 142,149 ****
+ # define IO_REPARSE_TAG_SYMLINK 0xA000000C
+ #endif
+
+! #if defined(_MSC_VER) || defined(__BORLANDC__)
+! /* Support for __try / __except. All versions of MSVC and Borland C are
+ * expected to have this. Any other compilers that support it? */
+ # define HAVE_TRY_EXCEPT 1
+ # include <malloc.h> /* for _resetstkoflw() */
+--- 140,147 ----
+ # define IO_REPARSE_TAG_SYMLINK 0xA000000C
+ #endif
+
+! #if defined(_MSC_VER)
+! /* Support for __try / __except. All versions of MSVC are
+ * expected to have this. Any other compilers that support it? */
+ # define HAVE_TRY_EXCEPT 1
+ # include <malloc.h> /* for _resetstkoflw() */
+***************
+*** 206,216 ****
+ # define HAVE_SETENV
+ #endif
+ #define mch_getenv(x) (char_u *)getenv((char *)(x))
+! #ifdef __BORLANDC__
+! # define vim_mkdir(x, y) mkdir(x)
+! #else
+! # define vim_mkdir(x, y) mch_mkdir(x)
+! #endif
+
+ /* Enable common dialogs input unicode from IME if possible. */
+ #define pDispatchMessage DispatchMessageW
+--- 204,210 ----
+ # define HAVE_SETENV
+ #endif
+ #define mch_getenv(x) (char_u *)getenv((char *)(x))
+! #define vim_mkdir(x, y) mch_mkdir(x)
+
+ /* Enable common dialogs input unicode from IME if possible. */
+ #define pDispatchMessage DispatchMessageW
+*** ../vim-8.1.1305/src/proto.h 2019-04-27 13:03:20.008715938 +0200
+--- src/proto.h 2019-05-09 15:08:50.098239766 +0200
+***************
+*** 42,49 ****
+ # include "os_win32.pro"
+ # include "os_mswin.pro"
+ # include "winclip.pro"
+! # if (defined(__GNUC__) && !defined(__MINGW32__)) \
+! || (defined(__BORLANDC__) && __BORLANDC__ < 0x502)
+ extern int _stricoll(char *a, char *b);
+ # endif
+ # endif
+--- 42,48 ----
+ # include "os_win32.pro"
+ # include "os_mswin.pro"
+ # include "winclip.pro"
+! # if (defined(__GNUC__) && !defined(__MINGW32__))
+ extern int _stricoll(char *a, char *b);
+ # endif
+ # endif
+***************
+*** 108,180 ****
+ # endif
+
+ /* These prototypes cannot be produced automatically. */
+! int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! smsg(const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 1, 0)))
+ #endif
+ ;
+
+! int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! smsg_attr(int, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 2, 3)))
+ #endif
+ ;
+
+! int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! smsg_attr_keep(int, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 2, 3)))
+ #endif
+ ;
+
+ /* These prototypes cannot be produced automatically. */
+! int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! semsg(const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 1, 0)))
+ #endif
+ ;
+
+ /* These prototypes cannot be produced automatically. */
+! void
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! siemsg(const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 1, 0)))
+ #endif
+ ;
+
+! int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! vim_snprintf_add(char *, size_t, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 3, 4)))
+ #endif
+ ;
+
+! int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! vim_snprintf(char *, size_t, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 3, 4)))
+ #endif
+--- 107,151 ----
+ # endif
+
+ /* These prototypes cannot be produced automatically. */
+! int smsg(const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 1, 0)))
+ #endif
+ ;
+
+! int smsg_attr(int, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 2, 3)))
+ #endif
+ ;
+
+! int smsg_attr_keep(int, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 2, 3)))
+ #endif
+ ;
+
+ /* These prototypes cannot be produced automatically. */
+! int semsg(const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 1, 0)))
+ #endif
+ ;
+
+ /* These prototypes cannot be produced automatically. */
+! void siemsg(const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 1, 0)))
+ #endif
+ ;
+
+! int vim_snprintf_add(char *, size_t, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 3, 4)))
+ #endif
+ ;
+
+! int vim_snprintf(char *, size_t, const char *, ...)
+ #ifdef USE_PRINTF_FORMAT_ATTRIBUTE
+ __attribute__((format(printf, 3, 4)))
+ #endif
+***************
+*** 209,215 ****
+ # endif
+ # include "search.pro"
+ # ifdef FEAT_SIGNS
+! # include "sign.pro"
+ # endif
+ # include "spell.pro"
+ # include "spellfile.pro"
+--- 180,186 ----
+ # endif
+ # include "search.pro"
+ # ifdef FEAT_SIGNS
+! # include "sign.pro"
+ # endif
+ # include "spell.pro"
+ # include "spellfile.pro"
+***************
+*** 337,349 ****
+ */
+ #if defined(FEAT_PERL) && !defined(IN_PERL_FILE)
+ # define CV void
+- # ifdef __BORLANDC__
+- #pragma option -pc
+- # endif
+ # include "if_perl.pro"
+- # ifdef __BORLANDC__
+- #pragma option -p.
+- # endif
+ # include "if_perlsfio.pro"
+ #endif
+
+--- 308,314 ----
+***************
+*** 357,364 ****
+ void clip_mch_request_selection(VimClipboard *cbd);
+ void clip_mch_set_selection(VimClipboard *cbd);
+ #endif
+-
+- #ifdef __BORLANDC__
+- # define _PROTO_H
+- #endif
+ #endif /* !PROTO && !NOPROTO */
+--- 322,325 ----
+*** ../vim-8.1.1305/src/screen.c 2019-05-08 20:20:42.596141850 +0200
+--- src/screen.c 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 2945,2953 ****
+ static buf_T *current_buf = NULL;
+
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ text_prop_compare(const void *s1, const void *s2)
+ {
+ int idx1, idx2;
+--- 2945,2950 ----
+*** ../vim-8.1.1305/src/spell.c 2019-04-10 22:15:15.817016767 +0200
+--- src/spell.c 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 6760,6779 ****
+ }
+ }
+
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! sug_compare(const void *s1, const void *s2);
+
+ /*
+ * Function given to qsort() to sort the suggestions on st_score.
+ * First on "st_score", then "st_altscore" then alphabetically.
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ sug_compare(const void *s1, const void *s2)
+ {
+ suggest_T *p1 = (suggest_T *)s1;
+--- 6760,6772 ----
+ }
+ }
+
+! static int sug_compare(const void *s1, const void *s2);
+
+ /*
+ * Function given to qsort() to sort the suggestions on st_score.
+ * First on "st_score", then "st_altscore" then alphabetically.
+ */
+ static int
+ sug_compare(const void *s1, const void *s2)
+ {
+ suggest_T *p1 = (suggest_T *)s1;
+*** ../vim-8.1.1305/src/spellfile.c 2019-01-24 17:18:37.595462334 +0100
+--- src/spellfile.c 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 4802,4820 ****
+ return p1 == NULL && p2 == NULL;
+ }
+
+! static int
+! #ifdef __BORLANDC__
+! _RTLENTRYF
+! #endif
+! rep_compare(const void *s1, const void *s2);
+
+ /*
+ * Function given to qsort() to sort the REP items on "from" string.
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ rep_compare(const void *s1, const void *s2)
+ {
+ fromto_T *p1 = (fromto_T *)s1;
+--- 4802,4813 ----
+ return p1 == NULL && p2 == NULL;
+ }
+
+! static int rep_compare(const void *s1, const void *s2);
+
+ /*
+ * Function given to qsort() to sort the REP items on "from" string.
+ */
+ static int
+ rep_compare(const void *s1, const void *s2)
+ {
+ fromto_T *p1 = (fromto_T *)s1;
+*** ../vim-8.1.1305/src/syntax.c 2019-04-28 19:46:17.034060084 +0200
+--- src/syntax.c 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 5348,5356 ****
+ * A simple syntax group ID comparison function suitable for use in qsort()
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ syn_compare_stub(const void *v1, const void *v2)
+ {
+ const short *s1 = v1;
+--- 5348,5353 ----
+***************
+*** 6703,6711 ****
+ } time_entry_T;
+
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ syn_compare_syntime(const void *v1, const void *v2)
+ {
+ const time_entry_T *s1 = v1;
+--- 6700,6705 ----
+*** ../vim-8.1.1305/src/userfunc.c 2019-04-21 00:00:07.946354820 +0200
+--- src/userfunc.c 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 55,70 ****
+ static void func_do_profile(ufunc_T *fp);
+ static void prof_sort_list(FILE *fd, ufunc_T **sorttab, int st_len, char *title, int prefer_self);
+ static void prof_func_line(FILE *fd, int count, proftime_T *total, proftime_T *self, int prefer_self);
+! static int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! prof_total_cmp(const void *s1, const void *s2);
+! static int
+! # ifdef __BORLANDC__
+! _RTLENTRYF
+! # endif
+! prof_self_cmp(const void *s1, const void *s2);
+ #endif
+ static void funccal_unref(funccall_T *fc, ufunc_T *fp, int force);
+
+--- 55,62 ----
+ static void func_do_profile(ufunc_T *fp);
+ static void prof_sort_list(FILE *fd, ufunc_T **sorttab, int st_len, char *title, int prefer_self);
+ static void prof_func_line(FILE *fd, int count, proftime_T *total, proftime_T *self, int prefer_self);
+! static int prof_total_cmp(const void *s1, const void *s2);
+! static int prof_self_cmp(const void *s1, const void *s2);
+ #endif
+ static void funccal_unref(funccall_T *fc, ufunc_T *fp, int force);
+
+***************
+*** 2794,2802 ****
+ * Compare function for total time sorting.
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ prof_total_cmp(const void *s1, const void *s2)
+ {
+ ufunc_T *p1, *p2;
+--- 2786,2791 ----
+***************
+*** 2810,2818 ****
+ * Compare function for self time sorting.
+ */
+ static int
+- #ifdef __BORLANDC__
+- _RTLENTRYF
+- #endif
+ prof_self_cmp(const void *s1, const void *s2)
+ {
+ ufunc_T *p1, *p2;
+--- 2799,2804 ----
+*** ../vim-8.1.1305/src/vim.h 2019-04-28 18:04:56.062492159 +0200
+--- src/vim.h 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 17,40 ****
+ # define MSWIN
+ #endif
+
+- // use fastcall for Borland, when compiling for MS-Windows
+- #if defined(__BORLANDC__) && defined(MSWIN) && !defined(DEBUG)
+- #if defined(FEAT_PERL) || \
+- defined(FEAT_PYTHON) || \
+- defined(FEAT_PYTHON3) || \
+- defined(FEAT_RUBY) || \
+- defined(FEAT_TCL) || \
+- defined(FEAT_MZSCHEME) || \
+- defined(DYNAMIC_GETTEXT) || \
+- defined(DYNAMIC_ICONV) || \
+- defined(DYNAMIC_IME) || \
+- defined(XPM)
+- #pragma option -pc
+- # else
+- #pragma option -pr
+- # endif
+- #endif
+-
+ #ifdef MSWIN
+ # include "vimio.h"
+ #endif
+--- 17,22 ----
+***************
+*** 2163,2173 ****
+ # define BROWSE_DIR 2 /* flag for do_browse() */
+ #endif
+
+- /* stop using fastcall for Borland */
+- #if defined(__BORLANDC__) && defined(MSWIN) && !defined(DEBUG)
+- #pragma option -p.
+- #endif
+-
+ #ifdef _MSC_VER
+ /* Avoid useless warning "conversion from X to Y of greater size". */
+ #pragma warning(disable : 4312)
+--- 2145,2150 ----
+***************
+*** 2344,2352 ****
+ # undef FF
+ # undef OP_DELETE
+ # undef OP_JOIN
+- # ifdef __BORLANDC__
+- # define NOPROTO 1
+- # endif
+ /* remove MAX and MIN, included by glib.h, redefined by sys/param.h */
+ # ifdef MAX
+ # undef MAX
+--- 2321,2326 ----
+***************
+*** 2374,2383 ****
+ # undef bool
+ # endif
+
+- # ifdef __BORLANDC__
+- /* Borland has the structure stati64 but not _stati64 */
+- # define _stati64 stati64
+- # endif
+ #endif
+
+ /* values for vim_handle_signal() that are not a signal */
+--- 2348,2353 ----
+*** ../vim-8.1.1305/src/vim.rc 2019-04-28 19:46:17.034060084 +0200
+--- src/vim.rc 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 12,22 ****
+ #include <winver.h>
+ #include "version.h"
+ #include "gui_w32_rc.h"
+! // #if defined(__BORLANDC__) || defined(__CYGWIN32__) || defined(__MINGW32__)
+! # include <winresrc.h>
+! // #else
+! // # include <winres.h>
+! // #endif
+
+ //
+ // Icons
+--- 12,18 ----
+ #include <winver.h>
+ #include "version.h"
+ #include "gui_w32_rc.h"
+! #include <winresrc.h>
+
+ //
+ // Icons
+*** ../vim-8.1.1305/src/vimrun.c 2018-02-04 14:41:37.000000000 +0100
+--- src/vimrun.c 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 23,33 ****
+ #endif
+ #include <windows.h>
+
+- #ifdef __BORLANDC__
+- # define _kbhit kbhit
+- # define _getch getch
+- #endif
+-
+ int
+ main(void)
+ {
+--- 23,28 ----
+*** ../vim-8.1.1305/src/xxd/Make_bc5.mak 2010-05-15 13:04:06.000000000 +0200
+--- src/xxd/Make_bc5.mak 1970-01-01 01:00:00.000000000 +0100
+***************
+*** 1,18 ****
+- # The most simplistic Makefile for Win32 (NT and Windows 95).
+- # Used for Borland C++.
+-
+- !if ("$(BOR)"=="")
+- BOR = c:\bc5
+- !endif
+- !if ("$(BCC)"=="")
+- BCC = bcc32
+- !endif
+-
+- xxd: xxd.exe
+-
+- xxd.exe: xxd.c
+- $(BCC) -I$(BOR)\include -L$(BOR)\lib -DWIN32 xxd.c $(BOR)\lib\wildargs.obj
+-
+- clean:
+- - del xxd.obj
+- - del xxd.exe
+--- 0 ----
+*** ../vim-8.1.1305/src/xxd/xxd.c 2019-03-02 07:15:20.217458790 +0100
+--- src/xxd/xxd.c 2019-05-09 15:08:50.102239745 +0200
+***************
+*** 81,87 ****
+ #else
+ # include <fcntl.h>
+ #endif
+! #if defined(WIN32) || defined(__BORLANDC__) || defined(CYGWIN)
+ # include <io.h> /* for setmode() */
+ #else
+ # ifdef UNIX
+--- 81,87 ----
+ #else
+ # include <fcntl.h>
+ #endif
+! #if defined(WIN32) || defined(CYGWIN)
+ # include <io.h> /* for setmode() */
+ #else
+ # ifdef UNIX
+***************
+*** 96,107 ****
+ # include <unix.h> /* for fdopen() on MAC */
+ #endif
+
+- #if defined(__BORLANDC__) && __BORLANDC__ <= 0x0410 && !defined(fileno)
+- /* Missing define and prototype grabbed from the BC 4.0 <stdio.h> */
+- # define fileno(f) ((f)->fd)
+- FILE _FAR *_Cdecl _FARFUNC fdopen(int __handle, char _FAR *__type);
+- #endif
+-
+
+ /* This corrects the problem of missing prototypes for certain functions
+ * in some GNU installations (e.g. SunOS 4.1.x).
+--- 96,101 ----
+***************
+*** 190,196 ****
+ #endif
+
+ #ifndef __P
+! # if defined(__STDC__) || defined(WIN32) || defined(__BORLANDC__)
+ # define __P(a) a
+ # else
+ # define __P(a) ()
+--- 184,190 ----
+ #endif
+
+ #ifndef __P
+! # if defined(__STDC__) || defined(WIN32)
+ # define __P(a) a
+ # else
+ # define __P(a) ()
+*** ../vim-8.1.1305/src/version.c 2019-05-09 14:52:22.083358820 +0200
+--- src/version.c 2019-05-09 15:08:22.442384375 +0200
+***************
+*** 769,770 ****
+--- 769,772 ----
+ { /* Add new patch number below this line */
++ /**/
++ 1306,
+ /**/
+
+--
+ERIC IDLE PLAYED: THE DEAD COLLECTOR, MR BINT (A VILLAGE NE'ER-DO -WELL VERY
+ KEEN ON BURNING WITCHES), SIR ROBIN, THE GUARD WHO DOESN'T
+ HICOUGH BUT TRIES TO GET THINGS STRAIGHT, CONCORDE (SIR
+ LAUNCELOT'S TRUSTY STEED), ROGER THE SHRUBBER (A SHRUBBER),
+ BROTHER MAYNARD
+ "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 ///