diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-07-15 20:44:57 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-07-15 20:44:57 +0200 |
commit | cea2a15687c54b8a700f77f3deef35269abb1417 (patch) | |
tree | b98507ff1087df40e9d529cddcbcb9996a3c0fba /src | |
parent | f49a6922596ea88856da802fe33df953b7d77ecb (diff) | |
download | vim-git-cea2a15687c54b8a700f77f3deef35269abb1417.tar.gz |
patch 8.1.1696: MSVC: link command line is too longv8.1.1696
Problem: MSVC: link command line is too long.
Solution: Use the @<< mechanism to pass the arguments via a file. (Christian
Brabandt)
Diffstat (limited to 'src')
-rw-r--r-- | src/Make_mvc.mak | 23 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 17 insertions, 8 deletions
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak index 8901a7c31..e30cecc7b 100644 --- a/src/Make_mvc.mak +++ b/src/Make_mvc.mak @@ -1269,6 +1269,9 @@ all: $(MAIN_TARGET) \ tee/tee.exe \ GvimExt/gvimext.dll +# To get around the command line limit: Make use of nmake's response files to +# capture the arguments for $(link) in a file using the @<<ARGS<< syntax. + !if "$(VIMDLL)" == "yes" $(VIMDLLBASE).dll: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) \ @@ -1276,10 +1279,12 @@ $(VIMDLLBASE).dll: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) $(XPM_OBJ) \ version.c version.h $(CC) $(CFLAGS_OUTDIR) version.c - $(link) $(LINKARGS1) /dll -out:$(VIMDLLBASE).dll $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) \ - $(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) \ - $(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) \ - $(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2) + $(link) @<< +$(LINKARGS1) /dll -out:$(VIMDLLBASE).dll $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) \ +$(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) \ +$(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) \ +$(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2) +<< $(GVIM).exe: $(OUTDIR) $(EXEOBJG) $(VIMDLLBASE).dll $(link) $(LINKARGS1) /subsystem:$(SUBSYSTEM) -out:$(GVIM).exe $(EXEOBJG) $(VIMDLLBASE).lib $(LIBC) @@ -1296,10 +1301,12 @@ $(VIM).exe: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) $(OLE $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) $(XPM_OBJ) \ version.c version.h $(CC) $(CFLAGS_OUTDIR) version.c - $(link) $(LINKARGS1) /subsystem:$(SUBSYSTEM) -out:$(VIM).exe $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) \ - $(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) \ - $(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) \ - $(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2) + $(link) @<< +$(LINKARGS1) /subsystem:$(SUBSYSTEM) -out:$(VIM).exe $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) \ +$(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) \ +$(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) \ +$(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2) +<< if exist $(VIM).exe.manifest mt.exe -nologo -manifest $(VIM).exe.manifest -updateresource:$(VIM).exe;1 !endif diff --git a/src/version.c b/src/version.c index a15961531..e5c084ffb 100644 --- a/src/version.c +++ b/src/version.c @@ -778,6 +778,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1696, +/**/ 1695, /**/ 1694, |