Make __mingw_get_msvcrt_handle inline.

git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/trunk@5912 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am
index cd34ae5..d9cd436 100644
--- a/mingw-w64-crt/Makefile.am
+++ b/mingw-w64-crt/Makefile.am
@@ -118,7 +118,6 @@
   libsrc/wspiapi/WspiapiFreeAddrInfo.c
 
 src_msvcrt=\
-  crt/msvcrt.c \
   misc/invalid_parameter_handler.c \
   misc/lc_locale_func.c \
   misc/output_format.c \
@@ -346,7 +345,7 @@
 lib32_LIBRARIES += lib32/libmsvcrt.a
 lib32_libmsvcrt_a_SOURCES = $(src_msvcrt) lib32/msvcrt.def.in
 lib32_libmsvcrt_a_AR = $(DTDEF32) lib32/msvcrt.def && $(AR) $(ARFLAGS)
-lib32_libmsvcrt_a_CPPFLAGS=$(CPPFLAGS32) $(sysincludes)
+lib32_libmsvcrt_a_CPPFLAGS=$(CPPFLAGS32) -D__LIBMSVCRT__ $(extra_include) $(sysincludes)
 EXTRA_lib32_libmsvcrt_a_DEPENDENCIES=lib32/msvcrt.def
 
 lib32_LIBRARIES += lib32/libshell32.a
@@ -673,7 +672,7 @@
 lib64_LIBRARIES += lib64/libmsvcrt.a
 lib64_libmsvcrt_a_SOURCES = $(src_msvcrt) lib64/msvcrt.def.in
 lib64_libmsvcrt_a_AR = $(DTDEF64) lib64/msvcrt.def && $(AR) $(ARFLAGS)
-lib64_libmsvcrt_a_CPPFLAGS=$(CPPFLAGS64) $(sysincludes)
+lib64_libmsvcrt_a_CPPFLAGS=$(CPPFLAGS64) -D__LIBMSVCRT__ $(extra_include) $(sysincludes)
 EXTRA_lib64_libmsvcrt_a_DEPENDENCIES=lib64/msvcrt.def
 
 lib64_LIBRARIES += lib64/libshell32.a
diff --git a/mingw-w64-crt/Makefile.in b/mingw-w64-crt/Makefile.in
index 243c487..038e0c5 100644
--- a/mingw-w64-crt/Makefile.in
+++ b/mingw-w64-crt/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.12.5 from Makefile.am.
+# Makefile.in generated by automake 1.12.6 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2012 Free Software Foundation, Inc.
@@ -1033,23 +1033,22 @@
 am_lib32_libmoldname_a_OBJECTS =
 lib32_libmoldname_a_OBJECTS = $(am_lib32_libmoldname_a_OBJECTS)
 lib32_libmsvcrt_a_LIBADD =
-am__lib32_libmsvcrt_a_SOURCES_DIST = crt/msvcrt.c \
-	misc/invalid_parameter_handler.c misc/lc_locale_func.c \
-	misc/output_format.c secapi/_access_s.c secapi/_cgets_s.c \
-	secapi/_cgetws_s.c secapi/_chsize_s.c secapi/_cprintf_s.c \
-	secapi/_cprintf_s_l.c secapi/_ctime32_s.c secapi/_ctime64_s.c \
-	secapi/_cwprintf_s.c secapi/_cwprintf_s_l.c \
-	secapi/_gmtime32_s.c secapi/_gmtime64_s.c \
-	secapi/_localtime32_s.c secapi/_localtime64_s.c \
-	secapi/_mktemp_s.c secapi/_strdate_s.c secapi/_strtime_s.c \
-	secapi/_umask_s.c secapi/_vcprintf_s.c secapi/_vcprintf_s_l.c \
-	secapi/_vcwprintf_s.c secapi/_vcwprintf_s_l.c \
-	secapi/_waccess_s.c secapi/_wasctime_s.c secapi/_wctime32_s.c \
-	secapi/_wctime64_s.c secapi/_wstrtime_s.c secapi/_wmktemp_s.c \
-	secapi/_wstrdate_s.c secapi/asctime_s.c secapi/memcpy_s.c \
-	secapi/rand_s.c secapi/vsprintf_s.c secapi/wmemcpy_s.c \
-	lib32/msvcrt.def.in
-am__objects_18 = crt/lib32_libmsvcrt_a-msvcrt.$(OBJEXT) \
+am__lib32_libmsvcrt_a_SOURCES_DIST = misc/invalid_parameter_handler.c \
+	misc/lc_locale_func.c misc/output_format.c secapi/_access_s.c \
+	secapi/_cgets_s.c secapi/_cgetws_s.c secapi/_chsize_s.c \
+	secapi/_cprintf_s.c secapi/_cprintf_s_l.c secapi/_ctime32_s.c \
+	secapi/_ctime64_s.c secapi/_cwprintf_s.c \
+	secapi/_cwprintf_s_l.c secapi/_gmtime32_s.c \
+	secapi/_gmtime64_s.c secapi/_localtime32_s.c \
+	secapi/_localtime64_s.c secapi/_mktemp_s.c secapi/_strdate_s.c \
+	secapi/_strtime_s.c secapi/_umask_s.c secapi/_vcprintf_s.c \
+	secapi/_vcprintf_s_l.c secapi/_vcwprintf_s.c \
+	secapi/_vcwprintf_s_l.c secapi/_waccess_s.c \
+	secapi/_wasctime_s.c secapi/_wctime32_s.c secapi/_wctime64_s.c \
+	secapi/_wstrtime_s.c secapi/_wmktemp_s.c secapi/_wstrdate_s.c \
+	secapi/asctime_s.c secapi/memcpy_s.c secapi/rand_s.c \
+	secapi/vsprintf_s.c secapi/wmemcpy_s.c lib32/msvcrt.def.in
+am__objects_18 =  \
 	misc/lib32_libmsvcrt_a-invalid_parameter_handler.$(OBJEXT) \
 	misc/lib32_libmsvcrt_a-lc_locale_func.$(OBJEXT) \
 	misc/lib32_libmsvcrt_a-output_format.$(OBJEXT) \
