Oops, the last diff was wrong. Please try this one. TTFN
Mike -- INNEWATOK INquiring NErd WAnts TO Know
*** Make_mvc.mak.orig Wed Apr 26 10:30:22 2006 --- Make_mvc.mak Mon Jan 22 14:07:52 2007 *************** *** 92,97 **** --- 92,99 ---- # Netbeans Debugging Support: NBDEBUG=[yes or no] (should be no, yes # doesn't work) # + # Visual C Version: MSVCVER=m.n (default derived from nmake if undefined) + # # You can combine any of these interfaces # # Example: To build the non-debug, GUI version with Perl interface: *************** *** 320,326 **** --- 322,362 ---- INTDIR=$(OBJDIR) OUTDIR=$(OBJDIR) + # Derive version of VC being used from nmake if not specified + !if "$(MSVCVER)" == "" + !if "$(_NMAKE_VER)" == "" + MSVCVER = "4.0" + !endif + !if "$(_NMAKE_VER)" == "162" + MSVCVER = "5.0" + !endif + !if "$(_NMAKE_VER)" == "6.00.8168.0" + MSVCVER = "6.0" + !endif + !if "$(_NMAKE_VER)" == "7.00.9466" + MSVCVER = "7.0" + !endif + !if "$(_NMAKE_VER)" == "7.10.3077" + MSVCVER = "7.1" + !endif + !if "$(_NMAKE_VER)" == "8.00.50727.42" + MSVCVER = "8.0" + !endif + !endif + + # Abort bulding VIM if version of VC is unrecognised. + !ifndef MSVCVER + !message *** ERROR + !message Cannot determine Visual C version being used. If you are using the + !message Windows SDK then you must have the environment variable MSVCVER set to + !message your version of the VC compiler. If you are not using the Express + !message version of Visual C you van either set MSVCVER or update this makefile + !message to handle the new value for _NMAKE_VER. + !error Make aborted. + !endif + # Convert processor ID to MVC-compatible number + !if $(MSVCVER) != "8.0" !if "$(CPUNR)" == "i386" CPUARG = /G3 !elseif "$(CPUNR)" == "i486" *************** *** 334,339 **** --- 370,381 ---- !else CPUARG = !endif + !else + # VC8 only allows specifying SSE architecture + !if "$(CPUNR)" == "pentium4" + CPUARG = /arch:SSE2 + !endif + !endif !ifdef NODEBUG VIM = vim *************** *** 344,349 **** --- 386,397 ---- !else # MAXSPEED OPTFLAG = /Ox !endif + !if $(MSVCVER) == "8.0" + # Use link time code generation if not worried about size + !if "$(OPTIMIZE)" != "SPACE" + OPTFLAG = $(OPTFLAG) /GL + !endif + !endif CFLAGS = $(CFLAGS) $(OPTFLAG) -DNDEBUG $(CPUARG) RCFLAGS = $(rcflags) $(rcvars) -DNDEBUG ! ifdef USE_MSVCRT *************** *** 363,369 **** CFLAGS = $(CFLAGS) -D_DEBUG -DDEBUG /Od RCFLAGS = $(rcflags) $(rcvars) -D_DEBUG -DDEBUG # The /fixed:no is needed for Quantify. Assume not 4.? as unsupported in VC4.0. ! ! if "$(_NMAKE_VER)" == "" LIBC = ! else LIBC = /fixed:no --- 411,417 ---- CFLAGS = $(CFLAGS) -D_DEBUG -DDEBUG /Od RCFLAGS = $(rcflags) $(rcvars) -D_DEBUG -DDEBUG # The /fixed:no is needed for Quantify. Assume not 4.? as unsupported in VC4.0. ! ! if $(MSVCVER) == "4.0" LIBC = ! else LIBC = /fixed:no *************** *** 707,712 **** --- 755,769 ---- $(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) $(RUBY_LIB) \ $(TCL_LIB) $(NETBEANS_LIB) $(XPM_LIB) $(LINK_PDB) + # Report link time code generation progress if used. + !ifdef NODEBUG + !if $(MSVCVER) == "8.0" + !if "$(OPTIMIZE)" != "SPACE" + LINKARGS1 = $(LINKARGS1) /LTCG:STATUS + !endif + !endif + !endif + all: $(VIM).exe vimrun.exe install.exe uninstal.exe xxd/xxd.exe \ GvimExt/gvimext.dll *************** *** 795,801 **** # Create a default rule for transforming .c files to .obj files in $(OUTDIR) # Batch compilation is supported by nmake 1.62 (part of VS 5.0) and later) ! !IF "$(_NMAKE_VER)" == "" .c{$(OUTDIR)/}.obj: !ELSE .c{$(OUTDIR)/}.obj:: --- 852,858 ---- # Create a default rule for transforming .c files to .obj files in $(OUTDIR) # Batch compilation is supported by nmake 1.62 (part of VS 5.0) and later) ! !IF $(MSVCVER) == "4.0" .c{$(OUTDIR)/}.obj: !ELSE .c{$(OUTDIR)/}.obj:: *************** *** 804,810 **** # Create a default rule for transforming .cpp files to .obj files in $(OUTDIR) # Batch compilation is supported by nmake 1.62 (part of VS 5.0) and later) ! !IF "$(_NMAKE_VER)" == "" .cpp{$(OUTDIR)/}.obj: !ELSE .cpp{$(OUTDIR)/}.obj:: --- 861,867 ---- # Create a default rule for transforming .cpp files to .obj files in $(OUTDIR) # Batch compilation is supported by nmake 1.62 (part of VS 5.0) and later) ! !IF $(MSVCVER) == "4.0" .cpp{$(OUTDIR)/}.obj: !ELSE .cpp{$(OUTDIR)/}.obj::