Mercurial > vim
comparison src/Make_mvc.mak @ 6797:56a735cff1a0 v7.4.720
patch 7.4.720
Problem: Can't build with Visual Studio 2015.
Solution: Recognize the "version 14" numbers and omit /nodefaultlib when
appropriate. (Paul Moore)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Mon, 04 May 2015 16:18:42 +0200 |
parents | 112c80234ce3 |
children | ea0468670fbe |
comparison
equal
deleted
inserted
replaced
6796:24d91496a2b2 | 6797:56a735cff1a0 |
---|---|
341 # need advapi32.lib for GetUserName() | 341 # need advapi32.lib for GetUserName() |
342 # need shell32.lib for ExtractIcon() | 342 # need shell32.lib for ExtractIcon() |
343 # gdi32.lib and comdlg32.lib for printing support | 343 # gdi32.lib and comdlg32.lib for printing support |
344 # ole32.lib and uuid.lib are needed for FEAT_SHORTCUT | 344 # ole32.lib and uuid.lib are needed for FEAT_SHORTCUT |
345 CON_LIB = oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib \ | 345 CON_LIB = oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib \ |
346 comdlg32.lib ole32.lib uuid.lib /machine:$(CPU) /nodefaultlib | 346 comdlg32.lib ole32.lib uuid.lib /machine:$(CPU) |
347 !if "$(DELAYLOAD)" == "yes" | 347 !if "$(DELAYLOAD)" == "yes" |
348 CON_LIB = $(CON_LIB) /DELAYLOAD:comdlg32.dll /DELAYLOAD:ole32.dll DelayImp.lib | 348 CON_LIB = $(CON_LIB) /DELAYLOAD:comdlg32.dll /DELAYLOAD:ole32.dll DelayImp.lib |
349 !endif | 349 !endif |
350 | 350 |
351 ### Set the default $(WINVER) to make it work with VC++7.0 (VS.NET) | 351 ### Set the default $(WINVER) to make it work with VC++7.0 (VS.NET) |
443 !if "$(_NMAKE_VER)" == "11.00.61030.0" | 443 !if "$(_NMAKE_VER)" == "11.00.61030.0" |
444 MSVCVER = 11.0 | 444 MSVCVER = 11.0 |
445 !endif | 445 !endif |
446 !if "$(_NMAKE_VER)" == "12.00.21005.1" | 446 !if "$(_NMAKE_VER)" == "12.00.21005.1" |
447 MSVCVER = 12.0 | 447 MSVCVER = 12.0 |
448 !endif | |
449 !if "$(_NMAKE_VER)" == "14.00.22609.0" | |
450 MSVCVER = 14.0 | |
448 !endif | 451 !endif |
449 !endif | 452 !endif |
450 | 453 |
451 # Abort building VIM if version of VC is unrecognised. | 454 # Abort building VIM if version of VC is unrecognised. |
452 !ifndef MSVCVER | 455 !ifndef MSVCVER |
458 !message to handle the new value for _NMAKE_VER, "$(_NMAKE_VER)". | 461 !message to handle the new value for _NMAKE_VER, "$(_NMAKE_VER)". |
459 !error Make aborted. | 462 !error Make aborted. |
460 !endif | 463 !endif |
461 | 464 |
462 # Convert processor ID to MVC-compatible number | 465 # Convert processor ID to MVC-compatible number |
463 !if ("$(MSVCVER)" != "8.0") && ("$(MSVCVER)" != "9.0") && ("$(MSVCVER)" != "10.0") && ("$(MSVCVER)" != "11.0") && ("$(MSVCVER)" != "12.0") | 466 !if ("$(MSVCVER)" != "8.0") && ("$(MSVCVER)" != "9.0") && ("$(MSVCVER)" != "10.0") && ("$(MSVCVER)" != "11.0") && ("$(MSVCVER)" != "12.0") && ("$(MSVCVER)" != "14.0") |
464 !if "$(CPUNR)" == "i386" | 467 !if "$(CPUNR)" == "i386" |
465 CPUARG = /G3 | 468 CPUARG = /G3 |
466 !elseif "$(CPUNR)" == "i486" | 469 !elseif "$(CPUNR)" == "i486" |
467 CPUARG = /G4 | 470 CPUARG = /G4 |
468 !elseif "$(CPUNR)" == "i586" | 471 !elseif "$(CPUNR)" == "i586" |
481 !endif | 484 !endif |
482 !endif | 485 !endif |
483 | 486 |
484 LIBC = | 487 LIBC = |
485 DEBUGINFO = /Zi | 488 DEBUGINFO = /Zi |
489 | |
490 # Don't use /nodefaultlib on MSVC 14 | |
491 !if "$(MSVCVER)" == "14.0" | |
492 NODEFAULTLIB = | |
493 !else | |
494 NODEFAULTLIB = /nodefaultlib | |
495 !endif | |
486 | 496 |
487 !ifdef NODEBUG | 497 !ifdef NODEBUG |
488 VIM = vim | 498 VIM = vim |
489 !if "$(OPTIMIZE)" == "SPACE" | 499 !if "$(OPTIMIZE)" == "SPACE" |
490 OPTFLAG = /O1 | 500 OPTFLAG = /O1 |
653 $(OUTDIR)\gui_w32.obj \ | 663 $(OUTDIR)\gui_w32.obj \ |
654 $(OUTDIR)\os_w32exe.obj | 664 $(OUTDIR)\os_w32exe.obj |
655 GUI_LIB = \ | 665 GUI_LIB = \ |
656 gdi32.lib version.lib $(IME_LIB) \ | 666 gdi32.lib version.lib $(IME_LIB) \ |
657 winspool.lib comctl32.lib advapi32.lib shell32.lib \ | 667 winspool.lib comctl32.lib advapi32.lib shell32.lib \ |
658 /machine:$(CPU) /nodefaultlib | 668 /machine:$(CPU) |
659 !else | 669 !else |
660 SUBSYSTEM = console | 670 SUBSYSTEM = console |
661 !endif | 671 !endif |
662 | 672 |
663 !if "$(SUBSYSTEM_VER)" != "" | 673 !if "$(SUBSYSTEM_VER)" != "" |
974 # "/mapinfo:lines" is for debugging, only works for VC6 and later | 984 # "/mapinfo:lines" is for debugging, only works for VC6 and later |
975 conflags = $(conflags) /map /mapinfo:lines | 985 conflags = $(conflags) /map /mapinfo:lines |
976 !ENDIF | 986 !ENDIF |
977 | 987 |
978 LINKARGS1 = $(linkdebug) $(conflags) | 988 LINKARGS1 = $(linkdebug) $(conflags) |
979 LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(LIBC) $(OLE_LIB) user32.lib $(SNIFF_LIB) \ | 989 LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(NODEFAULTLIB) $(LIBC) $(OLE_LIB) user32.lib $(SNIFF_LIB) \ |
980 $(LUA_LIB) $(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) $(PYTHON3_LIB) $(RUBY_LIB) \ | 990 $(LUA_LIB) $(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) $(PYTHON3_LIB) $(RUBY_LIB) \ |
981 $(TCL_LIB) $(NETBEANS_LIB) $(XPM_LIB) $(LINK_PDB) | 991 $(TCL_LIB) $(NETBEANS_LIB) $(XPM_LIB) $(LINK_PDB) |
982 | 992 |
983 # Report link time code generation progress if used. | 993 # Report link time code generation progress if used. |
984 !ifdef NODEBUG | 994 !ifdef NODEBUG |