@@ -2134,23 +2133,22 @@
 am_lib64_libmoldname_a_OBJECTS =
 lib64_libmoldname_a_OBJECTS = $(am_lib64_libmoldname_a_OBJECTS)
 lib64_libmsvcrt_a_LIBADD =
-am__lib64_libmsvcrt_a_SOURCES_DIST = crt/msvcrt.c \
-	misc/invalid_parameter_handler.c misc/lc_locale_func.c \
-	misc/output_format.c secapi/_access_s.c secapi/_cgets_s.c \
-	secapi/_cgetws_s.c secapi/_chsize_s.c secapi/_cprintf_s.c \
-	secapi/_cprintf_s_l.c secapi/_ctime32_s.c secapi/_ctime64_s.c \
-	secapi/_cwprintf_s.c secapi/_cwprintf_s_l.c \
-	secapi/_gmtime32_s.c secapi/_gmtime64_s.c \
-	secapi/_localtime32_s.c secapi/_localtime64_s.c \
-	secapi/_mktemp_s.c secapi/_strdate_s.c secapi/_strtime_s.c \
-	secapi/_umask_s.c secapi/_vcprintf_s.c secapi/_vcprintf_s_l.c \
-	secapi/_vcwprintf_s.c secapi/_vcwprintf_s_l.c \
-	secapi/_waccess_s.c secapi/_wasctime_s.c secapi/_wctime32_s.c \
-	secapi/_wctime64_s.c secapi/_wstrtime_s.c secapi/_wmktemp_s.c \
-	secapi/_wstrdate_s.c secapi/asctime_s.c secapi/memcpy_s.c \
-	secapi/rand_s.c secapi/vsprintf_s.c secapi/wmemcpy_s.c \
-	lib64/msvcrt.def.in
-am__objects_47 = crt/lib64_libmsvcrt_a-msvcrt.$(OBJEXT) \
+am__lib64_libmsvcrt_a_SOURCES_DIST = misc/invalid_parameter_handler.c \
+	misc/lc_locale_func.c misc/output_format.c secapi/_access_s.c \
+	secapi/_cgets_s.c secapi/_cgetws_s.c secapi/_chsize_s.c \
+	secapi/_cprintf_s.c secapi/_cprintf_s_l.c secapi/_ctime32_s.c \
+	secapi/_ctime64_s.c secapi/_cwprintf_s.c \
+	secapi/_cwprintf_s_l.c secapi/_gmtime32_s.c \
+	secapi/_gmtime64_s.c secapi/_localtime32_s.c \
+	secapi/_localtime64_s.c secapi/_mktemp_s.c secapi/_strdate_s.c \
+	secapi/_strtime_s.c secapi/_umask_s.c secapi/_vcprintf_s.c \
+	secapi/_vcprintf_s_l.c secapi/_vcwprintf_s.c \
+	secapi/_vcwprintf_s_l.c secapi/_waccess_s.c \
+	secapi/_wasctime_s.c secapi/_wctime32_s.c secapi/_wctime64_s.c \
+	secapi/_wstrtime_s.c secapi/_wmktemp_s.c secapi/_wstrdate_s.c \
+	secapi/asctime_s.c secapi/memcpy_s.c secapi/rand_s.c \
+	secapi/vsprintf_s.c secapi/wmemcpy_s.c lib64/msvcrt.def.in
+am__objects_47 =  \
 	misc/lib64_libmsvcrt_a-invalid_parameter_handler.$(OBJEXT) \
 	misc/lib64_libmsvcrt_a-lc_locale_func.$(OBJEXT) \
 	misc/lib64_libmsvcrt_a-output_format.$(OBJEXT) \
@@ -3529,7 +3527,6 @@
   libsrc/wspiapi/WspiapiFreeAddrInfo.c
 
 src_msvcrt = \
-  crt/msvcrt.c \
   misc/invalid_parameter_handler.c \
   misc/lc_locale_func.c \
   misc/output_format.c \
@@ -3740,7 +3737,7 @@
 @LIB32_TRUE@lib32_libkernel32_a_CPPFLAGS = $(CPPFLAGS32) $(extra_include) $(AM_CPPFLAGS)
 @LIB32_TRUE@lib32_libmsvcrt_a_SOURCES = $(src_msvcrt) lib32/msvcrt.def.in
 @LIB32_TRUE@lib32_libmsvcrt_a_AR = $(DTDEF32) lib32/msvcrt.def && $(AR) $(ARFLAGS)
