Hi Christian,

2019/7/15 Mon 22:21:36 UTC+9 Christian Brabandt wrote:
> On Mo, 15 Jul 2019, Bram Moolenaar wrote:
> 
> > 
> > Christian wrote:
> > 
> > > On Mo, 15 Jul 2019, Bram Moolenaar wrote:
> > > 
> > > > You quoted the end of the error message, do you have the whole line?
> > > 
> > > Here we go:
> > > 
> > > link  /nologo /opt:ref /LTCG:STATUS /HIGHENTROPYVA:NO 
> > > /subsystem:windows,5.02 -out:gvim.exe .\ObjGXOULYHTRZAMD64\arabic.obj  
> > > .\ObjGX ... ib xpm\x64\lib-vc14\libXpm.lib /PDB:gvim.pdb -debug | sed -e 
> > > 's#.*\r.*##'
> > > 
> > > NMAKE : fatal error U1095: expanded command line 'link  /nologo /opt:ref 
> > > /LTCG:STATUS /HIGHENTROPYVA:NO /subsystem:windows,5.02 -out:gvim.exe 
> > > .\ObjGXOULYHTRZAMD64\arabic.obj  .\ObjGXO ... b-vc14\libXpm.lib 
> > > /PDB:gvim.pdb -debug | sed -e 's#.*\r.*##'' too long
> > > Stop.
> > > Command exited with code 1
> > > 
> > > > > It looks like a command line length limit applies somewhere. Not sure 
> > > > > how this can be fixed.
> > > > 
> > > > Perhaps the tool can read the list of files from somewhere?
> > > 
> > > Apparently that might be possible: 
> > > https://stackoverflow.com/a/9344985/789222
> > 
> > Can someone make a patch for that?
> 
> I don't have a nmake environment to test, but I suppose the following 
> should work according to the sparse documentation I found online. I am 
> not entirely sure, if the trailing backslashes should be kept or not, 
> but I thought they might not be necessary... 
> 
> Can someone test it?
> 
> diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
> index 8901a7c31..89d5515ae 100644
> --- a/src/Make_mvc.mak
> +++ b/src/Make_mvc.mak
> @@ -1271,15 +1271,19 @@ all:    $(MAIN_TARGET) \
> 
>  !if "$(VIMDLL)" == "yes"
> 
> +# Makes use of nmakes response files to capture the arguments in a file and 
> read it back using the @<<ARGS<< syntax
> +#
>  $(VIMDLLBASE).dll: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) 
> $(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) \
>                 $(LUA_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) 
> $(RUBY_OBJ) $(TCL_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 +1300,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

I confirmed that your patch worked fine.
(I had to apply your patch manually, though.)

Regards,
Ken Takata

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/f9eaffb0-db24-4cd2-b713-e98efa6f8b5d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui