forked from aniani/vim
		
	patch 8.1.1696: MSVC: link command line is too long
Problem:    MSVC: link command line is too long.
Solution:   Use the @<< mechanism to pass the arguments via a file. (Christian
            Brabandt)
			
			
This commit is contained in:
		| @@ -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 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user