summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-02-12 21:15:43 +0100
committerBram Moolenaar <Bram@vim.org>2020-02-12 21:15:43 +0100
commit2f189750887636fecd440d7ef353d9224e48713f (patch)
tree83c7cad211df84723e00796ee033739fbccd78c1
parent3b0ef8cfdbb6cb5a9cb2dc093132b78d7a52c667 (diff)
downloadvim-git-8.2.0248.tar.gz
patch 8.2.0248: MS-Windows: dealing with deprecation is too complicatedv8.2.0248
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)
-rw-r--r--Filelist1
-rw-r--r--src/Make_mvc.mak9
-rw-r--r--src/dosinst.h8
-rw-r--r--src/version.c2
-rw-r--r--src/vim.h2
-rw-r--r--src/vimio.h13
-rw-r--r--src/winclip.c1
7 files changed, 10 insertions, 26 deletions
diff --git a/Filelist b/Filelist
index 25fefc1d1..91e6b0432 100644
--- 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 \
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
index 509708167..b95e936f0 100644
--- 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 @@ $(VIM): $(VIM).exe
$(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
diff --git a/src/dosinst.h b/src/dosinst.h
index c9d8c929b..a849dad90 100644
--- 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>
diff --git a/src/version.c b/src/version.c
index 1b22d6ffa..ba7961826 100644
--- 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,
diff --git a/src/vim.h b/src/vim.h
index ca0f6b148..62cc46cd0 100644
--- 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 =========
diff --git a/src/vimio.h b/src/vimio.h
deleted file mode 100644
index a07620ca7..000000000
--- 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
diff --git a/src/winclip.c b/src/winclip.c
index d97f776ca..767bf1c71 100644
--- a/src/winclip.c
+++ b/src/winclip.c
@@ -14,7 +14,6 @@
* Also used by Cygwin, using os_unix.c.
*/
-#include "vimio.h"
#include "vim.h"
/*