diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-07-23 17:11:15 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-07-23 17:11:15 +0200 |
commit | 2aeaf3fc013a3c4828d6e98a80e6a2e2d980f109 (patch) | |
tree | b22c7e6e965f84e426849a67da8b60165d5dd3e0 /src | |
parent | 26af85d97ba1ed0ade6cdd41890ca04ed879b9c7 (diff) |
patch 8.0.0756: cannot build libvterm with MSVCv8.0.0756
Problem: Cannot build libvterm with MSVC.
Solution: Add an MSVC Makefile to libvterm. (Yasuhiro Matsumoto, closes
#1865)
Diffstat (limited to 'src')
-rw-r--r-- | src/INSTALLpc.txt | 11 | ||||
-rw-r--r-- | src/Make_mvc.mak | 11 | ||||
-rw-r--r-- | src/libvterm/Makefile.msc | 30 | ||||
-rw-r--r-- | src/version.c | 2 |
4 files changed, 48 insertions, 6 deletions
diff --git a/src/INSTALLpc.txt b/src/INSTALLpc.txt index 562b42ce97..b875b77c9a 100644 --- a/src/INSTALLpc.txt +++ b/src/INSTALLpc.txt @@ -706,17 +706,20 @@ Or when using MinGW (as one line): 13. Building with Terminal support ================================== -Vim with Terminal support can be built with MinGW or Cygwin. -Terminal support require winpty which provide following two files. +Vim with Terminal support can be built with either MSVC, or MinGW or Cygwin. +This uses the included libvterm and winpty. No extra header files or +libraries are needed for building. + +Running Vim with terminal support requires the following two winpty files: winpty.dll winpty-agent.dll -You can download following page: +You can download them from the following page: https://github.com/rprichard/winpty -It don't need header files or libraries. Just put them on your PATH. +Just put the DLL files somewhere in your PATH. 14. Windows 3.1x diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak index 6ad368b39f..99dcb294dc 100644 --- a/src/Make_mvc.mak +++ b/src/Make_mvc.mak @@ -36,6 +36,8 @@ # is yes) # Global IME support: GIME=yes (requires GUI=yes) # +# Terminal support: TERMINAL=yes (default is no) +# # Lua interface: # LUA=[Path to Lua directory] # DYNAMIC_LUA=yes (to load the Lua DLL dynamically) @@ -354,7 +356,8 @@ CSCOPE_DEFS = -DFEAT_CSCOPE !if "$(TERMINAL)" == "yes" TERMINAL_OBJ = $(OBJDIR)/terminal.obj TERMINAL_DEFS = -DFEAT_TERMINAL -TERMINAL_SRC = terminal.c +TERMINAL_SRC = terminal.c +VTERM_LIB = libvterm/vterm.lib !endif !ifndef NETBEANS @@ -1130,7 +1133,7 @@ conflags = $(conflags) /map /mapinfo:lines LINKARGS1 = $(linkdebug) $(conflags) LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(NODEFAULTLIB) $(LIBC) $(OLE_LIB) user32.lib \ $(LUA_LIB) $(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) $(PYTHON3_LIB) $(RUBY_LIB) \ - $(TCL_LIB) $(NETBEANS_LIB) $(XPM_LIB) $(LINK_PDB) + $(TCL_LIB) $(NETBEANS_LIB) $(VTERM_LIB) $(XPM_LIB) $(LINK_PDB) # Report link time code generation progress if used. !ifdef NODEBUG @@ -1544,5 +1547,9 @@ proto.h: \ .c.i: $(CC) $(CFLAGS) /P /C $< +libvterm/vterm.lib : + cd libvterm + $(MAKE) /NOLOGO -f Makefile.msc + cd .. # vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0: diff --git a/src/libvterm/Makefile.msc b/src/libvterm/Makefile.msc new file mode 100644 index 0000000000..18280d256d --- /dev/null +++ b/src/libvterm/Makefile.msc @@ -0,0 +1,30 @@ +OBJS = \ + src\encoding.c \ + src\keyboard.c \ + src\mouse.c \ + src\parser.c \ + src\pen.c \ + src\screen.c \ + src\state.c \ + src\unicode.c \ + src\vterm.c + +OBJS = \ + src\encoding.obj \ + src\keyboard.obj \ + src\mouse.obj \ + src\parser.obj \ + src\pen.obj \ + src\screen.obj \ + src\state.obj \ + src\unicode.obj \ + src\vterm.obj + +all : vterm.lib + + +.c.obj : + cl /DINLINE= /Iinclude /Fo$@ /c $< + +vterm.lib : $(OBJS) + lib /OUT:$@ $(OBJS) diff --git a/src/version.c b/src/version.c index b6885f3702..465252905f 100644 --- a/src/version.c +++ b/src/version.c @@ -770,6 +770,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 756, +/**/ 755, /**/ 754, |