-@LIB32_TRUE@lib32_libmsvcrt_a_CPPFLAGS = $(CPPFLAGS32) $(sysincludes)
+@LIB32_TRUE@lib32_libmsvcrt_a_CPPFLAGS = $(CPPFLAGS32) -D__LIBMSVCRT__ $(extra_include) $(sysincludes)
 @LIB32_TRUE@EXTRA_lib32_libmsvcrt_a_DEPENDENCIES = lib32/msvcrt.def
 @LIB32_TRUE@lib32_libshell32_a_SOURCES = $(src_libshell32)
 @LIB32_TRUE@lib32_libshell32_a_AR = $(DTLIB32) && $(AR) $(ARFLAGS)
@@ -4008,7 +4005,7 @@
 @LIB64_TRUE@lib64_libkernel32_a_AR = $(DTLIB64) && $(AR) $(ARFLAGS)
 @LIB64_TRUE@lib64_libmsvcrt_a_SOURCES = $(src_msvcrt) lib64/msvcrt.def.in
 @LIB64_TRUE@lib64_libmsvcrt_a_AR = $(DTDEF64) lib64/msvcrt.def && $(AR) $(ARFLAGS)
-@LIB64_TRUE@lib64_libmsvcrt_a_CPPFLAGS = $(CPPFLAGS64) $(sysincludes)
+@LIB64_TRUE@lib64_libmsvcrt_a_CPPFLAGS = $(CPPFLAGS64) -D__LIBMSVCRT__ $(extra_include) $(sysincludes)
 @LIB64_TRUE@EXTRA_lib64_libmsvcrt_a_DEPENDENCIES = lib64/msvcrt.def
 @LIB64_TRUE@lib64_libshell32_a_SOURCES = $(src_libshell32)
 @LIB64_TRUE@lib64_libshell32_a_CPPFLAGS = $(CPPFLAGS64) $(sysincludes)
@@ -6048,8 +6045,6 @@
 	-rm -f lib32/libmoldname.a
 	$(lib32_libmoldname_a_AR) lib32/libmoldname.a $(lib32_libmoldname_a_OBJECTS) $(lib32_libmoldname_a_LIBADD)
 	$(RANLIB) lib32/libmoldname.a
-crt/lib32_libmsvcrt_a-msvcrt.$(OBJEXT): crt/$(am__dirstamp) \
-	crt/$(DEPDIR)/$(am__dirstamp)
 misc/lib32_libmsvcrt_a-invalid_parameter_handler.$(OBJEXT):  \
 	misc/$(am__dirstamp) misc/$(DEPDIR)/$(am__dirstamp)
 misc/lib32_libmsvcrt_a-lc_locale_func.$(OBJEXT): misc/$(am__dirstamp) \
@@ -7603,8 +7598,6 @@
 	-rm -f lib64/libmoldname.a
 	$(lib64_libmoldname_a_AR) lib64/libmoldname.a $(lib64_libmoldname_a_OBJECTS) $(lib64_libmoldname_a_LIBADD)
 	$(RANLIB) lib64/libmoldname.a
-crt/lib64_libmsvcrt_a-msvcrt.$(OBJEXT): crt/$(am__dirstamp) \
-	crt/$(DEPDIR)/$(am__dirstamp)
 misc/lib64_libmsvcrt_a-invalid_parameter_handler.$(OBJEXT):  \
 	misc/$(am__dirstamp) misc/$(DEPDIR)/$(am__dirstamp)
 misc/lib64_libmsvcrt_a-lc_locale_func.$(OBJEXT): misc/$(am__dirstamp) \
@@ -8917,7 +8910,6 @@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib32_libmingw32_a-xtxtmode.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib32_libmingwex_a-dllentry.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib32_libmingwex_a-dllmain.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib32_libmsvcrt_a-msvcrt.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib64_libmingw32_a-CRT_fp10.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib64_libmingw32_a-_newmode.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib64_libmingw32_a-atonexit.Po@am__quote@
@@ -8949,7 +8941,6 @@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib64_libmingw32_a-xtxtmode.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib64_libmingwex_a-dllentry.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib64_libmingwex_a-dllmain.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@crt/$(DEPDIR)/lib64_libmsvcrt_a-msvcrt.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gdtoa/$(DEPDIR)/lib32_libmingwex_a-arithchk.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gdtoa/$(DEPDIR)/lib32_libmingwex_a-dmisc.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gdtoa/$(DEPDIR)/lib32_libmingwex_a-dtoa.Po@am__quote@
@@ -18697,20 +18688,6 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib32_libmingwthrd_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libsrc/lib32_libmingwthrd_a-mingwthrd_mt.obj `if test -f 'libsrc/mingwthrd_mt.c'; then $(CYGPATH_W) 'libsrc/mingwthrd_mt.c'; else $(CYGPATH_W) '$(srcdir)/libsrc/mingwthrd_mt.c'; fi`
 
