Mercurial > vim
changeset 19380:1e78bf92f168 v8.2.0248
patch 8.2.0248: MS-Windows: dealing with deprecation is too complicated
Commit: https://github.com/vim/vim/commit/2f189750887636fecd440d7ef353d9224e48713f
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Feb 12 21:15:43 2020 +0100
patch 8.2.0248: MS-Windows: dealing with deprecation is too complicated
Problem: MS-Windows: dealing with deprecation is too complicated.
Solution: Use io.h directly. Move _CRT_SECURE_NO_DEPRECATE to the build
file. Suppress C4091 warning by setting "_WIN32_WINNT". (Ken
Takata, closes #5626)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 12 Feb 2020 21:30:03 +0100 |
parents | 48ab371a959f |
children | 95be753d41c0 |
files | Filelist src/Make_mvc.mak src/dosinst.h src/version.c src/vim.h src/vimio.h src/winclip.c |
diffstat | 7 files changed, 10 insertions(+), 26 deletions(-) [+] |
line wrap: on
line diff
--- a/Filelist +++ b/Filelist @@ -529,7 +529,6 @@ SRC_DOS = \ src/uninstall.c \ src/vim.def \ src/vim.rc \ - src/vimio.h \ src/gvim.exe.mnf \ src/vimrun.c \ src/xpm_w32.c \
--- a/src/Make_mvc.mak +++ b/src/Make_mvc.mak @@ -658,7 +658,8 @@ OPTFLAG = /Ox OPTFLAG = $(OPTFLAG) /GL ! endif # Visual Studio 2005 has 'deprecated' many of the standard CRT functions -CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE +CFLAGS_DEPR = /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE +CFLAGS = $(CFLAGS) $(CFLAGS_DEPR) ! endif # (/Wp64 is deprecated in VC9 and generates an obnoxious warning.) @@ -1348,15 +1349,17 @@ all: $(MAIN_TARGET) \ $(OUTDIR): if not exist $(OUTDIR)/nul mkdir $(OUTDIR) +CFLAGS_INST = /nologo -DNDEBUG -DWIN32 -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) $(CFLAGS_DEPR) + install.exe: dosinst.c dosinst.h version.h - $(CC) /nologo -DNDEBUG -DWIN32 dosinst.c kernel32.lib shell32.lib \ + $(CC) $(CFLAGS_INST) dosinst.c kernel32.lib shell32.lib \ user32.lib ole32.lib advapi32.lib uuid.lib \ -link -subsystem:$(SUBSYSTEM_TOOLS) - if exist install.exe del install.exe ren dosinst.exe install.exe uninstall.exe: uninstall.c dosinst.h version.h - $(CC) /nologo -DNDEBUG -DWIN32 uninstall.c shell32.lib advapi32.lib \ + $(CC) $(CFLAGS_INST) uninstall.c shell32.lib advapi32.lib \ -link -subsystem:$(SUBSYSTEM_TOOLS) vimrun.exe: vimrun.c
--- a/src/dosinst.h +++ b/src/dosinst.h @@ -10,12 +10,6 @@ * dosinst.h: Common code for dosinst.c and uninstall.c */ -// Visual Studio 2005 has 'deprecated' many of the standard CRT functions -#if _MSC_VER >= 1400 -# define _CRT_SECURE_NO_DEPRECATE -# define _CRT_NONSTDC_NO_DEPRECATE -#endif - #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -23,7 +17,7 @@ #include <fcntl.h> #ifndef UNIX_LINT -# include "vimio.h" +# include <io.h> # include <ctype.h> # include <direct.h>
--- a/src/version.c +++ b/src/version.c @@ -743,6 +743,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 248, +/**/ 247, /**/ 246,
--- a/src/vim.h +++ b/src/vim.h @@ -18,7 +18,7 @@ #endif #ifdef MSWIN -# include "vimio.h" +# include <io.h> #endif // ============ the header file puzzle: order matters =========
deleted file mode 100644 --- a/src/vimio.h +++ /dev/null @@ -1,13 +0,0 @@ -/* vi:set ts=8 sts=4 sw=4 noet: - * - * VIM - Vi IMproved by Bram Moolenaar - * - * Do ":help uganda" in Vim to read copying and usage conditions. - * Do ":help credits" in Vim to see a list of people who contributed. - * See README.txt for an overview of the Vim source code. - */ - -// cproto fails on missing include files -#ifndef PROTO -# include <io.h> -#endif