headers: merge stralign_s.h into stralign.h

stralign_s.h is only used by stralign.h, and it's actually not part of
CRT headers. Plus, stralign_s.h is not provided by MSVC UCRT, so it can
be dropped safely.

Note that our stralign.h differs from MSVC UCRT's stralign.h a lot,
which may need further adjustments.

Also updated configure{,.ac} to remove stralign_s.h.

Signed-off-by: Zhongteng Gui <dragon-archer@outlook.com>
Signed-off-by: LIU Hao <lh_mouse@126.com>
diff --git a/mingw-w64-headers/configure b/mingw-w64-headers/configure
index 38e4a13..ef326dc 100755
--- a/mingw-w64-headers/configure
+++ b/mingw-w64-headers/configure
@@ -2757,7 +2757,6 @@
 # Checks for header files.
 
 BASEHEAD_LIST="crt/_bsd_types.h crt/_cygwin.h crt/_mingw.h crt/_mingw_mac.h crt/_mingw_secapi.h crt/_mingw_unicode.h crt/_timeval.h crt/crtdefs.h crt/corecrt.h crt/excpt.h crt/intrin.h crt/vadefs.h crt/tchar.h "$srcdir/include/*.h
-SECHEAD_LIST="$srcdir/crt/sec_api/stralign_s.h"
 for i in c inl dlg h16 hxx rh ver; do
   BASEHEAD_LIST="$BASEHEAD_LIST "$srcdir/include/*.$i
 done
diff --git a/mingw-w64-headers/configure.ac b/mingw-w64-headers/configure.ac
index f880240..e943d7c 100644
--- a/mingw-w64-headers/configure.ac
+++ b/mingw-w64-headers/configure.ac
@@ -37,7 +37,6 @@
 # Checks for header files.
 
 BASEHEAD_LIST="crt/_bsd_types.h crt/_cygwin.h crt/_mingw.h crt/_mingw_mac.h crt/_mingw_secapi.h crt/_mingw_unicode.h crt/_timeval.h crt/crtdefs.h crt/corecrt.h crt/excpt.h crt/intrin.h crt/vadefs.h crt/tchar.h "$srcdir/include/*.h
-SECHEAD_LIST="$srcdir/crt/sec_api/stralign_s.h"
 for i in c inl dlg h16 hxx rh ver; do
   BASEHEAD_LIST="$BASEHEAD_LIST "$srcdir/include/*.$i
 done
diff --git a/mingw-w64-headers/crt/sec_api/stralign_s.h b/mingw-w64-headers/crt/sec_api/stralign_s.h
deleted file mode 100644
index 4d29dba..0000000
--- a/mingw-w64-headers/crt/sec_api/stralign_s.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * This file has no copyright assigned and is placed in the Public Domain.
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER.PD within this package.
- */
-#ifndef __STRALIGN_H_S_
-#define __STRALIGN_H_S_
-
-#include <stralign.h>
-
-_CRT_BEGIN_C_HEADER
-
-#if !defined(_X86_) && defined(_WSTRING_S_DEFINED)
-#if defined(__cplusplus) && defined(_WConst_Return)
-  static __inline PUWSTR ua_wcscpy_s(PUWSTR Destination,size_t DestinationSize,PCUWSTR Source) {
-    if(WSTR_ALIGNED(Source) && WSTR_ALIGNED(Destination)) return (wcscpy_s((PWSTR)Destination,DestinationSize,(PCWSTR)Source)==0 ? Destination : NULL);
-    return uaw_wcscpy((PCUWSTR)String,Character);
-  }
-#endif
-#endif
-
-_CRT_END_C_HEADER
-
-#endif
diff --git a/mingw-w64-headers/include/stralign.h b/mingw-w64-headers/include/stralign.h
index 3babd2c..3e86b8e 100644
--- a/mingw-w64-headers/include/stralign.h
+++ b/mingw-w64-headers/include/stralign.h
@@ -198,9 +198,17 @@
 #define ua_tcscpy strcpy
 #endif
 
+#if !defined(_X86_) && defined(_WSTRING_S_DEFINED)
+#if defined(__cplusplus) && defined(_WConst_Return)
+  static __inline PUWSTR ua_wcscpy_s(PUWSTR Destination,size_t DestinationSize,PCUWSTR Source) {
+    if(WSTR_ALIGNED(Source) && WSTR_ALIGNED(Destination)) return (wcscpy_s((PWSTR)Destination,DestinationSize,(PCWSTR)Source)==0 ? Destination : NULL);
+    return uaw_wcscpy((PCUWSTR)String,Character);
+  }
+#endif
+#endif
+
 #ifdef __cplusplus
 }
 #endif
 
-#include <sec_api/stralign_s.h>
 #endif