-crt/lib32_libmsvcrt_a-msvcrt.o: crt/msvcrt.c
-@am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib32_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crt/lib32_libmsvcrt_a-msvcrt.o -MD -MP -MF crt/$(DEPDIR)/lib32_libmsvcrt_a-msvcrt.Tpo -c -o crt/lib32_libmsvcrt_a-msvcrt.o `test -f 'crt/msvcrt.c' || echo '$(srcdir)/'`crt/msvcrt.c
-@am__fastdepCC_TRUE@	$(am__mv) crt/$(DEPDIR)/lib32_libmsvcrt_a-msvcrt.Tpo crt/$(DEPDIR)/lib32_libmsvcrt_a-msvcrt.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='crt/msvcrt.c' object='crt/lib32_libmsvcrt_a-msvcrt.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib32_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crt/lib32_libmsvcrt_a-msvcrt.o `test -f 'crt/msvcrt.c' || echo '$(srcdir)/'`crt/msvcrt.c
-
-crt/lib32_libmsvcrt_a-msvcrt.obj: crt/msvcrt.c
-@am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib32_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crt/lib32_libmsvcrt_a-msvcrt.obj -MD -MP -MF crt/$(DEPDIR)/lib32_libmsvcrt_a-msvcrt.Tpo -c -o crt/lib32_libmsvcrt_a-msvcrt.obj `if test -f 'crt/msvcrt.c'; then $(CYGPATH_W) 'crt/msvcrt.c'; else $(CYGPATH_W) '$(srcdir)/crt/msvcrt.c'; fi`
-@am__fastdepCC_TRUE@	$(am__mv) crt/$(DEPDIR)/lib32_libmsvcrt_a-msvcrt.Tpo crt/$(DEPDIR)/lib32_libmsvcrt_a-msvcrt.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='crt/msvcrt.c' object='crt/lib32_libmsvcrt_a-msvcrt.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib32_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crt/lib32_libmsvcrt_a-msvcrt.obj `if test -f 'crt/msvcrt.c'; then $(CYGPATH_W) 'crt/msvcrt.c'; else $(CYGPATH_W) '$(srcdir)/crt/msvcrt.c'; fi`
-
 misc/lib32_libmsvcrt_a-invalid_parameter_handler.o: misc/invalid_parameter_handler.c
 @am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib32_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT misc/lib32_libmsvcrt_a-invalid_parameter_handler.o -MD -MP -MF misc/$(DEPDIR)/lib32_libmsvcrt_a-invalid_parameter_handler.Tpo -c -o misc/lib32_libmsvcrt_a-invalid_parameter_handler.o `test -f 'misc/invalid_parameter_handler.c' || echo '$(srcdir)/'`misc/invalid_parameter_handler.c
 @am__fastdepCC_TRUE@	$(am__mv) misc/$(DEPDIR)/lib32_libmsvcrt_a-invalid_parameter_handler.Tpo misc/$(DEPDIR)/lib32_libmsvcrt_a-invalid_parameter_handler.Po
@@ -27643,20 +27620,6 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib64_libmingwthrd_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libsrc/lib64_libmingwthrd_a-mingwthrd_mt.obj `if test -f 'libsrc/mingwthrd_mt.c'; then $(CYGPATH_W) 'libsrc/mingwthrd_mt.c'; else $(CYGPATH_W) '$(srcdir)/libsrc/mingwthrd_mt.c'; fi`
 
-crt/lib64_libmsvcrt_a-msvcrt.o: crt/msvcrt.c
-@am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib64_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crt/lib64_libmsvcrt_a-msvcrt.o -MD -MP -MF crt/$(DEPDIR)/lib64_libmsvcrt_a-msvcrt.Tpo -c -o crt/lib64_libmsvcrt_a-msvcrt.o `test -f 'crt/msvcrt.c' || echo '$(srcdir)/'`crt/msvcrt.c
-@am__fastdepCC_TRUE@	$(am__mv) crt/$(DEPDIR)/lib64_libmsvcrt_a-msvcrt.Tpo crt/$(DEPDIR)/lib64_libmsvcrt_a-msvcrt.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='crt/msvcrt.c' object='crt/lib64_libmsvcrt_a-msvcrt.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib64_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crt/lib64_libmsvcrt_a-msvcrt.o `test -f 'crt/msvcrt.c' || echo '$(srcdir)/'`crt/msvcrt.c
-
-crt/lib64_libmsvcrt_a-msvcrt.obj: crt/msvcrt.c
-@am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib64_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crt/lib64_libmsvcrt_a-msvcrt.obj -MD -MP -MF crt/$(DEPDIR)/lib64_libmsvcrt_a-msvcrt.Tpo -c -o crt/lib64_libmsvcrt_a-msvcrt.obj `if test -f 'crt/msvcrt.c'; then $(CYGPATH_W) 'crt/msvcrt.c'; else $(CYGPATH_W) '$(srcdir)/crt/msvcrt.c'; fi`
-@am__fastdepCC_TRUE@	$(am__mv) crt/$(DEPDIR)/lib64_libmsvcrt_a-msvcrt.Tpo crt/$(DEPDIR)/lib64_libmsvcrt_a-msvcrt.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='crt/msvcrt.c' object='crt/lib64_libmsvcrt_a-msvcrt.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib64_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crt/lib64_libmsvcrt_a-msvcrt.obj `if test -f 'crt/msvcrt.c'; then $(CYGPATH_W) 'crt/msvcrt.c'; else $(CYGPATH_W) '$(srcdir)/crt/msvcrt.c'; fi`
-
 misc/lib64_libmsvcrt_a-invalid_parameter_handler.o: misc/invalid_parameter_handler.c
 @am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib64_libmsvcrt_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT misc/lib64_libmsvcrt_a-invalid_parameter_handler.o -MD -MP -MF misc/$(DEPDIR)/lib64_libmsvcrt_a-invalid_parameter_handler.Tpo -c -o misc/lib64_libmsvcrt_a-invalid_parameter_handler.o `test -f 'misc/invalid_parameter_handler.c' || echo '$(srcdir)/'`misc/invalid_parameter_handler.c
 @am__fastdepCC_TRUE@	$(am__mv) misc/$(DEPDIR)/lib64_libmsvcrt_a-invalid_parameter_handler.Tpo misc/$(DEPDIR)/lib64_libmsvcrt_a-invalid_parameter_handler.Po
diff --git a/mingw-w64-crt/aclocal.m4 b/mingw-w64-crt/aclocal.m4
index 7de969f..eca98c9 100644
--- a/mingw-w64-crt/aclocal.m4
+++ b/mingw-w64-crt/aclocal.m4
@@ -1,4 +1,4 @@
-# generated automatically by aclocal 1.12.5 -*- Autoconf -*-
+# generated automatically by aclocal 1.12.6 -*- Autoconf -*-
 
 # Copyright (C) 1996-2012 Free Software Foundation, Inc.
 
@@ -34,7 +34,7 @@
 [am__api_version='1.12'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.12.5], [],
+m4_if([$1], [1.12.6], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -50,7 +50,7 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.12.5])dnl
+[AM_AUTOMAKE_VERSION([1.12.6])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
diff --git a/mingw-w64-crt/crt/msvcrt.c b/mingw-w64-crt/crt/msvcrt.c
deleted file mode 100644
index a27e3c1..0000000
--- a/mingw-w64-crt/crt/msvcrt.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <windows.h>
-
-HMODULE __mingw_get_msvcrt_handle(void);
-HMODULE __mingw_get_msvcrt_handle(void)
-{
-    static HANDLE msvcrt_handle;
-
-    if(!msvcrt_handle)
-        msvcrt_handle = LoadLibraryW(L"msvcrt.dll");
-
-    return msvcrt_handle;
-}
diff --git a/mingw-w64-crt/include/msvcrt.h b/mingw-w64-crt/include/msvcrt.h
new file mode 100644
index 0000000..d534625
--- /dev/null
+++ b/mingw-w64-crt/include/msvcrt.h
@@ -0,0 +1,10 @@
+#include <winbase.h>
+
+#ifndef __LIBMSVCRT__
+#error "This file should only be used in libmsvcrt.a"
+#endif
+
+static inline HANDLE __mingw_get_msvcrt_handle(void)
+{
+    return GetModuleHandleW(L"msvcrt.dll");
+}
diff --git a/mingw-w64-crt/misc/lc_locale_func.c b/mingw-w64-crt/misc/lc_locale_func.c
index 3bf1543..4e0fd02 100644
--- a/mingw-w64-crt/misc/lc_locale_func.c
+++ b/mingw-w64-crt/misc/lc_locale_func.c
@@ -1,11 +1,10 @@
 #define __lc_codepage __dummy_lc_codepage
 #include <windows.h>
 #include <locale.h>
+#include <msvcrt.h>
 
 #include "mb_wc_common.h"
 
-HANDLE __mingw_get_msvcrt_handle(void);
-
 static unsigned int *msvcrt__lc_codepage;
 static unsigned int __cdecl msvcrt__lc_codepage_func(void)
 {
diff --git a/mingw-w64-crt/misc/output_format.c b/mingw-w64-crt/misc/output_format.c
index fde918d..feaa9a9 100644
--- a/mingw-w64-crt/misc/output_format.c
+++ b/mingw-w64-crt/misc/output_format.c
@@ -1,7 +1,6 @@
 #include <windows.h>
 #include <stdio.h>
-
-HANDLE __mingw_get_msvcrt_handle(void);
+#include <msvcrt.h>
 
 static unsigned int last_value = 0;
 typedef unsigned int (*f_get_output_format)(void);
diff --git a/mingw-w64-crt/secapi/_access_s.c b/mingw-w64-crt/secapi/_access_s.c
index 69650df..e5fea3b 100644
--- a/mingw-w64-crt/secapi/_access_s.c
+++ b/mingw-w64-crt/secapi/_access_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 int __cdecl _access (const char *, int);
 errno_t __cdecl _access_s (const char *, int);
 static errno_t __cdecl _int_access_s (const char *, int);
diff --git a/mingw-w64-crt/secapi/_cgets_s.c b/mingw-w64-crt/secapi/_cgets_s.c
index f4e13a3..a5023de 100644
--- a/mingw-w64-crt/secapi/_cgets_s.c
+++ b/mingw-w64-crt/secapi/_cgets_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 char * __cdecl _cgets (char *);
 errno_t __cdecl _cgets_s (char *, size_t, size_t *);
 static errno_t __cdecl _int_cgets_s (char *, size_t, size_t *);
diff --git a/mingw-w64-crt/secapi/_cgetws_s.c b/mingw-w64-crt/secapi/_cgetws_s.c
index a889b8b..9380ec3 100644
--- a/mingw-w64-crt/secapi/_cgetws_s.c
+++ b/mingw-w64-crt/secapi/_cgetws_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 wchar_t * __cdecl _cgetws (wchar_t *);
 errno_t __cdecl _cgetws_s (wchar_t *, size_t, size_t *);
 static errno_t __cdecl _int_cgetws_s (wchar_t *, size_t, size_t *);
diff --git a/mingw-w64-crt/secapi/_chsize_s.c b/mingw-w64-crt/secapi/_chsize_s.c
index de6aac3..3993199 100644
--- a/mingw-w64-crt/secapi/_chsize_s.c
+++ b/mingw-w64-crt/secapi/_chsize_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 int __cdecl _chsize (int, long);
 errno_t __cdecl _chsize_s (int, long long);
 static errno_t __cdecl _int_chsize_s (int, long long);
diff --git a/mingw-w64-crt/secapi/_cprintf_s.c b/mingw-w64-crt/secapi/_cprintf_s.c
index c2b6a44..8101bc1 100644
--- a/mingw-w64-crt/secapi/_cprintf_s.c
+++ b/mingw-w64-crt/secapi/_cprintf_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _cprintf_s (const char *,...);
 int __cdecl _vcprintf_s (const char *,va_list);
 
diff --git a/mingw-w64-crt/secapi/_cprintf_s_l.c b/mingw-w64-crt/secapi/_cprintf_s_l.c
index 018eaba..97fd4fb 100644
--- a/mingw-w64-crt/secapi/_cprintf_s_l.c
+++ b/mingw-w64-crt/secapi/_cprintf_s_l.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _cprintf_s_l (const char *, _locale_t, ...);
 int __cdecl _vcprintf_s_l(const char *,_locale_t,va_list);
 
diff --git a/mingw-w64-crt/secapi/_ctime32_s.c b/mingw-w64-crt/secapi/_ctime32_s.c
index 3b419ec..9c54914 100644
--- a/mingw-w64-crt/secapi/_ctime32_s.c
+++ b/mingw-w64-crt/secapi/_ctime32_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _localtime32_s (struct tm *, const __time32_t *);
 errno_t __cdecl asctime_s (char *, size_t, const struct tm *);
 errno_t __cdecl _ctime32_s (char *, size_t, const __time32_t *);
diff --git a/mingw-w64-crt/secapi/_ctime64_s.c b/mingw-w64-crt/secapi/_ctime64_s.c
index 0dadd96..d8722df 100644
--- a/mingw-w64-crt/secapi/_ctime64_s.c
+++ b/mingw-w64-crt/secapi/_ctime64_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _localtime64_s (struct tm *, const __time64_t *);
 errno_t __cdecl asctime_s (char *, size_t, const struct tm *);
 errno_t __cdecl _ctime64_s (char *, size_t, const __time64_t *);
diff --git a/mingw-w64-crt/secapi/_cwprintf_s.c b/mingw-w64-crt/secapi/_cwprintf_s.c
index b5006f6..3a4b8ae 100644
--- a/mingw-w64-crt/secapi/_cwprintf_s.c
+++ b/mingw-w64-crt/secapi/_cwprintf_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _cwprintf_s (const wchar_t *,...);
 int __cdecl _vcwprintf_s (const wchar_t *,va_list);
 
diff --git a/mingw-w64-crt/secapi/_cwprintf_s_l.c b/mingw-w64-crt/secapi/_cwprintf_s_l.c
index a8a6747..c41dc42 100644
--- a/mingw-w64-crt/secapi/_cwprintf_s_l.c
+++ b/mingw-w64-crt/secapi/_cwprintf_s_l.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _cwprintf_s_l (const wchar_t *, _locale_t, ...);
 int __cdecl _vcwprintf_s_l(const wchar_t *,_locale_t,va_list);
 
diff --git a/mingw-w64-crt/secapi/_gmtime32_s.c b/mingw-w64-crt/secapi/_gmtime32_s.c
index eb679c4..5919e42 100644
--- a/mingw-w64-crt/secapi/_gmtime32_s.c
+++ b/mingw-w64-crt/secapi/_gmtime32_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 /* struct tm * __cdecl _gmtime32 (const __time32_t *); */
 errno_t __cdecl _gmtime32_s (struct tm *, const __time32_t *);
 static errno_t __cdecl _int_gmtime32_s (struct tm *, const __time32_t *);
diff --git a/mingw-w64-crt/secapi/_gmtime64_s.c b/mingw-w64-crt/secapi/_gmtime64_s.c
index 4acb684..e9d7083 100644
--- a/mingw-w64-crt/secapi/_gmtime64_s.c
+++ b/mingw-w64-crt/secapi/_gmtime64_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 /* struct tm * __cdecl _gmtime64 (const __time64_t *); */
 errno_t __cdecl _gmtime64_s (struct tm *, const __time64_t *);
 static errno_t __cdecl _int_gmtime64_s (struct tm *, const __time64_t *);
diff --git a/mingw-w64-crt/secapi/_localtime32_s.c b/mingw-w64-crt/secapi/_localtime32_s.c
index 7a737a4..323693b 100644
--- a/mingw-w64-crt/secapi/_localtime32_s.c
+++ b/mingw-w64-crt/secapi/_localtime32_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 /* struct tm * __cdecl _localtime32 (const __time32_t *); */
 errno_t __cdecl _localtime32_s (struct tm *, const __time32_t *);
 static errno_t __cdecl _int_localtime32_s (struct tm *, const __time32_t *);
diff --git a/mingw-w64-crt/secapi/_localtime64_s.c b/mingw-w64-crt/secapi/_localtime64_s.c
index 99c73eb..9552d71 100644
--- a/mingw-w64-crt/secapi/_localtime64_s.c
+++ b/mingw-w64-crt/secapi/_localtime64_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 /* struct tm * __cdecl _localtime64 (const __time64_t *); */
 errno_t __cdecl _localtime64_s (struct tm *, const __time64_t *);
 static errno_t __cdecl _int_localtime64_s (struct tm *, const __time64_t *);
diff --git a/mingw-w64-crt/secapi/_mktemp_s.c b/mingw-w64-crt/secapi/_mktemp_s.c
index 30888c2..d292e81 100644
--- a/mingw-w64-crt/secapi/_mktemp_s.c
+++ b/mingw-w64-crt/secapi/_mktemp_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 size_t __cdecl strnlen (const char *, size_t);
 char * __cdecl _mktemp (char *);
 errno_t __cdecl _mktemp_s (char *, size_t);
diff --git a/mingw-w64-crt/secapi/_strdate_s.c b/mingw-w64-crt/secapi/_strdate_s.c
index 79b6cae..5acce13 100644
--- a/mingw-w64-crt/secapi/_strdate_s.c
+++ b/mingw-w64-crt/secapi/_strdate_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _strdate_s (char *, size_t);
 static errno_t __cdecl _int_strdate_s (char *, size_t);
 static errno_t __cdecl _stub (char *, size_t);
diff --git a/mingw-w64-crt/secapi/_strtime_s.c b/mingw-w64-crt/secapi/_strtime_s.c
index 2111335..4e12e9b 100644
--- a/mingw-w64-crt/secapi/_strtime_s.c
+++ b/mingw-w64-crt/secapi/_strtime_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _strtime_s (char *, size_t);
 static errno_t __cdecl _int_strtime_s (char *, size_t);
 static errno_t __cdecl _stub (char *, size_t);
diff --git a/mingw-w64-crt/secapi/_umask_s.c b/mingw-w64-crt/secapi/_umask_s.c
index 9a63ba0..14f96a0 100644
--- a/mingw-w64-crt/secapi/_umask_s.c
+++ b/mingw-w64-crt/secapi/_umask_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 int __cdecl _umask (int);
 errno_t __cdecl _umask_s (int, int *);
 static errno_t __cdecl _int_umask_s (int, int *);
diff --git a/mingw-w64-crt/secapi/_vcprintf_s.c b/mingw-w64-crt/secapi/_vcprintf_s.c
index 309b4d1..e6eab32 100644
--- a/mingw-w64-crt/secapi/_vcprintf_s.c
+++ b/mingw-w64-crt/secapi/_vcprintf_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _vcprintf (const char *, va_list);
 int __cdecl _vcprintf_s (const char *, va_list);
 static int __cdecl _int_vcprintf_s (const char *, va_list);
diff --git a/mingw-w64-crt/secapi/_vcprintf_s_l.c b/mingw-w64-crt/secapi/_vcprintf_s_l.c
index 8af26db..54e6a40 100644
--- a/mingw-w64-crt/secapi/_vcprintf_s_l.c
+++ b/mingw-w64-crt/secapi/_vcprintf_s_l.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _vcprintf_l (const char *, _locale_t, va_list);
 int __cdecl _vcprintf_s_l (const char *, _locale_t, va_list);
 static int __cdecl _int_vcprintf_s_l (const char *, _locale_t, va_list);
diff --git a/mingw-w64-crt/secapi/_vcwprintf_s.c b/mingw-w64-crt/secapi/_vcwprintf_s.c
index ad273a3..6ac55a8 100644
--- a/mingw-w64-crt/secapi/_vcwprintf_s.c
+++ b/mingw-w64-crt/secapi/_vcwprintf_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _vcwprintf (const wchar_t *, va_list);
 int __cdecl _vcwprintf_s (const wchar_t *, va_list);
 static int __cdecl _int_vcwprintf_s (const wchar_t *, va_list);
diff --git a/mingw-w64-crt/secapi/_vcwprintf_s_l.c b/mingw-w64-crt/secapi/_vcwprintf_s_l.c
index 26dce2e..9e73161 100644
--- a/mingw-w64-crt/secapi/_vcwprintf_s_l.c
+++ b/mingw-w64-crt/secapi/_vcwprintf_s_l.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _vcwprintf_l (const wchar_t *, _locale_t, va_list);
 int __cdecl _vcwprintf_s_l (const wchar_t *, _locale_t, va_list);
 static int __cdecl _int_vcwprintf_s_l (const wchar_t *, _locale_t, va_list);
diff --git a/mingw-w64-crt/secapi/_waccess_s.c b/mingw-w64-crt/secapi/_waccess_s.c
index 173ab50..d0931c8 100644
--- a/mingw-w64-crt/secapi/_waccess_s.c
+++ b/mingw-w64-crt/secapi/_waccess_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl _waccess (const wchar_t *e, int);
 errno_t __cdecl _waccess_s (const wchar_t *, int);
 static errno_t __cdecl _int_waccess_s (const wchar_t *, int);
diff --git a/mingw-w64-crt/secapi/_wasctime_s.c b/mingw-w64-crt/secapi/_wasctime_s.c
index 8ac00ec..12adb5d 100644
--- a/mingw-w64-crt/secapi/_wasctime_s.c
+++ b/mingw-w64-crt/secapi/_wasctime_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _wasctime_s (wchar_t *, size_t, const struct tm *);
 /* wchar_t * __cdecl _wasctime (const struct tm *); */
 static errno_t __cdecl _int_wasctime_s (wchar_t *, size_t, const struct tm *);
diff --git a/mingw-w64-crt/secapi/_wctime32_s.c b/mingw-w64-crt/secapi/_wctime32_s.c
index 81d5065..f86c210 100644
--- a/mingw-w64-crt/secapi/_wctime32_s.c
+++ b/mingw-w64-crt/secapi/_wctime32_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _localtime32_s (struct tm *, const __time32_t *);
 errno_t __cdecl _wasctime_s (wchar_t *, size_t, const struct tm *);
 errno_t __cdecl _wctime32_s (wchar_t *, size_t, const __time32_t *);
diff --git a/mingw-w64-crt/secapi/_wctime64_s.c b/mingw-w64-crt/secapi/_wctime64_s.c
index daa43bc..4d0bf8f 100644
--- a/mingw-w64-crt/secapi/_wctime64_s.c
+++ b/mingw-w64-crt/secapi/_wctime64_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _localtime64_s (struct tm *, const __time64_t *);
 errno_t __cdecl _wasctime_s (wchar_t *, size_t, const struct tm *);
 errno_t __cdecl _wctime64_s (wchar_t *, size_t, const __time64_t *);
diff --git a/mingw-w64-crt/secapi/_wmktemp_s.c b/mingw-w64-crt/secapi/_wmktemp_s.c
index 11c3097..75b3d5f 100644
--- a/mingw-w64-crt/secapi/_wmktemp_s.c
+++ b/mingw-w64-crt/secapi/_wmktemp_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 size_t __cdecl wcsnlen (const wchar_t *, size_t);
 char * __cdecl _wmktemp (wchar_t *);
 errno_t __cdecl _wmktemp_s (wchar_t *, size_t);
diff --git a/mingw-w64-crt/secapi/_wstrdate_s.c b/mingw-w64-crt/secapi/_wstrdate_s.c
index 87e2840..fc557ad 100644
--- a/mingw-w64-crt/secapi/_wstrdate_s.c
+++ b/mingw-w64-crt/secapi/_wstrdate_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _wstrdate_s (wchar_t *, size_t);
 static errno_t __cdecl _int_wstrdate_s (wchar_t *, size_t);
 static errno_t __cdecl _stub (wchar_t *, size_t);
diff --git a/mingw-w64-crt/secapi/_wstrtime_s.c b/mingw-w64-crt/secapi/_wstrtime_s.c
index f5f8cb4..f328643 100644
--- a/mingw-w64-crt/secapi/_wstrtime_s.c
+++ b/mingw-w64-crt/secapi/_wstrtime_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl _wstrtime_s (wchar_t *, size_t);
 static errno_t __cdecl _int_wstrtime_s (wchar_t *, size_t);
 static errno_t __cdecl _stub (wchar_t *, size_t);
diff --git a/mingw-w64-crt/secapi/asctime_s.c b/mingw-w64-crt/secapi/asctime_s.c
index 1bf944c..1ce49d3 100644
--- a/mingw-w64-crt/secapi/asctime_s.c
+++ b/mingw-w64-crt/secapi/asctime_s.c
@@ -2,8 +2,8 @@
 #include <malloc.h>
 #include <time.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl asctime_s (char *, size_t, const struct tm *);
 /* char * __cdecl asctime (const struct tm *); */
 static errno_t __cdecl _int_asctime_s (char *, size_t, const struct tm *);
diff --git a/mingw-w64-crt/secapi/memcpy_s.c b/mingw-w64-crt/secapi/memcpy_s.c
index 0f16fca..2e66136 100644
--- a/mingw-w64-crt/secapi/memcpy_s.c
+++ b/mingw-w64-crt/secapi/memcpy_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl memcpy_s (void *, size_t, const void *, size_t);
 static errno_t __cdecl _int_memcpy_s (void *, size_t, const void *, size_t);
 static errno_t __cdecl _stub (void *, size_t, const void *, size_t);
diff --git a/mingw-w64-crt/secapi/rand_s.c b/mingw-w64-crt/secapi/rand_s.c
index 9a712bd..7773d65 100644
--- a/mingw-w64-crt/secapi/rand_s.c
+++ b/mingw-w64-crt/secapi/rand_s.c
@@ -3,8 +3,7 @@
 #include <windows.h>
 #include <ntsecapi.h>
 #include <errno.h>
-
-HMODULE __mingw_get_msvcrt_handle(void);
+#include <msvcrt.h>
 
 static BOOLEAN (WINAPI *pRtlGenRandom)(void*,ULONG);
 
diff --git a/mingw-w64-crt/secapi/vsprintf_s.c b/mingw-w64-crt/secapi/vsprintf_s.c
index 031e11c..c11ad06 100644
--- a/mingw-w64-crt/secapi/vsprintf_s.c
+++ b/mingw-w64-crt/secapi/vsprintf_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle(void);
 int __cdecl vsprintf (char *, const char *, va_list);
 int __cdecl vsprintf_s (char *, size_t, const char *, va_list);
 static int __cdecl _int_vsprintf_s (char *, size_t, const char *, va_list);
diff --git a/mingw-w64-crt/secapi/wmemcpy_s.c b/mingw-w64-crt/secapi/wmemcpy_s.c
index 1565b5b..16e2178 100644
--- a/mingw-w64-crt/secapi/wmemcpy_s.c
+++ b/mingw-w64-crt/secapi/wmemcpy_s.c
@@ -1,8 +1,8 @@
 #include <windows.h>
 #include <malloc.h>
 #include <errno.h>
+#include <msvcrt.h>
 
-HMODULE __mingw_get_msvcrt_handle (void);
 errno_t __cdecl wmemcpy_s (wchar_t *, size_t, const wchar_t *, size_t);
 static errno_t __cdecl _int_wmemcpy_s (wchar_t *, size_t, const wchar_t *, size_t);
 static errno_t __cdecl _stub (wchar_t *, size_t, const wchar_t *, size_t);