Hi Christian,

On Mon, Jul 15, 2019 at 6:21 AM Christian Brabandt <[email protected]> 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...
>

According to the following Microsoft Nmake documentation pages,
the syntax looks correct to me:

https://docs.microsoft.com/en-us/cpp/build/reference/specifying-an-inline-file?view=vs-2019
https://docs.microsoft.com/en-us/cpp/build/reference/creating-inline-file-text?view=vs-2019

Regards,
Yegappan

>
> 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
>
>
> Best,
> Christian
> --
> Wer für alles offen ist, kann nicht ganz dicht sein.
>
> --
> --
> 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/20190715132132.GM31610%40256bit.org.
> For more options, visit https://groups.google.com/d/optout.

-- 
-- 
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/CAAW7x7nKe7jX3hzXBPQLAjX95Y%2Bn0eJ-3wtJqwjvBNsD040S%3Dg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui